<?php $msg = ""; $allSectors = $staticData->getSectors(); $startSectorString = $startSectorName . "(" . $startSectorX . "," . $startSectorY . ")"; $endSectorString = $endSectorName . "(" . $endSectorX . "," . $endSectorY . ")"; $divisionMovement = new DivisionMovement($startedDivisionMovement[0], $startedDivisionMovement[3], $startSectorId, $endSectorId, $startedDivisionMovement[6], $startedDivisionMovement[7]); $unitList = explode(",", $startedDivisionMovement[1]); $quantityList = explode(",", $startedDivisionMovement[2]); $timeLeft = $divisionMovement->getTime() - ($_SERVER['REQUEST_TIME'] - $divisionMovement->getStartDateTime()); $isAttack = $divisionMovement->getOwnerId() != $endSectorOwnerId; foreach ($unitList as $i => $unitId) { if ($quantityList[$i] > 0) { if ($timeLeft <= 0) { $sectorArr = $sectorConn->getSectorByCoordinates($endSectorX, $endSectorY); $endSector = new Sector($sectorArr[0], $sectorArr[1], $sectorArr[2], $sectorArr[3], $sectorArr[4], $sectorArr[5], $sectorArr[6], $sectorArr[7], explode(",", $sectorArr[8]), explode(",", $sectorArr[9]), $sectorArr[10]); $sectorArr = $sectorConn->getSectorByCoordinates($startSectorX, $startSectorY); $startSector = new Sector($sectorArr[0], $sectorArr[1], $sectorArr[2], $sectorArr[3], $sectorArr[4], $sectorArr[5], $sectorArr[6], $sectorArr[7], explode(",", $sectorArr[8]), explode(",", $sectorArr[9]), $sectorArr[10]); 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]);
unset($startSector); unset($endSector); //Get origin and destiny sectors of current DivisionMovement foreach ($allSectors as $targetSector) { if (!(isset($startSector) && isset($endSector))) { if ($divisionMovementArr[4] == $targetSector->getId()) { $startSector = $targetSector; } elseif ($divisionMovementArr[5] == $targetSector->getId()) { $endSector = $targetSector; } } else { break; } } if ($startSector->getOccupant() == $player->getId() || $endSector->getOccupant() == $player->getId()) { $divisionMovement = new DivisionMovement($divisionMovementArr[0], $divisionMovementArr[3], $startSector, $endSector, $divisionMovementArr[6], $divisionMovementArr[7]); $unitList = explode(",", $divisionMovementArr[1]); $quantityList = explode(",", $divisionMovementArr[2]); $timeLeft = $divisionMovement->getTime() - ($_SERVER['REQUEST_TIME'] - $divisionMovement->getStartDateTime()); //Create divisions and assign them to current DivisionMovement foreach ($unitList as $i => $unitId) { if ($quantityList[$i] > 0) { $division = new Division($divisionMovementArr[0], $divisionMovementArr[3], $unitId, $quantityList[$i], 1); $divisions = $divisionMovement->getDivisions(); $divisions[] = $division; $divisionMovement->setDivisions($divisions); } } $divisionMovements[] = $divisionMovement; } }