public function postRecoverUnit($args) { $unit = $args[0]; $b = Battle::getBattle(); $scenario = $b->scenario; $id = $unit->id; parent::postRecoverUnit($args); if ($this->isIndecisive && $unit->status == STATUS_READY) { $unit->status = STATUS_UNAVAIL_THIS_PHASE; } }
public function postRecoverUnit($args) { $unit = $args[0]; $b = Battle::getBattle(); $id = $unit->id; parent::postRecoverUnit($args); if ($b->gameRules->turn == 1 && $b->gameRules->phase == BLUE_MOVE_PHASE && $unit->status == STATUS_READY) { $this->movementCache->{$id} = $unit->maxMove; $unit->maxMove = $unit->maxMove + 1; } if ($b->gameRules->turn == 1 && $b->gameRules->phase == BLUE_COMBAT_PHASE && isset($this->movementCache->{$id})) { $unit->maxMove = $this->movementCache->{$id}; unset($this->movementCache->{$id}); } if ($b->gameRules->turn == 1 && $b->gameRules->phase == RED_MOVE_PHASE && $unit->status == STATUS_READY) { $this->movementCache->{$id} = $unit->maxMove; $unit->maxMove = floor($unit->maxMove / 2); } if ($b->gameRules->turn == 1 && $b->gameRules->phase == RED_COMBAT_PHASE && isset($this->movementCache->{$id})) { $unit->maxMove = $this->movementCache->{$id}; unset($this->movementCache->{$id}); } }
public function postRecoverUnit($args) { $unit = $args[0]; $b = Battle::getBattle(); $scenario = $b->scenario; $id = $unit->id; parent::postRecoverUnit($args); }
public function postRecoverUnit($args) { $unit = $args[0]; $b = Battle::getBattle(); $scenario = $b->scenario; $id = $unit->id; if ($b->gameRules->turn <= 2 && !isset($this->southOfTheRiver)) { $terrain = $b->terrain; $reinforceZones = $terrain->reinforceZones; $southOfTheRiver = []; foreach ($reinforceZones as $reinforceZone) { if ($reinforceZone->name == 'D') { $southOfTheRiver[$reinforceZone->hexagon->name] = true; } } $this->southOfTheRiver = $southOfTheRiver; } parent::postRecoverUnit($args); if ($b->gameRules->turn == 1 && $b->gameRules->phase == RED_MOVE_PHASE && $unit->status == STATUS_READY && $unit->forceId == ALLIED_FORCE) { /* if early Movement set and unit is north of river they can move */ if (!(isset($scenario->earlyMovement) && empty($this->southOfTheRiver[$unit->hexagon->name]))) { $unit->status = STATUS_UNAVAIL_THIS_PHASE; } } if ($b->gameRules->turn == 2 && $b->gameRules->phase == RED_MOVE_PHASE) { if ($unit->status == STATUS_READY && $unit->forceId == ALLIED_FORCE && !empty($this->southOfTheRiver[$unit->hexagon->name])) { $unit->status = STATUS_UNAVAIL_THIS_PHASE; } } }
public function postRecoverUnit($args) { $unit = $args[0]; $b = Battle::getBattle(); $scenario = $b->scenario; $id = $unit->id; parent::postRecoverUnit($args); if ($b->gameRules->turn == 1 && $b->gameRules->phase == BLUE_MOVE_PHASE && $unit->status == STATUS_READY) { $this->movementCache->{$id} = $unit->maxMove; $unit->maxMove = $unit->maxMove + 1; } if ($b->gameRules->turn == 1 && $b->gameRules->phase == BLUE_COMBAT_PHASE && isset($this->movementCache->{$id})) { $unit->maxMove = $this->movementCache->{$id}; unset($this->movementCache->{$id}); } if ($b->gameRules->turn == 1 && $b->gameRules->phase == RED_MOVE_PHASE && $unit->status == STATUS_READY) { $this->movementCache->{$id} = $unit->maxMove; if (!empty($scenario->noMovementFirstTurn)) { $unit->status = STATUS_UNAVAIL_THIS_PHASE; } else { $unit->maxMove = floor($unit->maxMove / 2); } } if ($b->gameRules->turn == 1 && $b->gameRules->phase == RED_COMBAT_PHASE && isset($this->movementCache->{$id})) { $unit->maxMove = $this->movementCache->{$id}; unset($this->movementCache->{$id}); } }
public function postRecoverUnit($args) { $unit = $args[0]; $b = Battle::getBattle(); $id = $unit->id; if ($b->gameRules->turn === 1 && $b->gameRules->phase === BLUE_MOVE_PHASE) { $reserveHexes = []; $dZones = $b->terrain->getReinforceZonesByName('D'); foreach ($dZones as $dZone) { $reserveHexes[$dZone->hexagon->name] = true; } /* this will get turned into an object */ if (isset($reserveHexes[$unit->hexagon->name])) { $this->reserveDivisionIds->{$id} = true; } } if ($this->divisionReleased === false && $unit->status == STATUS_READY && isset($this->reserveDivisionIds->{$id})) { $unit->status = STATUS_UNAVAIL_THIS_PHASE; } parent::postRecoverUnit($args); if ($b->gameRules->turn == 1 && $b->gameRules->phase == BLUE_MOVE_PHASE && $unit->status == STATUS_READY) { $this->movementCache->{$id} = $unit->maxMove; $unit->maxMove = $unit->maxMove + 1; } if ($b->gameRules->turn == 1 && $b->gameRules->phase == BLUE_COMBAT_PHASE && isset($this->movementCache->{$id})) { $unit->maxMove = $this->movementCache->{$id}; unset($this->movementCache->{$id}); } if ($b->gameRules->turn == 1 && $b->gameRules->phase == RED_MOVE_PHASE && $unit->status == STATUS_READY) { $this->movementCache->{$id} = $unit->maxMove; $unit->maxMove = floor($unit->maxMove / 2); } if ($b->gameRules->turn == 1 && $b->gameRules->phase == RED_COMBAT_PHASE && isset($this->movementCache->{$id})) { $unit->maxMove = $this->movementCache->{$id}; unset($this->movementCache->{$id}); } }
public function postRecoverUnit($args) { $unit = $args[0]; $b = Battle::getBattle(); $scenario = $b->scenario; $id = $unit->id; parent::postRecoverUnit($args); if ($this->isDemoralized) { if ($b->gameRules->phase == RED_COMBAT_PHASE) { $unit->status = STATUS_UNAVAIL_THIS_PHASE; } } }
public function postRecoverUnit($args) { $unit = $args[0]; $b = Battle::getBattle(); $scenario = $b->scenario; $id = $unit->id; parent::postRecoverUnit($args); if ($b->gameRules->mode === COMBAT_SETUP_MODE) { if ($unit->class === "wagon") { $unit->status = STATUS_UNAVAIL_THIS_PHASE; } } }