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

Плагин [MECH/FUN] ReActions - Что? Тогда? Иначе! [BukkitDev]

Тема в разделе "Релизы плагинов", создана пользователем fromgate, 16 июл 2013.

  1. maxdikiy

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

    Баллы:
    76
    Имя в Minecraft:
    maxdikiy
    Тут всё просто. Необходимо отменить событие бакита действием CANCEL_EVENT
    - CANCEL_EVENT=true
     
  2. ВukkitPrоfi

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

    Баллы:
    76
    Еще проблема:
    Код:
    me1:
        override: true
        regex: false
        command: cmd:me
        actions:
        - CANCEL_EVENT=true
        - 'message=&7 Использование: /me <текст>'
      me2:
        override: false
        regex: false
        command: me .*
        actions:
        - CANCEL_EVENT=true
        - 'message=player:{loc:%PLAYER_LOC% radius:8} &7 * &f%player% &f%args%'
    
    Пишу /me с аргументами - пишет, что такой команды нет, если убрать ".*", то me2 работает, но если ввести без аргументов, то в чат вылезет * Player %args%".
    Раньше ".*" спокойно работал, сейчас пересобираю сборку - все какие-то ошибки в reactions. Но, возможно, тут я творю ошибки, подскажите, что не так.
    .. А если написать /me .* - в точности так (точка, зведочка), то me2 сработает: * Player .*, т.е. работает только аргумент '.*'
     
  3. maxdikiy

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

    Баллы:
    76
    Имя в Minecraft:
    maxdikiy

    Похоже, здесь в me2 необходимо указать regex: true. Должно заработать. По крайней мере, это у меня работает:
    Код:
      me2:
        override: true
        regex: true
        command: me .*
        actions:
        - CANCEL_EVENT=true
        - 'message=player:{loc:%PLAYER_LOC% radius:8} &7 * &f%player% &f%args%'
    
     
  4. ВukkitPrоfi

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

    Баллы:
    76
    Спасибо большое
     
  5. Автор темы
    fromgate

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

    Баллы:
    173
    Имя в Minecraft:
    fromgate
  6. AtomicScience

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

    Баллы:
    76
    Имя в Minecraft:
    AtomicScience
    Всем доброго времени суток!
    У меня есть маленькая идея:

    Чтобы игрокам было проще ориентироваться во время нахождения в лобби мини-игр, в зависимости от статуса игры(Набор игроков, Игра) изменялся цвет стекла/шерсти/глины, на котором стоит табличка.

    При помощи ReActions'a это конечно можно реализовать, но активатор SIGN срабатывает только при клике по табличке, а срабатывать должен мгновенно, при изменении статуса таблички
    Есть какие-нибудь идеи?
     
  7. Автор темы
    fromgate

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

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    А что меняет текст на табличках? Если есть к чему подцепиться - допустим выводится текст в чат, то можно попробовать это.
    Отловить изменение текста на табличке, если он меняется другим плагином - теоретически возможно, но на практике лучше этого не делать ;)
     
  8. AtomicScience

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

    Баллы:
    76
    Имя в Minecraft:
    AtomicScience
    Отлавливать вывод плагинов в чат? Хорошая идея, попробую реализовать
    Спасибо за идею:good:
     
  9. imDaniX

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

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    Есть ли возможность изменить сообщение игрока? Пытался через действие var_temp_set, но увы и ах...

    Проверял таким вот боком.
    Код:
    MESSAGE:
      Piany:
        mask: '#п'
        type: START
        source: CHAT_INPUT
        flags: []
        actions:
        - message=%word1%
        - var_temp_set=id:WORD1 value:{&7&o*ик*&f}
        - message=%word1%
    Второе действие message хоть и выдавало *ик*, но само сообщение оставалось без изменений
     
  10. maxdikiy

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

    Баллы:
    76
    Имя в Minecraft:
    maxdikiy
    Основное сообщение в чате выводит не ReActions, а другой плагин, и изменить его не получиться. Поэтому необходимо отменять вывод основного сообщения с помощью CANCEL_EVENT и выводить своё.



    /------------------------------------------------------------/

    Предложение автору.

    Появляется множество игроков, работающих в группе для облегчения прохождения сложных мини-игр, вселяясь друг в друга в режиме спектатора. Режим Спектатора отключать не хочу. Но хотелось бы без особого труда определить состояние вселяемого игрока.
    В плагине не особо сложно это сделать, просто нужно юзать метод getSpectatorTarget(), а состояние игрока назвать SPECTATOR_TARGET
    Чтобы добавить это состояние, необходимо в файле FlagState.java
    добавить пару строк:
    Код:
                case SPECTATOR_TARGET:
                    if (p.getSpectatorTarget() != null) return true;
                  
    
    Надеюсь, я ничего не напутал.

    Спасибо.

    p.s. Только заметил, что в плагине есть состояние игрока OP, чего не нашёл в документации. Нужная штука.
     
  11. imDaniX

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

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    Хотел сделать целый чат на основе ReActions, но проблема в том, что в РеА нет плейсхолдера самого сообщения, а не только отдельных его частей. Была идея сделать кучу переменных, в каждой из которых содержится множество %wordN%, но слишком уж это муторно, тем более в новой версии количество слов может достигать 250+

    Так или иначе - спасибо за разъяснение :)
     
  12. maxdikiy

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

    Баллы:
    76
    Имя в Minecraft:
    maxdikiy
    Хочу Вас порадовать! В РеА есть плейсхолдер всего сообщения :good:
    %message%
    Ради любопытства, заглянул в код плагина. Там можно найти интересные вещи, даже, о которых не говорится в документации.
    Удачи!
     
  13. imDaniX

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

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    О хоспаде, вы мой спаситель!
    Спасибо вам ещё раз, может наконец воплощу свою идею с JSON-чатом ^_^
     
  14. boomcss1

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

    Баллы:
    76
    Имя в Minecraft:
    Pup
    Код:
      kassa:
        mob-type: player
        mob-name: '&b&lКассир'
        actions:
        - MESSAGE=&eПроходим, не задерживаем очередь!
        - MONEY_PAY=5
        reactions:
        - MESSAGE=awd
    2 раза вылазиет сообщение и 2 раза снимается 5 баксов.
    Как исправить?
     
  15. AtomicScience

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

    Баллы:
    76
    Имя в Minecraft:
    AtomicScience
    Активатор какой? Может, плагин засчитывает это действие 2 раза?
     
  16. maxdikiy

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

    Баллы:
    76
    Имя в Minecraft:
    maxdikiy
    Похоже, что это активатор MOB_CLICK.
    Чтобы не допустить повторных кликов, непонятно по каким причинам, воспользуйтесь флагом DELAY_PLAYER и такой вопрос больше не появится!
     
  17. Автор темы
    fromgate

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

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    Я уже точно не помню, что там именно было - но этот глюк вылез после какой-то версии. Попробуйте версию с CircleCI - там должно быть всё ок.
     
  18. boomcss1

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

    Баллы:
    76
    Имя в Minecraft:
    Pup
    Хорошо,спасибо!
    Можете пример скинуть?
     
  19. Kixot14

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

    Баллы:
    88
    Skype:
    Kixot14
    Имя в Minecraft:
    F1xer
    мм... А где там кнопка "СКАЧАТЬ" ?)
     
  20. imDaniX

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

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    Сначала нужно зарегистрироваться или зайти с аккаунта GitHub, потом перейти по ссылке на ReActions и открыть последний билд(сейчас build 26); после клацнуть по "Artifacts", и снизу будет подсвечено название файла. Кликаешь на него, и у тебя появляется свежий билд ReActions ^^
     

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