protected sealed override void OnSuspend() { base.OnSuspend(); //Remove Invincibility and don't do anything else to avoid Suspending/Resuming conflicts with other StatusEffects EntityAfflicted.EntityProperties.RemoveAdditionalProperty(Enumerations.AdditionalProperty.Invincible); EntityAfflicted.AnimManager.PlayAnimation(EntityAfflicted.GetIdleAnim()); }
protected sealed override void OnEnd() { base.OnEnd(); //Remove the NegativeStatusImmune and Invincible MiscProperties EntityAfflicted.EntityProperties.RemoveAdditionalProperty(Enumerations.AdditionalProperty.NegativeStatusImmune); EntityAfflicted.EntityProperties.RemoveAdditionalProperty(Enumerations.AdditionalProperty.Invincible); //Resume all of the entity's Negative StatusEffects EntityAfflicted.SuspendOrResumeAlignmentStatuses(false, StatusAlignments.Negative, StatusType); EntityAfflicted.AnimManager.PlayAnimation(EntityAfflicted.GetIdleAnim()); Debug.Log($"{StatusType} has ended and Resumed all negative StatusEffects on {EntityAfflicted.Name}!"); }
protected sealed override void OnEnd() { base.OnEnd(); //Remove the Invincible AdditionalProperty EntityAfflicted.SubtractIntAdditionalProperty(Enumerations.AdditionalProperty.Invincible, 1); //Unsuppress the statuses it suppressed in this way HandleStatusSuppression(false); EntityAfflicted.AnimManager.PlayAnimation(EntityAfflicted.GetIdleAnim()); HandleStatusImmunities(false); Debug.Log($"{StatusType} has ended on {EntityAfflicted.Name}!"); }