Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.

Помогите Написание плагина (события и чтение конфига)

saharin94

Старожил
Заблокирован
Пользователь
Баллы
173
Имя в Minecraft
RubukkitDniwe
Решил создать свой плагин. Идея плагина - очередной фикс. Хочу запретить ставить некоторые блоки рядом. Каркас плагина по туториалам сделал - пока он умеет только обрабатывать команды.
Собственно, возник вопрос с регистрацией события "установка блока" и как считывать конфиг, если у меня некоторые значения идут как массив (а в примерах были показано только чтение строк/чисел).

Как будет выглядеть конфиг:
Код:
blocks:
  test1: #просто название группы. Может быть любым
    main-block: '5:1' # ID основного блока
    deny-blocks: [1,2,3,'5:2'] # блоки, которые нельзя ставить рядом
    message: &cЭтот блок нельзя ставить рядом с досками
  wood: #просто название группы. Может быть любым
    main-block: '5:5' # ID основного блока
    deny-blocks: [65] # блоки, которые нельзя ставить рядом
    message: &cЭтот блок нельзя ставить рядом с досками
Собственно, интересует как получить значения параметра blocks и blocks.<группа>.deny-blocks

p.s. Ещё как форматировать сообщения? Через какую функцию нужно пропустиь message?
 
А может быть ты сделаеш сообщения не message, а sendMessage?
 
Если я щас буду не прав то прости... Но. sendMessage отправляет определенному игроку сообщение... Тоесть ты выдергиваеш getPlayer(). и шлеш ему сообщение. А так как у тебя просто message то это объявляется на весь мир... Я не проффесионал и может не прав
 
Если я щас буду не прав то прости... Но. sendMessage отправляет определенному игроку сообщение... Тоесть ты выдергиваеш getPlayer(). и шлеш ему сообщение. А так как у тебя просто message то это объявляется на весь мир... Я не проффесионал и может не прав
Если ты не в курсе, то я как раз использую sendMessage().
 
или воспользоваться методом ChatColor.translateAlternateColorCodes()
 
А твоя идея заключается в том чтобы игроки не могли ставить блок рядом с какимто блоком или чтобы они ваще блок ставить не могли?
Допустим я запретил ставить некоторые блоки.. Потомучто они попросту не нужны и они багнутые
 
1. Вроде
@EventHandler
public void onPlayerInteract(PlayerInteractEvent event) {}
2. List var = Main.config.getStringList(blocks.test1. deny-blocks"); - список блоков, в формате строк. Парсить сам.
Main.config. - переменная конфига
 

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

Назад
Верх