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

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

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

  1. rukaban96

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

    Баллы:
    76
    Супер!
     
  2. Korvinius

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

    Баллы:
    88
    Круто! Спасибо!!!
    И сразу вопрос:
    Если тип моба type: player, то в плейсхолдер %mobname% мы получим ник игрока?
     
  3. Fr1cK

    Fr1cK Новичок Пользователь

    Баллы:
    6
    Имя в Minecraft:
    MrFr1cK
    Сделай активатор по клику на нпс из citizens
     
  4. Lyosha12

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

    Баллы:
    98
    Skype:
    alexey_zyuz
    Имя в Minecraft:
    Lyosha12
    Отлично! Теперь в плане работы с сущностями ReActions круче Essentials! А с полной документацией я наконец-то закончу сервер-пример! Спасибо :)
     
  5. Astrogen

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

    Баллы:
    76
    Имя в Minecraft:
    Astrogen
    Прекрасная новость! Спасибо. Но, судя по номеру - это не релиз?
     
  6. Автор темы
    fromgate

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

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    Почему? Это релиз. Стабильная версия 0.9.5. Для версии 1.0.0 - у меня планы и мысли, не факт, что это будет скоро ;)

    Жду с нетерпением! :)
    Выше, @Lyosha12 давал шикарный совет. Активатор MOB_CLICK, параметры: тип моба - PLAYER, имя моба - имя NPC :)
    Должно быть так, не пробовал.
     
  7. Lyosha12

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

    Баллы:
    98
    Skype:
    alexey_zyuz
    Имя в Minecraft:
    Lyosha12
    Я, конечно, дико извиняюсь, но мне придётся начать всё заново. Воспринимая лишь только теорию нельзя понять ничего. Пройдясь по всему туториалу, я мог понимать о чём пишу только основываясь на личном опыте. Так что, я сделаю вторую версию с возможностью "пощупать" каждую ниточку :)
    А проблема с двоеточием в тексте решена? Кавычки убираются сами при перезагрузке конфига.
    Неее, не решена... Вторая строка просто пропускается:
    Код:
        - MESSAGE=При редактировании активаторов через конфиг следует помнить
        - MESSAGE=о причуде формата yml: пропустите пробел - конфиг сбросится.
    Если честно, то при написании больших гайдов такая заморочка несколько утомляет. Ещё немного раздражает перенос строки при слишком большом количестве слов на ней.
    Она переносится, задевая пробел перед первым словом. В итоге, весь текст далее смещается и приходится его распихивать по строкам вручную.

    Помнится, в Java есть 2 способа выводить текст на экран: System.out.print() и System.out.println(). Второй тип ставит в начале строки символ её переноса и всё, что далее, пишется на новой строке. И, я так понимаю, в Minecraft перенос строк реализован вторым методом. Можно ли его подправить силами ReActions хотя бы в его собственных сообщениях?
     
    Последнее редактирование: 28 июн 2015
  8. Fr1cK

    Fr1cK Новичок Пользователь

    Баллы:
    6
    Имя в Minecraft:
    MrFr1cK
    Рекомендую вписать это в тему)
     
  9. Lyosha12

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

    Баллы:
    98
    Skype:
    alexey_zyuz
    Имя в Minecraft:
    Lyosha12
    @fromgate, а для чего после создания активатора появляется строка, где указано количество флагов, действий и противодействий? Разве они не должны равняться нулю по-умолчанию? Гораздо уместнее было бы выводить все аргументы, которые были использованы в создании. Уместнее и полезнее - можно сразу найти ошибку, а не лезть в кофниг.
    @fromgate,
    ошибки в /help. Зачем указывать частный случай создания активатора-кнопки?
     

    Вложения:

  10. Korvinius

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

    Баллы:
    88
    отлично, эх, еще бы к активатору MOB_CLICK, добавить активатор MOB_DAMAGE, с сходными параметрами, а также возможностью усиливать/уменьшать/отменять наносимый урон ;)
     
  11. Lyosha12

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

    Баллы:
    98
    Skype:
    alexey_zyuz
    Имя в Minecraft:
    Lyosha12
    Код:
      shoot: # настройка ломаемых или проницаемых блоков для действия SHOOT
    
    break-block: GLASS,THIN_GLASS,STAINED_GLASS,STAINED_GLASS_PANE,GLOWSTONE,REDSTONE_LAMP_OFF,REDSTONE_LAMP_ON
    
    penetrable: FENCE,FENCE_GATE,IRON_BARDING,IRON_FENCE,NETHER_FENCE
    
    А не проще было бы указывать эти параметры в самом действии? Тогда можно было бы создать много типов оружия :)
    Кстати, уже можно построить коробку вокруг игрока, используя %PLAYER_LOC% и аргумент add-vector в действии? Примерно так? block_set=block:98 loc:{%PLAYER_LOC% add-vector:0,2,0}
    Код:
    При выполнении активатора, сначала происходит проверка флагов и если хоть один флаг дал отрицательный результат при проверке, то выполняться будет набор действий, а не реакций.
    Может, наоборот? http://reactions.fromgate.ru/flags.htm
    Кстати, забыли упомянуть про возможность инвертировать флаги.
     
  12. Автор темы
    fromgate

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

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    Да, до этого руки никак не доходят. Надо переделать метод строчного представления активатора.

    Рано или поздно так и будет. Я уже об этом думал неоднократно.

    Вполне. Только одним действием не обойтись - нужно "поблочно" всё выкладывать.


    О! Точно. Но это был такой марафон, что просто... щас исправим.

    и добавим ;)
     
  13. Lyosha12

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

    Баллы:
    98
    Skype:
    alexey_zyuz
    Имя в Minecraft:
    Lyosha12
    Тут можно было бы добавить онлайн-проверку регулярного выражения, которую Вы однажды мне показали: http://regex101.com/ :)
    @fromgate, почему-то не работает REGION:
    Код:
      region-recheck-delay: 2
    Код:
    REGION:
      Activator-REGION-2:
        region: activator-region-2
        flags: []
        actions:
        - MESSAGE=&r
        - MESSAGE=&c[&e▼&c]&3------------------------------------------------&c[&e▼&c]
        - MESSAGE=Пример активатора &bREGION&r.
        reactions: []
    
    Появляется лишь одна пустая строка в чате, а через время, продолжительное время (ну никак не две секунды) идёт повтор.
     
  14. Автор темы
    fromgate

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

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    @Lyosha12
    Скорее всего срабатывает защита от спама сообщениями. Очень старое "изобретение" - сделано, было чтобы игрока не засыпало однотипными сообщенями.
    Попробуй вместо MESSAGE запускать команду /say - должно быть нормально.

    Похоже пора заняться действием MESSAGE вполтную.
     
  15. Lyosha12

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

    Баллы:
    98
    Skype:
    alexey_zyuz
    Имя в Minecraft:
    Lyosha12
    Но say же говорит на весь сервер...
    Отправка сообщения игрокам в радиусе от точки\игрока\моба... Жду :)
    Сообщениями о выполнении действия MESSAGE? (Если такое есть). Вообще, засыпать игрока сообщениями или нет - решает автор активатора. Это вполне можно сделать средствами ReActions.
     
  16. Автор темы
    fromgate

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

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    Я имел в виду для теста.

    Добавлю. Вроде уже решил проблем с двоеточием.

    Ну это уже история, я уже смутно помню. Ситуация была такая. Делался регион — телепорт, в котором находился игрок. Он туда заходил и ждал какое-то время. Соответственно, через минуту чат был засыпан мусором. Вот чтобы мусора не было, ряд сообщений обрезался. В принципе можно убрать, или вынести в параметр (тогда параметров в сообщении не было).
     
  17. Lyosha12

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

    Баллы:
    98
    Skype:
    alexey_zyuz
    Имя в Minecraft:
    Lyosha12
    Параметры - это хорошо :)
     
  18. Автор темы
    fromgate

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

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    @Lyosha12
    0.9.5/1
    https://dl.dropboxusercontent.com/u/64799811/ReActions/ReActions.jar

    Здесь:
    1. Исправлена ситуация с пропаданием части сообщения из-за запятой.
    2. В действие MESSAGE добавлен параметр hide - в нём указывается время, в течение которого не отображать повторно точно такое же сообщение.
    3. В действие MESSAGE добавлены параметры loc и radius. Если loc пропущен - берутся координаты игрока. Сделано, чтобы отображать сообщение игрокам расположенным в пределах указанного радиуса.
    Это пока модификация только действия Message. В остальных случаях, пока, подобный метод выбора игроков не работает.
     
  19. Lyosha12

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

    Баллы:
    98
    Skype:
    alexey_zyuz
    Имя в Minecraft:
    Lyosha12
    Здесь надо бы добавить фигурных побольше:
    /react add COMMAND <ИмяАктиватора> command:{<КоманднаяСтрока>} override:<true/false> regex:<true/false>
    Быстро Вы ;D
    @fromgate, почему количество аргументов 9, хотя их 10?
    Код:
      Activator-COMMAND-5:
        override: false
        regex: true
        command: О плейсхолдерах(\s+\S+){3,}
        flags: []
        actions:
        - MESSAGE=&r
        - MESSAGE=&c[&e▼&c]&3------------------------------------------------&c[&e▼&c]
        - MESSAGE=Итак, чтобы узнать, какой аргумент ввёл игрок в команде,
        - MESSAGE=нужно в действиях указать &aплейсхолдер&r -
        - MESSAGE=&d%&darg&c<&3НомерНужногоАргумента&c>&d%
        - MESSAGE=Например, второй аргумент в данной команде был "&d%arg2%&r".
        - MESSAGE=А вот пятый, если он был:&r "&d%arg5%&r".
        - MESSAGE=&r
        - MESSAGE=Можно вывести все аргументы после конкретного:&d
        - MESSAGE=&d%&dargs&c<&3НомерНужногоАргумента&c>&d%&r.
        - MESSAGE=&r
        - MESSAGE=Пример. Это все аргументы, которые были после третьего,
        - MESSAGE=не включая третий аргумент:&r "&d%args3%&r"
        - MESSAGE=&r
        - MESSAGE=Можно вывести все аргументы, кроме команды - &d%&dargs%&r:&e
        - MESSAGE="&d%args%&r"
        - MESSAGE=&r
        - MESSAGE=Завершая тему плейсхолдеров в командах, можно узнать
        - MESSAGE=сколько аргументов было - &d%&dArgsCount%&r:&a %ArgsCount%
        reactions: []
    
    upload_2015-6-29_1-28-20.png
    @fromgate, а как насчёт отмены сообщения игрока через cancel_event в активаторе MESSAGE?
    Хм, теперь вообще ни одно сообщение не выводится...
    @fromgate, а при делении с остатком можно вывести этот самый остаток в переменную?
    У нас есть 10 переменных с предметами в них. Каким способом их можно выдать трём игрокам без остатка? При чём, располагаться они должны в случайном порядке.

    На ум приходит только способ с плейсхолдером рандомного числа. Он генерирует число от одного до десяти десять раз, и номер того предмета, что выпадает, выдаётся трём игрокам "по кругу". Однако, как исключить возможность генерации одного и того же числа дважды и больше?
    @fromgate, мне оставить место в туториале для активатора-смерти (обычной, от моба)? Или он будет добавлен ещё не скоро? Или Вы планируете переделать активаторы PVP_*, используя соответствующие параметры, указывающие на условия их запуска, как в случае с MESSAGE?
     
  20. pasha5018

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

    Баллы:
    76
    Имя в Minecraft:
    tdmackey
    Хотел создать, настенные часы , сделал все как на туториале, а на этой команде ошибку выдало
    /react add timer clock timer-type:server timer:0/1:*,*:*,*:? activator:clock
     

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