protected override void SequenceMainBranch() { switch (SequenceStep) { case 0: //Wait a few seconds for now (spinning will occur once rotation is in) //Increase defense by the amount CurSequenceAction = new WaitForAnimationSeqAction(AnimationGlobals.PlayerBattleAnimations.GuardName); EntityUsing.RaiseDefense(DefenseBoost); //Tell the BattleEntity to decrease its Defense at the start of the next turn EntityUsing.TurnStartEvent -= DecreaseDefenseBoost; EntityUsing.TurnStartEvent += DecreaseDefenseBoost; //Show the Battle Event BattleManager.Instance.battleEventManager.QueueBattleEvent((int)BattleGlobals.BattleEventPriorities.Message, new BattleManager.BattleState[] { BattleManager.BattleState.Turn, BattleManager.BattleState.TurnEnd }, new MessageBattleEvent("Defense will be boosted\nthis turn!", MessageDur)); Debug.Log($"Raised Defense for {EntityUsing.Name} after using the Defend action!"); ChangeSequenceBranch(SequenceBranch.End); break; default: PrintInvalidSequence(); break; } }
public virtual void UnFlip() { if (Flipped == true) { Entity.SubtractIntAdditionalProperty(Enumerations.AdditionalProperty.Immobile, 1); //Remove the immunity to Fright after they get up Entity.AddRemoveStatusImmunity(Enumerations.StatusTypes.Fright, false); //Raise defense again after unflipping Entity.RaiseDefense(DefenseLoss); } Flipped = false; Entity.AnimManager.PlayAnimation(Entity.GetIdleAnim(), true); ElapsedFlippedTurns = 0; Entity.TurnStartEvent -= OnFlippedTurnStart; }