if (!isset($allUnits)) { $allUnitsArr = $unitConn->getAllUnits(); $allUnits = array(); $trainingTimes = array(); foreach ($allUnitsArr as $unitArr) { $unit = new Unit($unitArr[0], $unitArr[1], $unitArr[2], $unitArr[3], $unitArr[4], $unitArr[5], $unitArr[6], $unitArr[7], $unitArr[8], explode(",", $unitArr[9]), explode(",", $unitArr[10]), explode(",", $unitArr[11]), $unitArr[12], $unitArr[13], $unitArr[14], $unitArr[15]); $allUnits[$unit->getId()] = $unit; } } $unit = $allUnits[$unitId]; $capitolSectorArr = $sectorConn->getCapitolSector($playerId); if ($capitolSectorArr) { $capitolSector = new Sector($capitolSectorArr[0], $capitolSectorArr[1], $capitolSectorArr[2], $capitolSectorArr[3], $capitolSectorArr[4], $capitolSectorArr[5], $capitolSectorArr[6], $capitolSectorArr[7], explode(",", $capitolSectorArr[8]), explode(",", $capitolSectorArr[9]), $capitolSectorArr[10]); $capitolX = $capitolSector->getCoordinateX(); $capitolY = $capitolSector->getCoordinateY(); $distanceFromCapitol = $startSector->getDistanceFrom($capitolX, $capitolY); //var_dump($distanceFromCapitol); } else { $ownedSectors = Sector::getOwnedSectors($allSectors, $playerId); $distanceFromCapitol = Sector::getMaxDistance($ownedSectors); } $unitStartCosts = $unit->getEfectiveManteinanceCosts($distanceFromCapitol); for ($j = 0; $j < count($unitStartCosts); $j++) { $unitStartCosts[$j] = $unitStartCosts[$j] * $quantityList[$i]; } if ($capitolSectorArr) { $distanceFromCapitol = $endSector->getDistanceFrom($capitolX, $capitolY); } $unitEndCosts = $unit->getEfectiveManteinanceCosts($distanceFromCapitol); for ($j = 0; $j < count($unitEndCosts); $j++) { $unitEndCosts[$j] = $unitEndCosts[$j] * $quantityList[$i];
if ($capitolSectorArr) { $capitolSectorX = $capitolSectorArr[1]; $capitolSectorY = $capitolSectorArr[2]; } else { $distanceFromCapitol = $maxDistance; } foreach ($manteinancesArr as $manteinanceArr) { $sectorId = $manteinanceArr["sector_id"]; $costs = explode(",", $manteinanceArr["manteinanceCost"]); $multiplier = $manteinanceArr["multiplier"]; $concept = $manteinanceArr["concept"]; $battleId = $manteinanceArr["battle_id"]; if ($concept == 'Division' || $concept == 'BattleCosts') { $sectorArr = $sectorConn->getSectorById($sectorId); $sector = new Sector($sectorArr[0], $sectorArr[1], $sectorArr[2], $sectorArr[3], $sectorArr[4], $sectorArr[5], $sectorArr[6], $sectorArr[7], explode(",", $sectorArr[8]), explode(",", $sectorArr[9])); if ($capitolSectorArr) { $distanceFromCapitol = $sector->getDistanceFrom($capitolSectorX, $capitolSectorY); } $unit = new Unit(0, '', 0, 0, 0, 0, 0, '', 0, array(0, 0, 0, 0, 0), $costs, array(0, 0, 0, 0, 0), 0, '', NULL, 0); $costs = $unit->getEfectiveManteinanceCosts($distanceFromCapitol); } $newCosts = array(); foreach ($costs as $index => $cost) { $newCosts[$index] = $cost * $multiplier; } if ($concept == 'BattleCosts') { $battleConn->updateBattleCosts($battleId, $playerId, $newCosts, 1, '+'); } else { $sectorConn->updateSectorCosts($sectorId, $newCosts, 1, '+'); } }
<?php require_once '../../lib/inclusion.php'; require_once_model('Sector'); $sector = new Sector(0, 7, 1); echo $sector->getDistanceFrom(6, 3);