require_once '../game/lib/data/fleet/Fleet.class.php'; require_once '../game/lib/util/LWUtil.class.php'; require_once '../game/lib/system/spec/Spec.class.php'; $fleetStr = "10753267"; $fleetStrs = explode(",", $fleetStr); $fleetData = array(); /*foreach($fleetStrs as $fleetID) { $sql //$fleets += Fleet::getInstance($fleetID); }*/ $sql = "SELECT *\n\t\tFROM ugml_archive_fleet\n\t\tWHERE fleetID IN(" . $fleetStr . ")\n\t\tORDER BY missionID ASC"; $result = WCF::getDB()->sendQuery($sql); $formationID = 7028; while ($row = WCF::getDB()->fetchArray($result)) { $data = unserialize(LWUtil::unserialize($row['data'])); $fleet = FleetEditor::create($data[0]['data']['startPlanetID'], $data[0]['data']['targetPlanetID'], $data[0]['fleet'], $data[0]['data']['galaxy'], $data[0]['data']['system'], $data[0]['data']['planet'], $data[0]['data']['metal'], $data[0]['data']['crystal'], $data[0]['data']['deuterium'], $data[0]['data']['missionID'] == 12 ? 600 : 1200, $data[0]['data']['missionID']); /*if($data[0]['data']['missionID'] == 12) { $fleet->changeTime(array('return' => 2400 + time())); $wakeUpEvent = WOTEventEditor::create(1, $fleet->fleetID, array('state' => 2), time() + 1800); $fleet->update(array('wakeUpEventID' => $wakeUpEvent->eventID, 'wakeUpTime' => time() + 1800)); } else if($data[0]['data']['missionID'] == 11) {*/ $formation = new NavalFormation($formationID); $formation->getEditor()->addFleet($fleet->fleetID); //} /*else { $formation = NavalFormationEditor::create($fleet->fleetID, $fleet->ownerID); $formationID = $formation->formationID; }*/
/** * Inserts the fleet */ public function fire() { LockUtil::checkLock(WCF::getUser()->userID); LockUtil::setLock(WCF::getUser()->userID, 10); EventHandler::fireAction($this, 'shouldFire'); $this->fleetEditor = FleetEditor::create($this->startPlanetID, $this->endPlanetID, $this->ships, $this->galaxy, $this->system, $this->planet, $this->metal, $this->crystal, $this->deuterium, $this->getDuration(), $this->missionID); $planet = Planet::getInstance($this->startPlanetID); $planet->getEditor()->changeResources(-$this->metal, -$this->crystal, -($this->deuterium + $this->getConsumption())); $ships = array(); foreach ($this->ships as $specID => $shipCount) { $ships[$specID] = -$shipCount; } $planet->getEditor()->changeLevel($ships); // TODO: integrate in wcf eventlistener didFire@FleetQueue if ($this->missionID == 11) { $formation = new NavalFormation($this->formationID); $formation->getEditor()->addFleet($this->fleetEditor->fleetID); } if ($this->missionID == 12) { $standByTime = intval(@$_REQUEST['standByTime']); $wakeUpTime = $this->fleetEditor->impactTime + $standByTime; $newReturnTime = $this->fleetEditor->returnTime + $standByTime; $this->fleetEditor->changeTime(array('return' => $newReturnTime)); $wakeUpEvent = WOTEventEditor::create(1, $this->fleetEditor->fleetID, array('state' => 2), $wakeUpTime); $this->fleetEditor->update(array('wakeUpEventID' => $wakeUpEvent->eventID, 'wakeUpTime' => $wakeUpTime)); } if (WCF::getUser()->userID == 1) { FleetOvent::create($this->fleetEditor, false, true); } EventHandler::fireAction($this, 'didFire'); $this->deleteFleetQueue(); LockUtil::removeLock(WCF::getUser()->userID); }