/** * Fire::__construct() * * @param ShipType $attackerShipType * @param Fleet $defenderFleet * @param bool $attacking * @return */ public function __construct(ShipType $attackerShipType, Fleet $defenderFleet) { $this->attackerShipType = $attackerShipType->cloneMe(); $this->defenderFleet = $defenderFleet->cloneMe(); }
public function addDefense(Fleet $fleetDefender) { $fleetDefender->setTech($this->weapons_tech, $this->shields_tech, $this->armour_tech); $this->order(); $fl = current($this->array); if ($fl === false) { $this->array[$fleetDefender->getId()] = $fleetDefender->cloneMe(); //avoid collateral effects: when the object or array is an argument && it's saved in a structure } else { $f->mergeFleet($fleetDefender); } }