ChangeMaxHpPercent.cs 782 B

12345678910111213141516171819202122232425262728293031
  1. using UnityEngine;
  2. using System.Collections;
  3. public class ChangeMaxHpPercent : DurationFunctionEvent
  4. {
  5. public static ChangeMaxHpPercent Creator(BuffFunctionData data)
  6. {
  7. return new ChangeMaxHpPercent(data);
  8. }
  9. public ChangeMaxHpPercent(BuffFunctionData data):base(data)
  10. {
  11. mType = Buff_Function_Type.Change_MaxHP_Percent;
  12. }
  13. SLong maxLife = 0;
  14. public override void Enter(Fighter fighter)
  15. {
  16. base.Enter(fighter);
  17. maxLife = fighter.MaxLife;
  18. fighter.MaxLife = Mathf.RoundToInt((mData.value * 0.01f + 1.0f) * maxLife);
  19. fighter.RefreshLife();
  20. }
  21. public override void Exit(Fighter fighter)
  22. {
  23. fighter.MaxLife = maxLife;
  24. fighter.RefreshLife();
  25. base.Exit(fighter);
  26. }
  27. }