Builder — различия между версиями
(→Окно подтверждения апгрейда) |
|||
Строка 19: | Строка 19: | ||
*'''кнопка улучшить''' - ссылка на кнопку, которая должна передать билдеру состояние 'upgrade', предварительно записав в 'param' id здания | *'''кнопка улучшить''' - ссылка на кнопку, которая должна передать билдеру состояние 'upgrade', предварительно записав в 'param' id здания | ||
*'''таблица''' - ссылка на таблицу, в которую сложатся все шаблоны предметов, необходимых для постройки\апгрейда здания | *'''таблица''' - ссылка на таблицу, в которую сложатся все шаблоны предметов, необходимых для постройки\апгрейда здания | ||
+ | *'''обычная постройка res1''' - ссылка на счетчик, в который кладется стоимость апгрейда здания в res1 | ||
*'''buildercomponent''' - ссылка на объект шаблона [[buildercomponent|компонента]] для постройки здания | *'''buildercomponent''' - ссылка на объект шаблона [[buildercomponent|компонента]] для постройки здания | ||
*'''само окно''' - окно улучшения\постройки здания. Должно иметь состояние show | *'''само окно''' - окно улучшения\постройки здания. Должно иметь состояние show |
Версия 10:20, 29 марта 2018
Объект Builder реализует механику фермы, где можно строить здания, улучшать их и получать с них бонусы по времени.
Содержание
Основные параметры
- economics - объект типа economics. Нужен для взаимодействия с балансом и предметами.
- builderitem - шаблон здания. Описание тут. Если шаблон указан в этом поле, то он является общим для всех клонируемых объектов зданий. Если какие-либо из зданий мы хотим сделать уникальными, то для них шаблон указывается в builder setup.
Окно подтверждения апгрейда
Окно, которое открывается когда мы хотим построить или улучшить здание. Содержит общую информацию о локации, а также необходимые предметы для улучшения.
- иконка до - иконка здания до улучшения\постройки
- иконка после - иконка здания после улучшения\постройки
- название - ссылка на текстовый объект названия здания. Берется из текстового id здания (sense0), который указан в builder setup
- описание - ссылка на текстовый объект описания здания. Берется из текстового id здания (sense1), который указан в builder setup
- уровень до - ссылка на счетчик, в который складывается значение уровня здания до улучшения. Т.к. уровня начинаются с 0, то для непостроенного здания в этот счетчик попадет значение -1
- уровень после - ссылка на счетчик, в который складывается значение уровня здания после улучшения
- время улучшения - ссылка на таймер, в который складывается время необходимое на улучшение. Таймер не запускается, а просто служит в качестве форматного контейнера для времени
- опыт за улучшение - ссылка на счетчик, в который сложится разовый опыт за улучшение\постройку здания
- цена за все - ссылка на счетчик, в который сложится общая цена со скидкой на необходимые компоненты(предметы) для улучшения\постройки здания
- кнопка купить все - ссылка на кнопку, по нажатию на которую покупаются все недостающие предметы. Кнопка должна передать состояние \\TODO
- кнопка улучшить - ссылка на кнопку, которая должна передать билдеру состояние 'upgrade', предварительно записав в 'param' id здания
- таблица - ссылка на таблицу, в которую сложатся все шаблоны предметов, необходимых для постройки\апгрейда здания
- обычная постройка res1 - ссылка на счетчик, в который кладется стоимость апгрейда здания в res1
- buildercomponent - ссылка на объект шаблона компонента для постройки здания
- само окно - окно улучшения\постройки здания. Должно иметь состояние show
builder setup
В этом разделе содержатся настройки для каждого здания. Условно это окно можно разделить на 3 блока:
- строение и настройки для строения
- уровень улучшения и настройки уровня улучшения
- предмет для постройки и настройки предмета, а также дополнительные условия для апгрейда
Строение добавляется по нажатию на кнопку Add1 (Удаляется Delete1).
Строение
- id - текстовый id, уникальный идентификатор строения
- builderitem - в случае, если нужно использовать уникальный вид строения, то сюда помещается ссылка на шаблон здания builderitem
- parent - в случае, если это здание использует общий для всех шаблон builderitem, то сюда помещается обект, в который после клонирования вложится этот шаблон. Этот объект необходим для размещения зданий на карте
- иконка(непостроенного) - ссылка на resID графики непостроенного здания. Т.е. его внешний вид до первого апгрейда
- иконка(строительства) - ссылка на resID графики процесса строительства\апгрейда
Уровень улучшения
- иконка - ссылка на resID графики здания на этом уровне
- время постройки - время в секундах, необходимое для улучшения на этот уровень с предыдущего
- время прибыли - время генерации прибыли в секундах
- постройка res1 - стоимость апдейта в res1
- мгновенная постройка res1 - стоимость мгновенного завершения строительства в res1
- мгновенная постройка res2 - стоимость мгновенного завершения строительства в res2
- опыт - опыт, даваемый разово за улучшение
- прибыль монеты - постоянно генерируемая прибыль зданием на этом уровне в res1
- прибыль кристаллы - постоянно генерируемая прибыль зданием на этом уровне в res2
Предмет для постройки для апгрейда
- id - текстовый id предмета, необходимого для улучшения на этот уровень
- num - количество предметов из поля выше
Дополнительное условие для апгрейда
- поле в опциях - название поля в опциях (автоматически ищет в текущем пользователе)
- значение - значение указанного выше поля в опциях необходимое для улучшения на этот уровень
Состояния
- update - вызывается для актуализации состояния зданий. Есть смысл делать при заходе на карту
- buy_component - вызывается из шаблона компонента buildercomponent, по нажатию на соответствующую кнопку шаблона
- upgrade_wnd - вызывается из шаблона builderitem, предварительно записав в param id здания. Открывает окно улучшения здания
- upgrade_instantly - вызывается из шаблона builderitem, предварительно записав в param id здания. Мгновенно завершает строительство