SPChange.cs 770 B

12345678910111213141516171819202122232425262728293031
  1. using UnityEngine;
  2. using System.Collections;
  3. public class SPChange : TickFunctionEvent
  4. {
  5. public static SPChange Creator(BuffFunctionData data)
  6. {
  7. return new SPChange(data);
  8. }
  9. public SPChange(BuffFunctionData data) : base(data)
  10. {
  11. }
  12. public override void Enter(Fighter fighter)
  13. {
  14. base.Enter(fighter);
  15. if (!fighter.IsAlive) return;
  16. int addSp = (int)fighter.GetBuffFunctionValue(Buff_Function_Type.SP_Change_Value);
  17. fighter.Sp += addSp;
  18. if(mCaster.Statistics!=null)
  19. mCaster.Statistics.StatSPInfo(mCaster, addSp);
  20. fighter.RefreshSp();
  21. EventMgr.DispatchEvent<Fighter,int>(new CoreEvent<Fighter,int>(ECoreEventType.EID_Fighter_AddSp, fighter, addSp));
  22. }
  23. }