public bool OnBeforeMove() { bool canPerformMove = true; if (Status?.OnBeforeMove != null) { if (!Status.OnBeforeMove(this)) { canPerformMove = false; } } if (VolatileStatus?.OnBeforeMove != null) { if (!VolatileStatus.OnBeforeMove(this)) { canPerformMove = false; } } return(canPerformMove); }
public bool OnBeforeAbility() { bool canPreformAbility = true; if (Status?.OnBeforeAbility != null) { if (!Status.OnBeforeAbility(this)) { canPreformAbility = false; } } if (VolatileStatus?.OnBeforeAbility != null) { if (!VolatileStatus.OnBeforeAbility(this)) { canPreformAbility = false; } } return(canPreformAbility); }
/// <summary> /// Checks if monster can attack this turn. /// </summary> /// <returns>True if monster can attack or false if not.</returns> public bool CheckIfCanAttack() { var canAttack = true; if (Status?.OnTurnStart != null) { if (!Status.OnTurnStart(this)) { canAttack = false; } } if (VolatileStatus?.OnTurnStart == null) { return(canAttack); } if (!VolatileStatus.OnTurnStart(this)) { canAttack = false; } return(canAttack); }