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

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

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

  1. Автор темы
    saharin94

    saharin94 Старожил Пользователь Заблокирован

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

    Как будет выглядеть конфиг:
    Код:
    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?
     
    ПриветОтМиднайта нравится это.
  2. TeRy_LoL_xD

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

    Баллы:
    63
    Skype:
    shkoloserversa
    Имя в Minecraft:
    TeRy
    А может быть ты сделаеш сообщения не message, а sendMessage?
     
  3. Автор темы
    saharin94

    saharin94 Старожил Пользователь Заблокирован

    Баллы:
    173
    Зачем?
     
    slavik123123123 нравится это.
  4. Den_Abr

    Den_Abr Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    Самый банальный способ - заменить & на §
     
    Сникерсни нравится это.
  5. TeRy_LoL_xD

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

    Баллы:
    63
    Skype:
    shkoloserversa
    Имя в Minecraft:
    TeRy
    Если я щас буду не прав то прости... Но. sendMessage отправляет определенному игроку сообщение... Тоесть ты выдергиваеш getPlayer(). и шлеш ему сообщение. А так как у тебя просто message то это объявляется на весь мир... Я не проффесионал и может не прав
     
  6. Автор темы
    saharin94

    saharin94 Старожил Пользователь Заблокирован

    Баллы:
    173
    Если ты не в курсе, то я как раз использую sendMessage().
     
  7. Den_Abr

    Den_Abr Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    или воспользоваться методом ChatColor.translateAlternateColorCodes()
     
  8. TeRy_LoL_xD

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

    Баллы:
    63
    Skype:
    shkoloserversa
    Имя в Minecraft:
    TeRy
    А твоя идея заключается в том чтобы игроки не могли ставить блок рядом с какимто блоком или чтобы они ваще блок ставить не могли?
    Допустим я запретил ставить некоторые блоки.. Потомучто они попросту не нужны и они багнутые
     
    Attelis нравится это.
  9. dark32

    dark32 А где твой ТЗ? Пользователь

    Баллы:
    123
    1. Вроде
    @EventHandler
    public void onPlayerInteract(PlayerInteractEvent event) {}
    2. List var = Main.config.getStringList(blocks.test1. deny-blocks"); - список блоков, в формате строк. Парсить сам.
    Main.config. - переменная конфига
     
    Help и Attelis нравится это.

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