Итак, дисклеймер как обычно
Написано мной и для меня, выкладываю это для ознакомления, если не нужно или не нравится я никого не заставляю это ставить себе, написано специально для версии 2moons 2.0.
Предыстории нет, просто написал и выкладываю))
Приступим
[Blocked Image: http://skrinshoter.ru/p/190218/jJxaY3.png]
Display All
создаем файл \includes\pages\game\ShowRecruitPage.class.php
Display All
создаем файл \styles\templates\game\page.recruit.tpl
Display All
добавляем в \language\ru\INGAME.php (добавить во все языки которые нужны)
Display All
Добавить ссылку в меню или где удобно Вам <a href="game.php?page=recruit">{$LNG.recruitment}</a>
Написано мной и для меня, выкладываю это для ознакомления, если не нужно или не нравится я никого не заставляю это ставить себе, написано специально для версии 2moons 2.0.
Предыстории нет, просто написал и выкладываю))
Приступим
[Blocked Image: http://skrinshoter.ru/p/190218/jJxaY3.png]
- создаем файл \includes\recruit.php
PHP Source Code: recruit.php
- <?php
- $recruit['types'] = array('first','second'); // массив который выводит активные записи(первую и вторую, третья не выводится для ее добавления необходимо добавить запись через запятую 'third' )
- //первая активная запись
- $recruit['first']['cost'] = 500; //цена в темной материи
- $recruit['first']['fleetArray'] = array( // массив с кораблями и количеством
- // id корабля количество выдаваемых кораблей
- 204 => 50,
- 205 => 55,
- );
- $recruit['first']['defendArray'] = array( // массив с обороной и количеством
- 401 => 50,
- 402 => 55,
- );
- // конец записи
- // вторая активная запись
- $recruit['second']['cost'] = 1000; //цена
- $recruit['second']['fleetArray'] = array(
- 219 => 50,
- 206 => 55,
- );
- $recruit['second']['defendArray'] = array(
- 405 => 50,
- 404 => 55,
- );
- // конец записи
- // третья запись (не активная потому что записи нет в главном массиве)
- $recruit['third']['cost'] = 200; //цена
- $recruit['third']['fleetArray'] = array(
- 220 => 50,
- );
- $recruit['third']['defendArray'] = array(
- 405 => 50,
- );
- // конец записи
- ?>
создаем файл \includes\pages\game\ShowRecruitPage.class.php
PHP Source Code: ShowRecruitPage.class.php
- <?php
- class ShowRecruitPage extends AbstractGamePage
- {
- public static $requireModule = 0;
- function __construct()
- {
- parent::__construct();
- }
- function buy() //покупка
- {
- global $PLANET, $USER, $resource, $LNG;
- include('includes/recruit.php');
- $type = HTTP::_GP('type', '');
- $cost = $recruit[$type]['cost']; //цена
- $db = Database::get();
- $sql = 'UPDATE %%PLANETS%% SET';
- foreach($recruit[$type]['fleetArray'] as $shipId => $amount){
- $sql .= ' `'.$resource[$shipId].'` = `'.$resource[$shipId].'` + '.floattostring($amount).', ';
- }
- foreach($recruit[$type]['defendArray'] as $shipId => $amount){
- $sql .= '`'.$resource[$shipId].'` = `'.$resource[$shipId].'` + '.floattostring($amount).', ';
- }
- $sql .= '`metal` = `metal` + 0 ';
- $sql .= 'WHERE `id` = :planetid';
- if($USER[$resource[921]] < $cost )
- {
- $this->printMessage($LNG['rec_error'], array(array(
- 'label' => $LNG['sys_back'],
- 'url' => '?page=recruit'
- )));
- }
- $USER[$resource[921]] -= $cost;
- $db->update($sql, array(
- ':planetid' => $PLANET['id']
- ));
- $this->printMessage($LNG['rec_purchased'], array(array(
- 'label' => $LNG['sys_back'],
- 'url' => '?page=recruit'
- )));
- }
- function show()
- {
- global $LNG;
- include('includes/recruit.php');
- $this->tplObj->assign_vars(array(
- 'recruit' => $recruit,
- ));
- $this->display('page.recruit.tpl');
- }
- }
- ?>
создаем файл \styles\templates\game\page.recruit.tpl
HTML Source Code: page.recruit.tpl
- {block name="title" prepend}{$LNG.recruitment}{/block}
- {block name="content"}
- <div class="content_page">
- <div class="title">
- {$LNG.recruitment}
- </div>
- {foreach $recruit['types'] as $type}
- <div class="main_construct">
- <div class="block_construct">
- <div class="title" style="margin: 5px 0 0 -5px; text-align: left;" >
- {$LNG.$type.1}
- <div class="clear"></div>
- </div>
- <div class="block_construct_desc">
- {$LNG.$type.2}
- <div class="block_construct_desc_list">
- {foreach $recruit[$type]['fleetArray'] as $shipId => $amount}
- <img src="{$dpath}gebaeude/{$shipId}.gif" alt="{$LNG.tech.{$shipId}}" width="30" height="30">
- {$LNG.tech.{$shipId}}
- {$amount|number}</br>
- {/foreach}
- {foreach $recruit[$type]['defendArray'] as $shipId => $amount}
- <img src="{$dpath}gebaeude/{$shipId}.gif" alt="{$LNG.tech.{$shipId}}" width="30" height="30">
- {$LNG.tech.{$shipId}}
- {$amount|number}</br>
- {/foreach}
- </div>
- <div>
- <form action="?page=recruit&mode=buy" method="post" class="build_form">
- <input type="hidden" name="type" value="{$type}">
- <button type="submit" class="build_submit construct_button">{$LNG.rec_buy}{$recruit[$type]['cost']|number} {$LNG.tech.921}</button>
- </form>
- </div>
- </div>
- </div>
- </div>
- {/foreach}
- <div class="clear"></div>
- </div>
- {/block}
добавляем в \language\ru\INGAME.php (добавить во все языки которые нужны)
PHP Source Code: INGAME.php
- // наемники
- $LNG['recruitment'] = 'Наемники';
- $LNG['rec_buy'] = 'Приобрести за ';
- $LNG['rec_purchased'] = 'Покупка сделана';
- $LNG['rec_error'] = 'Не хватает ресурсов';
- $LNG['first'][1] = 'Заголовок 1';
- $LNG['first'][2] = 'Описание 1';
- $LNG['second'][1] = 'Заголовок 2';
- $LNG['second'][2] = 'Описание 2';
Кто к нам с чем зачем, тот от того и того!
The post was edited 3 times, last by aurum79 ().