Назначение: Позволяет создать кнопки с особыми ивентами.
Расположение: Parser\gu_in\Modules\Button\ButtonEx.xlsx
Структура файла:
dwButtonIndex | IsEnable | Name | dwColor | EventCode | IsEnterLimit | dwLimit | IsPcBangLimit | nMoneyType | dwCost | dwSkillType |
Индекс кнопки от 150 до 255 | Признак работы кнопки (0 нет, 1 да) | Имя отображаемое в клиенте | Цвет кнопки | Тип ивента из списка* | Признак активности ограничения (0 нет, 1 да) | Ограничение на использование количество раз персонажем, обнулять можно запросом ** | Требовать статус премиум (0 нет, 1 да) | Тип валюты для использования | Стоимость использования (0 - бесплатно) | Тип эффекта из списка *** |
dwSkillIndex | dwSkillLevel | dwSkillTime | nLevelUp | R_ItemCode | R_ItemNum | R_ItemUpgrade | D_ItemCode | D_ItemNum | D_ItemUpgrade |
Индекс эффекта из скрипта | Уровень эффекта | Время действия эффекта | Получаемый уровень при использовании | Получаемый серверный код предмета | Получаемое количество предметов | Получаемая заточка предмета | Удаляемый серверный код предмета | Удаляемое количество предметов | Требуемая заточка для удаления предмета |
Пример заполнения:
Рассмотрим несколько описанных правил выше:
1) Мы взяли несуществующий индекс кнопки 150 в 3 строчке экселя и сделали её рабочей, дали название "Ускорение", присвоили код ивента "BuffMe", поставили правило, что один персонаж может её использовать 400 раз, данные эффекта берём из Force.dat, индекс умения 17, уровень 7, время действия 1080 сек;
2) Мы взяли несуществующий индекс кнопки 157 в 8 строчке экселя и сделали её рабочей, дали название "Интегрированный впрыск", присвоили код ивента "BuffMe", данные эффекта берём из ClassSkill.dat, индекс умения 471, уровень 7, время действия 2160 сек;
3) Мы взяли несуществующий индекс кнопки 162 в 11 строчке экселя и сделали её рабочей, дали название "Обменять двурук на искру", присвоили код ивента "ExchangeItem", установили также требование премиум аккаунта и стоимость 30000 очков PvP, в правой части iwpvp02 удаляем и получаем iwpvp01;
4) Мы взяли несуществующий индекс кнопки 163 в 12 строчке экселя и сделали её рабочей, дали название "Получить 60 уровень", присвоили код ивента "UpdateLevel", установили также требование премиум аккаунта и стоимость 5000 очков Статуса, в правой части указали 60 уровень;
5) Мы взяли несуществующий индекс кнопки 164 в 13 строчке экселя и сделали её рабочей, дали название "Получить искру", присвоили код ивента "RewardPlayer", установили стоимость 200000000 Расовой Валюты, в правой части получаем iwpvp01;
Добавим следующие кнопки в НПС Рыцаря Федерации:
150 | 151 | 152 | 153 | 154 | 157 | 158 | 162 | 163 | 164 |
Получаем результат в игре:
Описание кнопки Ускорение:
Описание кнопки Интегрированный Впрыск:
Описание кнопки "Обменять двурук на искру":
Описание кнопки "Получить 60 уровень":
Описание кнопки "Получить Искру":
Формирование файла сервера:
Файл формируется путём сборки модульных скриптов по адресу 127.0.0.1, данные берутся из gu_in\Modules\Button\ButtonEx_Server.txt
Формирование файла клиента:
Файл формируется путём сборки модульных скриптов по адресу 127.0.0.1, данные берутся из gu_in\Modules\Button\ButtonEx_Client.txt