Система купонов/промокодов для получения разных наград

Gaikotsu

яжпрограммист
Легенда
Победитель в номинации 2023
Победитель в номинации 2022
Победитель в номинации 2021
Участник Новогоднего Фонда 2021
Эксперт
Знаток
Просветитель
Магистр реакций
Знаток письма
Куратор Данных
Медаль Благодарности
Старожил II степени
Старожил I степени
Победитель в номинации 2020
Победитель в номинации 2019
Клиент разработчик
Преподаватель
За веру и верность форуму
Победитель в номинации 2018
Медаль за активность на Форуме
За заслуги перед форумом
Web разработчик
Разработчик
За знание датапака
За знание ядра
Сообщения
1 518
Розыгрыши
0
Решения
24
Репутация
6 004
Реакции
2 576
Баллы
2 188
Хроники
  1. Chaotic Throne: High Five
Исходники
Присутствуют
Сборка
Overworld
Реализация выдачи разных наград в игре за ввод в вот этот вот диалог предварительно сгенерированных серийных номеров/промокодов

Screenshot_1.jpg

Реализация в целом простая и незатейливая - ниже пример реализации для серверов на базе Overworld'а.
сообщений >= 100 (0) и дней >= 30 (0)
 

Молодой человек, я не знаю как Вас зовут, но я Вас буду называть "Боженька".
Спасибо Боженька!
 
давно присматривался к этому окошку ))
 
Не хватает сообщений :(
 
А почему взят xml для хранения промокодов? Не целесообразнее их хранить в бд для "генерации на лету"?
Да и long в качестве expireTime выглядит достаточно странно

А почему взят xml для хранения промокодов? Не целесообразнее их хранить в бд для "генерации на лету"?
Да и long в качестве expireTime выглядит достаточно странно
По первому вопросу -пардон - не глянул описание спойлера. там просто хранится модель для генерации. еще раз извиняюсь, не доглядел.
 
Gaikotsu,
Идентификатор пользователя 546 (0)
 
Адаптировал под мобиуса. Сильно не тестировал - так что кусайте в ЛС если будут проблемы.

В java/org/l2jmobius/gameserver/GameServer.java добавить создание нового экземпляра путем добавления строки CouponDataManager.getInstance();
1689183221121.png
В MasterHandler, который по пути
Код:
dist/game/data/scripts/handlers/MasterHandler.java
нужно написать что-то подобное.
Java:
CouponDataManager.getInstance().isEnabled() && CouponDataManager.getInstance().isVoiceCommandEnabled() ? VoicedCoupon.class : null,
1689182741392.png
 

Вложения

  • CouponSystem.zip
    11,2 КБ · Просмотры: 37
Последнее редактирование:
Адаптировал под мобиуса. Сильно не тестировал - так что кусайте в ЛС если будут проблемы.

В java/org/l2jmobius/gameserver/GameServer.java добавить создание нового экземпляра путем добавления строки CouponDataManager.getInstance();
Посмотреть вложение 53826
В MasterHandler, который по пути
Код:
dist/game/data/scripts/handlers/MasterHandler.java
нужно написать что-то подобное.
Java:
CouponDataManager.getInstance().isEnabled() && CouponDataManager.getInstance().isVoiceCommandEnabled() ? VoicedCoupon.class : null,
Посмотреть вложение 53824
Спасибо за бессонную ночь в тестировании Вы прекрасны!
 
А куда писать сами коды? может кто более подробно описать что куда писать не можем разобраться
 
Назад
Сверху Снизу