/// <summary> /// Tells whether Mario and his Partner can switch places with each other. /// </summary> /// <returns>true if Mario or his Partner hasn't used up all of his or her turns and isn't dead, otherwise false.</returns> private bool CanSwitch() { BattleEntity otherPlayer = BattleManager.Instance.EntityTurn == BattleManager.Instance.GetFrontPlayer() ? BattleManager.Instance.GetBackPlayer() : BattleManager.Instance.GetFrontPlayer(); if (otherPlayer == null) { return(false); } return(otherPlayer.UsedTurn == false && otherPlayer.IsDead == false && otherPlayer.IsImmobile() == false); }
/// <summary> /// Tells whether Mario and his Partner can switch places with each other. /// </summary> /// <returns>true if Mario or his Partner hasn't used up all of his or her turns and isn't dead, otherwise false.</returns> private bool CanSwitch() { BattleEntity otherPlayer = (User == User.BManager.FrontPlayer) ? User.BManager.BackPlayer : User.BManager.FrontPlayer; if (otherPlayer == null) { return(false); } return(otherPlayer.UsedTurn == false && otherPlayer.IsDead == false && otherPlayer.IsImmobile() == false); }
protected override void SequenceMainBranch() { switch (SequenceStep) { case 0: //Add evasion User.AddEvasionMod(0d); AllyAffected.AddEvasionMod(0d); //Turn them both transparent User.TintColor = User.TintColor.CeilingMult(AlphaVal); AllyAffected.TintColor = AllyAffected.TintColor.CeilingMult(AlphaVal); //Suppress these Statuses in these ways //In PM, Outta Sight technically doesn't suppress anything, since Status Effects take place on the character's turn instead //of at the start of each phase cycle //Follow Veil in this regard, since that was designed with TTYD's battle system EntityUsing.EntityProperties.SuppressStatuses(Enumerations.StatusSuppressionTypes.Effects, Enumerations.StatusTypes.Poison, Enumerations.StatusTypes.Burn, Enumerations.StatusTypes.Frozen); AllyAffected.EntityProperties.SuppressStatuses(Enumerations.StatusSuppressionTypes.Effects, Enumerations.StatusTypes.Poison, Enumerations.StatusTypes.Burn, Enumerations.StatusTypes.Frozen); EntityUsing.EntityProperties.SuppressStatuses(Enumerations.StatusSuppressionTypes.TurnCount, Enumerations.StatusTypes.Invisible); AllyAffected.EntityProperties.SuppressStatuses(Enumerations.StatusSuppressionTypes.TurnCount, Enumerations.StatusTypes.Invisible); //The ally assumes the Guard position if it's not immobile if (AllyAffected.IsImmobile() == false) { AllyAffected.AnimManager.PlayAnimation(AnimationGlobals.PlayerBattleAnimations.GuardName); } //This half of the sequence ends here ChangeSequenceBranch(SequenceBranch.End); break; default: PrintInvalidSequence(); break; } }