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

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

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

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

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

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    Стремиться к новой версии сервера.
     
  2. Lomank

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

    Баллы:
    66
    Имя в Minecraft:
    Lomank
    О, тогда всё отлично. Сделал активатор с 6 флагами для теста, запилил на них реакции. Всё гладко.

    Я всё хотел спросить про активатор COMMAND.
    О нём мало написано на reactions.fromgate.ru, а точнее о функциях override и regex. Я бы хотел узнать, как сделать нормальную команду, то бишь:
    Когда вводишь другую команду, содержащую текст из созданной, чтобы она не активировалась.
    А также при неправильном вводе аргументов выдавался синтаксис.
    Просто когда в активаторе используются "*" при указании команды, она работает как надо (почти), но если ввести без определённого аргумента, команда ничего не выдаст.
    Если это не сделать, то может для активатора COMMAND сделать строку syntax? Если это возможно. То бишь при несоблюдении количества аргументов, выдаётся значение этой строки.
     
  3. AtomicScience

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

    Баллы:
    76
    Имя в Minecraft:
    AtomicScience
    День добрый!

    У меня вопрос: можно ли получить доступ к переменным плагина через плейсхолдеры PAPI? То есть, создать плейсхолдер-переменную для использования в сторонних плагинах
     
  4. imDaniX

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

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    Можно. Только нужно установить модуль в PAPI
    http://rubukkit.org/threads/mech-fu...-inache-bukkitdev.41857/page-184#post-1450939
     
  5. imDaniX

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

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    @fromgate, проблемище остается. Раньше думал, что оно мне не будет сильно мешать, но оказалось иначе.
    Уже писал - в действии REGEX в input нельзя использовать символ $.
    Код:
    Could not pass event MessageEvent to ReActions v0.11.0
    org.bukkit.event.EventException: null
        at org.bukkit.plugin.EventExecutor$2.execute(EventExecutor.java:72) ~[patched_1.12.2.jar:git-Paper-1391]
        at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:74) ~[patched_1.12.2.jar:git-Paper-1391]
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[patched_1.12.2.jar:git-Paper-1391]
        at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:515) [patched_1.12.2.jar:git-Paper-1391]
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:500) [patched_1.12.2.jar:git-Paper-1391]
        at me.fromgate.reactions.event.EventManager.raiseMessageEvent(EventManager.java:435) [ReActions-1.0-SNAPSHOT.jar:?]
        at me.fromgate.reactions.util.listeners.RaListener.onChatCommand(RaListener.java:144) [ReActions-1.0-SNAPSHOT.jar:?]
        at com.destroystokyo.paper.event.executor.asm.generated.GeneratedEventExecutor736.execute(Unknown Source) [?:?]
        at org.bukkit.plugin.EventExecutor$2.execute(EventExecutor.java:70) [patched_1.12.2.jar:git-Paper-1391]
        at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:74) [patched_1.12.2.jar:git-Paper-1391]
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) [patched_1.12.2.jar:git-Paper-1391]
        at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:515) [patched_1.12.2.jar:git-Paper-1391]
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:497) [patched_1.12.2.jar:git-Paper-1391]
        at net.minecraft.server.v1_12_R1.PlayerConnection.chat(PlayerConnection.java:1387) [patched_1.12.2.jar:git-Paper-1391]
        at net.minecraft.server.v1_12_R1.PlayerConnection.a(PlayerConnection.java:1302) [patched_1.12.2.jar:git-Paper-1391]
        at net.minecraft.server.v1_12_R1.PacketPlayInChat$1.run(PacketPlayInChat.java:39) [patched_1.12.2.jar:git-Paper-1391]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:1.8.0_151]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:1.8.0_151]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_151]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_151]
        at java.lang.Thread.run(Thread.java:748) [?:1.8.0_151]
    Caused by: java.lang.IllegalArgumentException: Illegal group reference: group index is missing
        at java.util.regex.Matcher.appendReplacement(Matcher.java:819) ~[?:1.8.0_151]
        at java.util.regex.Matcher.replaceAll(Matcher.java:955) ~[?:1.8.0_151]
        at java.lang.String.replaceAll(String.java:2223) ~[?:1.8.0_151]
        at me.fromgate.reactions.util.Variables.replaceTempVars(Variables.java:345) ~[?:?]
        at me.fromgate.reactions.placeholders.Placeholders.replacePlaceholders(Placeholders.java:60) ~[?:?]
        at me.fromgate.reactions.placeholders.Placeholders.replacePlaceholderButRaw(Placeholders.java:49) ~[?:?]
        at me.fromgate.reactions.actions.Actions.executeActions(Actions.java:183) ~[?:?]
        at me.fromgate.reactions.actions.Actions.executeActivator(Actions.java:161) ~[?:?]
        at me.fromgate.reactions.activators.MessageActivator.activate(MessageActivator.java:129) ~[?:?]
        at me.fromgate.reactions.activators.Activator.executeActivator(Activator.java:231) ~[?:?]
        at me.fromgate.reactions.activators.Activators.activate(Activators.java:330) ~[?:?]
        at me.fromgate.reactions.util.listeners.RaListener.onMessageEvent(RaListener.java:645) ~[?:?]
        at com.destroystokyo.paper.event.executor.asm.generated.GeneratedEventExecutor789.execute(Unknown Source) ~[?:?]
        at org.bukkit.plugin.EventExecutor$2.execute(EventExecutor.java:70) ~[patched_1.12.2.jar:git-Paper-1391]
        ... 20 more
     
  6. Christmas

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

    Баллы:
    76
    Почему может не работать плагин в доп мирах? Все как положено сохраняется, но не работает. В основном мире же все работает.
    И 2-ое. Почему /react add tpbut(пример) a TP %here% всегда возвращает false? Если в ручную писать коорды, то все норм.

    UPD: С доп.мирами разобрался.
     
    Последнее редактирование: 24 апр 2018
  7. Автор темы
    fromgate

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

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    Вообще странно очень. Регулярно этим пользуюсь. Перепроверю сегодня.
     
  8. Автор темы
    fromgate

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

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    Ага. Ещё и REGEX'у плохо. В общем, это я понял. Постараюсь в ближайшее время вернуться к тому как было.

    Вообще, я тут пытаюсь придумать как бы не сломать плагин после перехода на 1.13. Не хочу поддерживать две ветки.
     
  9. Автор темы
    fromgate

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

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    v0.11.1
    • Флаги будут создавать дополнительный временный плейсхолдер <FLAG_NAME>_FLAG_VAL, который будет содержать результат проверки данного флага (true / false)
    • Добавлен флаг HEALTH — проверка здоровья игрока
    • Команда /react add теперь работает (должна ;)) на bukkit 1.7.10.
    • Исправлена ошибка, связанная с несовместимостью API разных версий spigot, проявлявшая себя периодически при стрельбе из лока, бросании зелий и т.п.
    • Информация о регистрации команд, при старте сервера, объедина в одно сообщение.

    Зафиксировал текущее состояние разработки в виде релиза. Те, кто качал с недавно с CircleCI — не перекачивайте.
     
  10. Theseus_EU

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

    Баллы:
    66
    Имя в Minecraft:
    Theseus
    Ребята. Может кто поможет мне с одним вопросом.

    Хочу сделать так, чтобы моя постройка (Поезд перемещался вместе с игроками) в заданном направлении и возвращался в исходное положение.
    Как можно это сделать с помощью ReAction? Хотя бы пример.

    Вот, что по итогу я хотел бы получить на выходе:

    1) Игрок подходит к поезду, который будет принадлежать к некоему региону "Admin"
    2) Регион "Admin" проверяет его на наличие билета

    a) Билетов будет от 1 до 132, названия билетов по типу: Билет№1, Билет№2 и т.д.
    b) Проверяет указанные номера

    a) Если билет есть то активированные поршни деактивируются и игрока пускает в поезд
    b) Если билета нет, то игрока не пускает в поезд, откидывает назад
    c) Если игрок выкинул билет в поезде его выкинет из поезда на станцию, телепортирует

    3) Игрок заходит в поезд и поршни вновь активируются, закрывая тем самым двери

    a) Если игрок захочет выйти из поезда с билетом, поршни также должны деактивироваться

    a) В регионе поезда нельзя вводить команды
    b) При перезаходе в игру игрока телепортирует в указанную позицию на станции

    4) Когда все игроки сели на поезд, в указанное время поезд отправляется со станции
    5) Вместе с поездом должен смещаться регион самого поезда, который будет проверять наличие билетов, а также запрещать команды
    6) Ну и самое главное, чтобы во время поездки в поезду играла для игроков музыка с пластинки, заменил на свою.

    Вот такие вот вагончики для перемещения - https://ibb.co/fHxbtc

    Заранее спасибо, если будет ответ, просто для меня сложно разобраться в таком плагине :)
     
    Последнее редактирование: 27 апр 2018
  11. Artem108

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

    Баллы:
    66
    Имя в Minecraft:
    Artem108
    Все пункты можно сделать с лёгкостью, а вот по поводу перемещения поезда, тут всё сложнее (исхожу только из своего опыта)
    Я бы не сказал что невозможно, но не просто реализовать и единственное, что пришло в голову, это использование любого из вошедших в поезд игроков и командами от WE + cmd_op. В детали не вникал. Но типа от имени игрока будет удалён регион (типа поезд уехал, а в нужном месте, после телепортирования, запрет пару секунд двигаться и загрузка и вставка схематика)

    И тут нужно часами возиться и тестировать всё, поэтому не проще ли отказаться от "перемещения" самого вагона?

    Что если он будет сразу на всех станциях, а перемещаться будут только игроки? Это во много раз упростит задачу)
     
  12. Theseus_EU

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

    Баллы:
    66
    Имя в Minecraft:
    Theseus
    Проблема вся в том, что я хочу реальную имитацию езды в поезде. С друзьями хотели когда-то такой поезд сделать для игроков, чтобы те катались в особые локации, куда нельзя попасть телепортом и поезда ходят только в особые дни. К примеру только по субботам. Некую атмосферу хотели создать такой штукой. Типо едишь базаришь с чуваками, на фоне стук колёс и какая-нибудь спокойная музыка.

    Забыл добавить, еще бы хотелось, чтобы по поезду во время езды можно было ходить игрокам.

    Тут я понимаю только модом можно сделать такой..... Но честно говоря я не хочу прибегать к модам, хотелось бы реализовать всё из оригинального майна.
     
    Последнее редактирование: 27 апр 2018
  13. imDaniX

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

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    Куда логичнее будет отказаться от перемещения самого региона, и просто сделать несколько статичных - путь поезда, конечные/начальные пункты, вход/выход на каждой станции.

    Для перемещения вагона и игроков можно воспользоваться ванильной командами /clone ... и "подтиранием" старых блоков /fill ... air, и всё это дело запускать с помощью армор-стенда в вагоне через действие CMD_CONSOLE=minecraft:execute @e[type=armor_stand,name=Vagon1] ...; ну, и действие TP(либо /minecraft:teleport ... через стенд)

    Самое нереализуемое здесь - музыка. Насколько я знаю, источник звука не перемещается, и находится всегда в одном месте. Единственный способ - проигрывать игроку что-нибудь на нотных блоках через действие SOUND или /playsound ... и менять трек через BLOCK_CLICK.

    Из-за постоянного применения телепортации игрокам будет затруднительно ходить, но не невозможно.

    Но на мой взгляд, это в принципе не самая лучшая идея. Я не знаю какой эффект взымеет постоянная телепортация и редактирование блоков на сервер и клиенты игроков(жуткие лаги, например)

    Если всё ещё интересно - могу набросать какой-нибудь скрипт.
     
  14. Theseus_EU

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

    Баллы:
    66
    Имя в Minecraft:
    Theseus
    Был бы только благодарен.
     
  15. DyX

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

    Баллы:
    76
    Имя в Minecraft:
    GoODsPie
    Привет!
    Когда можно будет отталкивать Игрока от Моба, а не только от другого Игрока?
     
  16. Jeleyka

    Jeleyka Активный участник

    Баллы:
    61
    а можно ли в активатре MOB_DAMAGE сделать как бы шаблонное имя, т.к. у меня стоит плагин, который изменят ник моба и показывает его хп (&1TestMob &c[10❤])
    например:
    MOB_DAMAGE:
    mclick:
    mob-name: 'Моб.*'
    mob-type: PLAYER
    а если поставить
    mob-name: ''
    или убрать эту строчку, то не работает ни на 1 мобе, какие-то другие плагины конфликтуют.
    работает MOB_DAMAGE только если прописать идеально точноe имя моба, а плагин на хп это портит
     
  17. Christmas

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

    Баллы:
    76
    Я подозреваю, что это какой-то плагин мешает. На чистом сервере без модов и с минимумом плагинов, все работает.
    Временно закостылил получение коорд посредством МКМ(MacroKeybindMode)
    Версия серва 1.7.10(древность, но шо поделать)
     
  18. VRovo213

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

    Баллы:
    76
    Как менять лор предмета в зависимости от пермишена в меню? (куплено/не куплено)?
     
  19. Lalki

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

    Баллы:
    66
    Не знаю как делать с помощью пермишена, но можно сделать с помощью персональной переменной, только на каждый предмет придется делать отдельную
     
  20. Dumzdeil

    Dumzdeil Участник Пользователь

    Баллы:
    31
    Можно ли поменять в конфиге config.yml
    region-recheck-delay (ну и item-hold-recheck-delay с item-wear-recheck-delay) перезапуск активаторов на 1/5 секунды? (по умолчанию 2)
    Код:
      region-recheck-delay: 2
      item-hold-recheck-delay: 2
      item-wear-recheck-delay: 2
    Просто у самого нет прямого доступа к конфигу, а ломать всё одной просьбой поставить "0.2" как то стремно.
    Кто проверял?

    UPD: не пытайтесь, всё плохо. Если знаете как решить - отпишитесь, пожалуйста.
     
    Последнее редактирование: 14 май 2018

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