protected override bool PirateComes(Pirate pirate) { if (IsShipHere()) { pirate.ApplyCommand( GetShip().IsMotherShip(pirate) ? Pirate.Actions.Ship : Pirate.Actions.Kill ); } else { pirate.ApplyCommand(Pirate.Actions.Swim); pirate.LostGold(); KillFoesFor(pirate); } return(true); }