Example #1
0
 private function getBuildingLog($row)
 {
     $o = array();
     $buildings = Dolumar_Buildings_Building::getAllBuildings();
     // Building
     if (isset($buildings[$row['l_subId']])) {
         $o['building'] = $buildings[$row['l_subId']];
     } else {
         $o['building'] = 'undefined';
     }
     return $o;
 }
Example #2
0
 public function getAllBuildingAmounts($includeConstructing = true)
 {
     $this->loadBuildings();
     $buildingnames = Dolumar_Buildings_Building::getAllBuildings();
     $out = array();
     foreach ($this->buildingCount as $k => $v) {
         $key = isset($buildingnames[$k]) ? $buildingnames[$k] : 'unknown';
         $out[$key] = $v;
     }
     return $out;
 }
Example #3
0
 public function getContent($errorInput = null, $putIntoText = array())
 {
     // Keep original value in seperate variable!
     $error = $errorInput;
     $text = Neuron_Core_Text::__getInstance();
     $login = Neuron_Core_Login::__getInstance();
     $me = Neuron_GameServer::getPlayer();
     $input = $this->getInputData();
     if ($login->isLogin() && $this->village && $this->village->isActive() && $this->village->getOwner()->getId() == $me->getId()) {
         // Make sure you are not in vacation mode.
         if ($this->village->getOwner()->inVacationMode()) {
             return '<p class="false">' . $text->get('vacationMode', 'main', 'main') . '</p>';
         }
         $page = new Neuron_Core_Template();
         $page->set('intro', $text->get('intro', 'build', 'building'));
         $page->set('construct', $text->get('construct', 'build', 'building'));
         $page->set('click', $text->get('click', 'build', 'building'));
         $selectrunewarning = addslashes($text->get('selectRune', 'build', 'building'));
         $page->set('selectRune', $selectrunewarning);
         $page->set('village', $this->village->getId());
         // Workers are working.
         if (!isset($error) && !$this->village->readyToBuild()) {
             $error = 'stillConstructing';
         }
         // Show error.
         if (isset($error)) {
             $txterr = Neuron_Core_Tools::putIntoText($text->get($error, 'buildError', 'building'), $putIntoText);
             $page->set('error', $txterr);
             $page->set('errorV', $error);
             if (isset($errorInput) && !empty($errorInput) && $errorInput != 'done') {
                 if ($error != 'done') {
                     switch ($error) {
                         case 'noRunes':
                         case 'noResources':
                         case 'stillConstructing':
                             $data = $this->getInputData();
                             $jsondata = json_encode(array('action' => 'queue', 'building' => $data['building'], 'x' => $data['x'], 'y' => $data['y'], 'rune' => $data['rune']));
                             $this->dialog($txterr, $text->get('queueBuild', 'queue', 'building'), 'windowAction (this, ' . $jsondata . ');', $text->get('okay', 'main', 'main'), 'void(0);');
                             break;
                         default:
                             $this->alert($txterr);
                             break;
                     }
                 }
             }
         }
         // Get all buildings (even those who can't be build)
         $buildings = Dolumar_Buildings_Building::getAllBuildings();
         $buildings_out = array();
         $race = $this->village->getRace();
         foreach ($buildings as $buildingV) {
             $building = Dolumar_Buildings_Building::getBuildingFromName($buildingV, $this->village->getRace());
             if ($building->canBuildBuilding($this->village)) {
                 $duration = $building->getConstructionTime($this->village);
                 $dur = Neuron_Core_Tools::getDuration($duration);
                 $size = $building->getSize();
                 $buildings_out[] = array($building->getName(), $building->getBuildingCost_Text($this->village), $building->getDescription(), $building->getSmallImage($race), $building->getBuildingId(), $dur, $building->getImage($this->village->getRace()), $size[0], $size[1], 'canBuild' => $building->checkBuildingLevels($this->village), 'upgrade' => Neuron_Core_Tools::putIntoText($text->get('upgradeFirst', 'build', 'building'), array('name' => $building->getName(true))), 'myBuildingsName' => $building->getName($this->village->buildings->getBuildingAmount($building) > 1), 'action' => new Dolumar_View_SelectBuildLocation($building->getBuildingId(), 'build', 'building_' . $building->getBuildingId(), $building->getDisplayObject($race), null, $selectrunewarning));
             }
         }
         // Order the list
         //$page->sortList ('buildings');
         usort($buildings_out, array($this, 'order_buildings'));
         $page->set('list_buildings', $buildings_out);
         return $page->parse('build.tpl');
     } else {
         return '<p class="false">' . $text->get('login', 'login', 'account') . '</p>';
     }
 }