1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.
  2. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Помогите Получение награды за уровень

Тема в разделе "Разработка плагинов для новичков", создана пользователем Cristalix, 17 авг 2018.

Метки:
  1. Автор темы
    Cristalix

    Cristalix Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Test
    Хочу реализовать систему наград за достижение уровня или выполнения определенных условий.

    На Хайпикселе когда ты получаешь уровень. То при подключений к лобби игроку который который получил достижение или новый уровень. Выводится сообщение в чат. В котором написано что у тебя есть не полученные награды. Игрок должен зайти в меню и получить награду.

    Вопрос как можно такое реализовать? Имею ввиду само получение наград за достижение уровня. Как можно отследить получил ли награду игрок за уровень/достижение? Как это правильно хранить об этом информацию в базе данных?
     
  2. Klavy

    Klavy Активный участник Пользователь

    Баллы:
    66
    В SQL что-то типа такого:
    player | lvl | exp
    И при каждом пополнении опыта проверять, достиг ли игрок след уровня. Если да, выводим ему сообщение, обновляем lvl и даём приз. Призы можно и в конфиге
     
  3. php5master

    php5master Активный участник Пользователь

    Баллы:
    66
    Ну денежные призы можно давать через Vault API. Про структуру БД выше сказали, но я бы советовал не теребить БД и сохранять опыт временно в ConcurentHashMap и допустим через каждое x опыта или при Level up`е уже делать запрос, ну и при дисконекте с onDisable
     
  4. alexandrage

    alexandrage Старожил Пользователь

    Баллы:
    173
    Все решается redis сервером. База в оперативке.
     

Поделиться этой страницей