public void SetRecoverHP(int recover) { if (LiveState == LiveStateEnum.Dying) { LiveState = LiveStateEnum.Alive; GrayScale.SetScale(1); Animator.SetBool("IsDying", false); } Info.CurrentHP += recover; }
public virtual void SetDamage(int damage) { Info.CurrentHP -= damage; _getDamage += damage; if (Info.IsSleeping) { //解除睡眠狀態 Info.RemoveSleep(); } if (Info.CurrentHP <= 0) { if (Info.HPQueue.Count > 0) { Info.HPDequeue(); } else { if (!Info.IsTeamMember) { LiveState = LiveStateEnum.Dead; } else { if (LiveState == LiveStateEnum.Alive) { LiveState = LiveStateEnum.Dying; } else if (LiveState == LiveStateEnum.Dying) { LiveState = LiveStateEnum.Dead; } } } } if (GetDamageHandler != null) { GetDamageHandler(this); } }