private bool TryDefend(IPirateGame game, Pirate pirate) { foreach (Pirate enemy in game.EnemyPirates()) { if (game.InRange(pirate, enemy)) { game.Defend(pirate); return(true); } } return(false); }
public bool defend(IPirateGame game) { if (s != State.none) { game.Debug("State on Pirate " + P.Id + " cannot shift from " + s.ToString() + " to defended!"); return(false); } if (P.ReloadTurns > 0) { game.Debug("Pirate " + P.Id + " cannot defend, no ammo!"); return(false); } free.Remove(this); s = State.defended; game.Defend(P); return(true); }