[MOD] another building system [beta] for ver 1.8 ver.

    This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

    • [MOD] another building system [beta] for ver 1.8 ver.

      $PLANET['b_building']= $BuildEndTime;what change:
      • remove building queue
      • add possibility build of each building separately
      screenshots




      Codes
      Display Spoiler


      forum has characters limit, all changes in changes.zip

      update your templates yourself, as it is different for everyone for the standard 2moons template files in the attachment (build1 - with MOD build queue acceleration build2 - without)




      WARNING IT'S BETA MOD USE AT YOUR OWN RISK

      if u find any bugs write on my email


      update 1 BUGFIX important
      Display Spoiler

      ShowBuildingsPage.class.php
      change

      PHP Source Code

      1. $CanBuildElement = isVacationMode($USER) || $config->max_elements_build == 0 || $QueueCount < $config->max_elements_build;
      to


      PHP Source Code

      1. $CanBuildElement = !isVacationMode($USER);


      update 2 BUGFIX important
      Display Spoiler

      class.PlanetRessUpdate.php
      in function CheckPlanetBuildingsNew
      change

      PHP Source Code

      1. if (count($CurrentQueue) == 0) {
      2. $this->PLANET['b_building'] = 0;
      3. $this->PLANET['b_building_id'] = '';
      4. return false;
      5. } else {
      6. $this->PLANET['b_building'] = $b_building;
      7. $this->PLANET['b_building_id'] = serialize($CurrentQueue);
      8. return true;
      9. }
      to


      PHP Source Code

      1. $NewQueueArray = array();
      2. foreach($CurrentQueue as $ListIDArray) {
      3. $NewQueueArray[] = $ListIDArray;
      4. }
      5. if (count($NewQueueArray) == 0) {
      6. $this->PLANET['b_building'] = 0;
      7. $this->PLANET['b_building_id'] = '';
      8. return false;
      9. } else {
      10. $this->PLANET['b_building'] = $b_building;
      11. $this->PLANET['b_building_id'] = serialize($NewQueueArray);
      12. return true;
      13. }
      Display All




      update 3 BUGFIX important
      in includes/pages/game/ShowBuildingsPage.class.php


      Display Spoiler

      find
      $PLANET['b_building'] = $BuildEndTime;
      change to
      $PLANET['b_building']= $b_building;
      Files
      • build1.zip

        (4.51 kB, downloaded 632 times, last: )
      • build2.zip

        (4.44 kB, downloaded 586 times, last: )
      • changes.zip

        (2.67 kB, downloaded 640 times, last: )

      The post was edited 3 times, last by Kaizoku ().

    • Очень много лишнего! нет оптимизации кода и за чем столько писать тем более отдельным фалов ? все можно сделать добавив всего лишь 8 строк кода внутри building применив обработку для всего разом флота, науки, и зданий! changes.php не нужен системой и так все уже продумано .. допишите я посмотрел в сравнение со своим 6 строк всего и все тпл так же можно укоротить всего лишь 4 строки кода и условие зачем делать гемор для пользователей а если сделать перебор форычем и условием будет вообще круто смотреться при разных условиях выполнения.. это тоже самое когда я искал решение как сделать множественную отображение вселенной пока не понял что всего лишь одна строчка кода и запрос в базу и все вселенная как в крафте работает показывает разом столько систем сколько есть, или подгружаем видимую часть экрана только тут уже скрипт не большой. один умный человек мне сказал в два мунс все есть так что не ищите новых модулей!... все есть уже.... главное понять как это использовать и добавлять свое .. и писать в одном стиле не хватая от того кусок кода и от другого .....что делаем солянку опять.... пишите сами медленнее... но сами, своим кодом .. такие вещи просто сравнение не более .. а так нахватают всего потом ор стоит... почему не работает, или отпадает другое .. с одной стороны хорошо что поделился но код отвратительно длинный много не нужного

      The post was edited 4 times, last by Shandow ().

    • {if !empty($Queue[$ID])}
      {if $Queue[$ID]['first']}
      <div id="progressbar" data-time="{$Queue[$ID]['resttime']}" class="buil2""></div>
      <div id="time" data-time="{$Queue[$ID]['time']}"class="buil">
      {else}
      очередь
      {/if}
      {/if}
      пример кода моего с вложенной проверкой кстати и спару фишками еще своими :) но не вкладываю полностью даю подсказку а так это рабочая часть кода прогресса даже по условие убирается в очередь :) и смысл все городить сложно? по пыхе так же кратко все посмотрел 4 строки поправлено всего .. еще раз все решения уж вложены в мунс не ищите нового просто внимательно посмотрите и добавьте условия не расписывая тоны строк и нагружая кодом.. в тплке подсказка куда копать и рыть ))) если поймете то быстро сделаете в постройках одним коротким кодом все что тут кстати код полета на координаты делается примерно так же единственное в классе стилей добавляем функцию аниматион с шагом и ваши корабли полетят видимо во вселенной ))) туда и обратно и к категории мода это не относится это дополнение всего лишь короткое

      The post was edited 3 times, last by Shandow ().

    • Shandow wrote:

      но код отвратительно длинный много не нужного
      Какой код? ты вообще о чем? ну раз знаешь как этот мод вместить в 6 строк пхп, то ты молодец и гений, нам же смертным приходится писать много кода, но я так и не понял про какой код, про функцию обработки завершенных построек? или какой код?
    • функция обработки )) и проверки и постройка при открытие теха( до 5 одновременных построек зданий) просо учителя хорошие учат правильно .. я просто не пойму зачем ты впихнул в отдельный файл все не проще дописать условия в пыхе
    • Shandow wrote:

      функция обработки )) и проверки и постройка при открытие теха( до 5 одновременных построек зданий) просо учителя хорошие учат правильно ..
      в каком месте он длинный? как это функцию уместить в 6 строк, научи
    • по скайпу выходи на голос я покажу или боишься узнаю другого пользователя под которым ты тут есть? тебя батенька выдает манера писать вот хочу удостоверится что это ты )) даже выложу свое дополнение все ради этого события абсолютно бесплатно

      часть я уже показал она абсолютно рабочая в тпл )) пыху покажу с моим решение если гюльчитай откроет личико ... и я не гений .. я всего лишь ученик просто прилежный .. а вот гений другой кто помог это сделать и учит как правильно делать
    • Shandow wrote:

      по скайпу выходи на голос я покажу
      да тут показывай, чтоб все учились, я же чтоб люди понимали как работает весь код и как его менять пытаюсь моды выкладывать, которые меняют хоть немного саму суть игры, а не просто бонусы +- к разным хар-кам
      например когда я начинал были всего лишь моды к бонусам, и было трудно понимать что где и как, а тут уже есть изменения функции миссиий, функции строительства и тд.
    • показывать это одно во первых это не мод всего лишь дополнение - просто я смысл а не вижу так новичкам показывать и работе с базой так же не надо все пизают в варс и юзеры и так далее зачем ???? базу делать тяжелой такой про это я уже говорил давно что база засрана у всех .. пихают моды все в юзеры и варс и планет .. зачем там достаточно одного пункт а с модуля и все дальше массивом проверку и запись.. в итоге получаем криворуких хотя я тоже криворукий еще
    • Shandow wrote:

      показывать это одно во первых это не мод всего лишь дополнение -
      почему это не мод? если меняет саму суть очереди строительства?

      то что ты скинул не 6 строк, и это не обработчик строительства, а удаление с очереди
    • Shandow wrote:

      в итоге получаем криворуких хотя я тоже криворукий еще
      все начинается с криворукости :D , напишем кривой код, кто то на это укажет и вот и поправим. :thumbup: ну я стараюсь не засирать, так и не понял где я засрал и не так сделал
    • это дополнение если всего лишь 6 -8 строк мод это не зависимая система - если хочешь научить тогда объясняй где что лежит где обявляются ланги к примеру половина не знает как новый ланг подключить отдельным пунктом и заявить его нужно учить с этого с элементарного потом они сами напишут то что надо а так занимаются предергиванием дург у друга по накатанной а мозги не работают
    • вот вопрос ко всем новичкам скажите мне чайнику где подключить LANG новый я вот не знаю допустим жду ответа не думаю что чатсь обрадует так как не знают куда тянется запрос и куда подключается яновая функция скажем дает понять системе что она есть почему работает флот наука стройка кораблей от обработки буилдинга и рес планет да не знают и не хотят научится.. вот этому и н адо учить а моды надо сразу готовые давать и пояснять мод мой не факт что так надо делать .. я вот пока тут знаю одного из не многих клона кто пишет хорошо именно с кратким подходом и экономичным остальные почти все работают по старинке загружая базу по самое не балуйсь
    • Shandow wrote:

      это дополнение если всего лишь 6 -8 строк мод это не зависимая система
      ладно, хватит, давай не будем засирать ветку пустой болтовней. Указывай на конкретные ошибки, или как можно улучшить, исправлю улучшу.
    • не в том что засрал.. я сказал что я не могу понять.. зачем ты отдельным фалом все сделал .. длинным.. именно отдельный файл. тоже самое есть уже... зачем переписывать копию делать если в штатном можно поправить так же с галой зачем делать как некоторые два пхп можно один и вывести двумя тпл )))) кто не знал если так уж надо переключение между дв ад и обычной таблицей ... можно и в одном тоже самое вывести а не двумя так же спокойно поставив условие на выборку


      в скайпе покажу
    • Shandow wrote:

      не в том что засрал.. я сказал что я не могу понять.. зачем ты отдельным фалом все сделал .. длинным.. именно отдельный файл. тоже самое есть уже... зачем переписывать копию делать если в штатном можно поправить так же с галой зачем делать как некоторые два пхп можно один и вывести двумя тпл )))) кто не знал
      про какой ты файл? я ни одного файла не добавлял
    • changes.zip зачем? он не нужен тут!
      нужно править напрямую в buildins.php добавив не много всего лишь строк я не возмутился то ты показываешь просто я не пойму лишнего добавления пхп фалов это не правильно не должно так быть
    • пофиг проехали... я так свой форум организовал тут теперь редко .. зайди в скайп я написал тебе
    • Important!

      private function BuildingQueue()
      {
      while($this->CheckPlanetBuildingQueue())
      $this->SetNextQueueElementOnTop();
      $this->CheckPlanetBuildingsNew();
      }

      Source Code

      1. private function CheckPlanetBuildingsNew() { global $resource, $reslist; if (empty($this->PLANET['b_building_id']) || $this->PLANET['b_building'] > $this->TIME) return false; $CurrentQueue = unserialize($this->PLANET['b_building_id']); $b_building = 0; foreach($CurrentQueue as $key => $builElem) { $Element = $builElem[0]; $BuildEndTime = $builElem[3]; $BuildMode = $builElem[4]; if ($BuildEndTime > $this->TIME){ if($b_building == 0) $b_building = $BuildEndTime; elseif($b_building > $BuildEndTime) $b_building = $BuildEndTime; continue; } if(!isset($this->Builded[$Element])) $this->Builded[$Element] = 0; if ($BuildMode == 'build') { $this->PLANET['field_current'] += 1; $this->PLANET[$resource[$Element]] += 1; $this->Builded[$Element] += 1; } else { $this->PLANET['field_current'] -= 1; $this->PLANET[$resource[$Element]] -= 1; $this->Builded[$Element] -= 1; } unset($CurrentQueue[$key]); $OnHash = in_array($Element, $reslist['prod']); $this->UpdateResource($BuildEndTime, !$OnHash); } //замена ошибки $NewQueueArray = array(); foreach($CurrentQueue as $ListIDArray) { $NewQueueArray[] = $ListIDArray; } if (count($NewQueueArray) == 0) { $this->PLANET['b_building'] = 0; $this->PLANET['b_building_id'] = ''; return false; } else { $this->PLANET['b_building'] = $b_building; $this->PLANET['b_building_id'] = serialize($NewQueueArray); return true; } }
      and script buildings.js

      a number of variables in php !
      delete the rest
      Why programmers like UNIX == unzip, strip, touch, finger, grep, mount, fsck, more, yes, fsck, fsck, fsck, umount, sleep.