Esempio n. 1
0
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;
    	}*/
Esempio n. 2
0
 /**
  * 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);
 }