private void updateCapturedShipInternal(List<IShip> capturedDefendingShips, List<IShip> capturedAttackingShips, boolean attackShipTurn, IShip shipWithMaxSailors, IShip captureShip, SeaFightContext context) {
final int numberOfSailors = captureShip.getNumberOfSailors();
int halfTheSailors = numberOfSailors /2;
captureShip.setNumberOfSailors(numberOfSailors - halfTheSailors);
IShipOwner previousOwner = shipWithMaxSailors.getOwner();
removeFromFleet(shipWithMaxSailors, previousOwner);
shipWithMaxSailors.setNumberOfSailors(halfTheSailors);
shipWithMaxSailors.setOwner(captureShip.getOwner());
if (context.getType() == ESeaFightType.BLOCKADE && attackShipTurn) {
IBlockade blockade = ((BlockadeSeafightContext)context).getBlockade();
blockade.getShipsToAuction().add(captureShip);
} else {
addToFleet(shipWithMaxSailors, captureShip.getOwner());
}
if (attackShipTurn) {
capturedAttackingShips.add(shipWithMaxSailors);
} else {
capturedDefendingShips.add(shipWithMaxSailors);
}
}