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

Плагин [ADMIN] Re:ReActions | Простейший скриптовый плагин (1.20.6+)

А больше/меньше проверить как?
Флаг проверяет наличие некоторого количества игроков, т.е. например world.spawn/5 проверит, есть ли в регионе 5 или больше игроков.
Код:
- REGION_PLAYERS=world.spawn/5
Соответственно, чтобы, например, проверить наличие не больше 8 игроков в регионе, нужно инвертировать проверку
Код:
- '!REGION_PLAYERS=world.spawn/9'
(пишем 9 т.к. проверяется на "больше или равно")
 
Почему не работает конструкция следующего вида?
ITEM_GIVE=type:371
приходится заменять на
ITEM_GIVE=type:GOLD_NUGGET
 
Почему не работает конструкция следующего вида?
ITEM_GIVE=type:371
приходится заменять на
ITEM_GIVE=type:GOLD_NUGGET
Численные id уже давно вырезаны из ванили и серверного api - с 1.13, если быть точнее. Они есть где-то в подкорках кода ядра, но использовать их - вредить себе и другим.
 
Последнее редактирование:
Численные id уже давно вырезаны из ванили и серверного api - с 1.13, если быть точнее. Они есть где-то в подкорках кода ядра, но использовать их - вредить себе и другим.
понял, спасибо за ответ
 
Доброй ночи.
Не работает конструкция вида:
- action_delayed=time:1s action:{POTION type:INVISIBILITY level:2 time:3s}
Что изменилось в движке и как это пофиксить?
 
Доброй ночи.
Не работает конструкция вида:
- action_delayed=time:1s action:{POTION type:INVISIBILITY level:2 time:3s}
Что изменилось в движке и как это пофиксить?
Возможно, задержки поломались... Пока не могу поправить, ибо с завтрашнего дня на поезде двое суток ехать - сейчас могу лишь посоветовать использовать дополнительный активатор с EXECUTE. Как смогу - посмотрю, в чем дело, да поставлю заплатку. С системой модулей всё равно придется код задержек с нуля писать...
 
Пробую переходить на 1.17, получаю такую ошибку
[15:08:32 WARN]: [ReActions] Task #23441 for ReActions v0.13.0-b90 generated an exception
java.lang.NullPointerException: Cannot invoke "javax.script.ScriptEngine.eval(String, javax.script.ScriptContext)" because "me.fromgate.reactions.logic.actions.ActionIfElse.engine" is null
at me.fromgate.reactions.logic.actions.ActionIfElse.execute(ActionIfElse.java:110) ~[?:?]
at me.fromgate.reactions.logic.actions.Action.executeAction(Action.java:55) ~[?:?]
at me.fromgate.reactions.logic.actions.Actions.performAction(Actions.java:216) ~[?:?]
at me.fromgate.reactions.logic.actions.Actions.executeActions(Actions.java:191) ~[?:?]
at me.fromgate.reactions.logic.actions.Actions.executeActions(Actions.java:171) ~[?:?]
at me.fromgate.reactions.logic.activators.Activator.executeActivator(Activator.java:22) ~[?:?]
at me.fromgate.reactions.logic.ActivatorsManager.lambda$activate$5(ActivatorsManager.java:453) ~[?:?]
at java.lang.Iterable.forEach(Iterable.java:75) ~[?:?]
at me.fromgate.reactions.logic.ActivatorsManager.activate(ActivatorsManager.java:453) ~[?:?]
at me.fromgate.reactions.logic.StoragesManager.triggerRgEnter(StoragesManager.java:339) ~[?:?]
at me.fromgate.reactions.logic.StoragesManager.lambda$triggerAllRegions$1(StoragesManager.java:328) ~[?:?]
at org.bukkit.craftbukkit.v1_17_R1.scheduler.CraftTask.run(CraftTask.java:100) ~[patched_1.17.jar:git-Paper-79]
at org.bukkit.craftbukkit.v1_17_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:468) ~[patched_1.17.jar:git-Paper-79]
at net.minecraft.server.MinecraftServer.tickChildren(MinecraftServer.java:1488) ~[patched_1.17.jar:git-Paper-79]
at net.minecraft.server.dedicated.DedicatedServer.tickChildren(DedicatedServer.java:477) ~[patched_1.17.jar:git-Paper-79]
at net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1404) ~[patched_1.17.jar:git-Paper-79]
at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1180) ~[patched_1.17.jar:git-Paper-79]
at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:320) ~[patched_1.17.jar:git-Paper-79]
at java.lang.Thread.run(Thread.java:831) [?:?]
 
Возможно, задержки поломались... Пока не могу поправить, ибо с завтрашнего дня на поезде двое суток ехать - сейчас могу лишь посоветовать использовать дополнительный активатор с EXECUTE. Как смогу - посмотрю, в чем дело, да поставлю заплатку. С системой модулей всё равно придется код задержек с нуля писать...
Есть какие-то новости по задержкам?

И еще не работает конструкция:
BLOCK_CLICK:
bc:
block-type: ''
click-type: ANY
actions:
- message=Клик!
 
Пробую переходить на 1.17, получаю такую ошибку
[15:08:32 WARN]: [ReActions] Task #23441 for ReActions v0.13.0-b90 generated an exception
java.lang.NullPointerException: Cannot invoke "javax.script.ScriptEngine.eval(String, javax.script.ScriptContext)" because "me.fromgate.reactions.logic.actions.ActionIfElse.engine" is null
at me.fromgate.reactions.logic.actions.ActionIfElse.execute(ActionIfElse.java:110) ~[?:?]
at me.fromgate.reactions.logic.actions.Action.executeAction(Action.java:55) ~[?:?]
at me.fromgate.reactions.logic.actions.Actions.performAction(Actions.java:216) ~[?:?]
at me.fromgate.reactions.logic.actions.Actions.executeActions(Actions.java:191) ~[?:?]
at me.fromgate.reactions.logic.actions.Actions.executeActions(Actions.java:171) ~[?:?]
at me.fromgate.reactions.logic.activators.Activator.executeActivator(Activator.java:22) ~[?:?]
at me.fromgate.reactions.logic.ActivatorsManager.lambda$activate$5(ActivatorsManager.java:453) ~[?:?]
at java.lang.Iterable.forEach(Iterable.java:75) ~[?:?]
at me.fromgate.reactions.logic.ActivatorsManager.activate(ActivatorsManager.java:453) ~[?:?]
at me.fromgate.reactions.logic.StoragesManager.triggerRgEnter(StoragesManager.java:339) ~[?:?]
at me.fromgate.reactions.logic.StoragesManager.lambda$triggerAllRegions$1(StoragesManager.java:328) ~[?:?]
at org.bukkit.craftbukkit.v1_17_R1.scheduler.CraftTask.run(CraftTask.java:100) ~[patched_1.17.jar:git-Paper-79]
at org.bukkit.craftbukkit.v1_17_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:468) ~[patched_1.17.jar:git-Paper-79]
at net.minecraft.server.MinecraftServer.tickChildren(MinecraftServer.java:1488) ~[patched_1.17.jar:git-Paper-79]
at net.minecraft.server.dedicated.DedicatedServer.tickChildren(DedicatedServer.java:477) ~[patched_1.17.jar:git-Paper-79]
at net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1404) ~[patched_1.17.jar:git-Paper-79]
at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1180) ~[patched_1.17.jar:git-Paper-79]
at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:320) ~[patched_1.17.jar:git-Paper-79]
at java.lang.Thread.run(Thread.java:831) [?:?]
Похоже, движок JS полностью вырезали. Придумаю что-нибудь к вечеру.
Есть какие-то новости по задержкам?
Недавно только вещи разобрал и устроился. Пока нет, скоро будут.
И еще не работает конструкция:
BLOCK_CLICK:
bc:
block-type: ''
click-type: ANY
actions:
- message=Клик!
Довольно странно, ибо не так давно работало. Уверен, что название "bc" не используется, и активатор видно через /ra info bc?
 
Похоже, движок JS полностью вырезали. Придумаю что-нибудь к вечеру.

Недавно только вещи разобрал и устроился. Пока нет, скоро будут.

Довольно странно, ибо не так давно работало. Уверен, что название "bc" не используется, и активатор видно через /ra info bc?
bc взят как простой пример из вики реакшинс, пробовал другие уникальные названия, такой же результат.
По поводу /ra info bc
ra info bc
[15:07:46 INFO]: Failed to print message. Unknown key ☆ Activator info ☆
[15:07:46 INFO]: [ReActions] Failed to print message. Unknown key com.destroystokyo.paper.console.TerminalConsoleCommandSender@18ffa964
[15:07:46 INFO]: Id: bc (Type: BLOCK_CLICK Group: goldenroger)
[15:07:46 INFO]: Flags: 0 Actions: 1 Reactions: 0
[15:07:46 INFO]: Actions
[15:07:46 INFO]: 1 MESSAGE = Клик!
 
Похоже, движок JS полностью вырезали. Придумаю что-нибудь к вечеру.

Недавно только вещи разобрал и устроился. Пока нет, скоро будут.

Довольно странно, ибо не так давно работало. Уверен, что название "bc" не используется, и активатор видно через /ra info bc?
Привет.
Создал пул реквест с фиксом активатора
https://github.com/imDaniX/ReActions/pull/6/commits/eedfe2c28e64490a99e07dc71f9444c93348b405
 
Звиняюсь за ожидание, неожиданные дела. Принял реквест, спасибо.
По поводу действия IF_ELSE - теперь плагин будет сам подкачивать движок JS, потому должно работать.
С отложенными действиями всё ещё не разбирался, посмотрю этой ночью.

udp: Вроде исправил отложенные действия.
 
Последнее редактирование:
Что-то не могу выдать голову игрока со скином, выдается всегда Steve:
- 'item_give=type: PLAYER_HEAD amount:1 data:3 skull-owner:LunarBiome'
При этом команда
/give @p minecraft: player_head{SkullOwner:"LunarBiome"}
выдает голову со скином.

UPD. При этом мою голову через item_give выдает, видимо так как я онлайн
 
Последнее редактирование:
Даже создал скин через skinsrestorer:
/skinsrestorer createcustom PirateCaptain https://i.ibb.co/R7crKnH/f0d75698c599cb67.png
и выдал голову через команду:
/give @p minecraft: player_head{SkullOwner:"PirateCaptain"}
и получил голову со скином, но вот конструкция
- 'item_give=type: PLAYER_HEAD amount:1 data:3 skull-owner: PirateCaptain'
выдает Стива.
 
Что-то не могу выдать голову игрока со скином, выдается всегда Steve:
- 'item_give=type: PLAYER_HEAD amount:1 data:3 skull-owner:LunarBiome'
При этом команда
/give @p minecraft: player_head{SkullOwner:"LunarBiome"}
выдает голову со скином.

UPD. При этом мою голову через item_give выдает, видимо так как я онлайн
Даже создал скин через skinsrestorer:
/skinsrestorer createcustom PirateCaptain https://i.ibb.co/R7crKnH/f0d75698c599cb67.png
и выдал голову через команду:
/give @p minecraft: player_head{SkullOwner:"PirateCaptain"}
и получил голову со скином, но вот конструкция
- 'item_give=type: PLAYER_HEAD amount:1 data:3 skull-owner: PirateCaptain'
выдает Стива.
Скорее всего при выдаче головы через команду ник преобразуется в UUID, или вообще в нормальный профиль, а в случае с действием это не происходит... Неуверен, как можно пофиксить в данный момент. Попробую сделать через получение офлайн игрока, но будет регистрозависимость. Мб ещё стоит добавить через UUID.
 
Такая ситуация возникает, если я пытаюсь выдать голову игрока, который ни разу не заходил на сервер. Видимо команда give лезет за скином на сервер моджанга. Для себя нашел решение зайти на сервер под ником владельца скина.
По поводу конструкции
- action_delayed=time:1s action:{POTION type:INVISIBILITY level:2 time:3s}
не работает именно секция POTION type:INVISIBILITY level:2 time:3s
пришлось заменить на cmd_console effect give %player% invisibility 3 2
 
Привет всем, подскажите как сделать чтоб при вводе команды выдавался блок камня, а при повторном вводе команды нужно убратькамень с инвентаря, чтоб получить новыйчерез команду
 
Привет всем, подскажите как сделать чтоб при вводе команды выдавался блок камня, а при повторном вводе команды нужно убратькамень с инвентаря, чтоб получить новыйчерез команду
commands.yml
Код:
stonegrab:
  command: stonegrab
  exec: stonegrab-cmd
activators.yml
Код:
EXEC:
  stonegrab-cmd:
    flags:
    - '!VAR_PLAYER_EXIST=id:stonegrab-has'
    actions:
    - ITEM_GIVE=type:stone
    - VAR_PLAYER_SET=id:stonegrab-has value:1
    reactions:
    - ITEM_REMOVE_INVENTORY=type:stone amount:1
    - VAR_PLAYER_CLEAR=id:stonegrab-has
Можно просто активатором COMMAND вместо commands.yml воспользоваться, но тогда команда не будет зарегистрирована при запуске сервера.
 
commands.yml
Код:
stonegrab:
  command: stonegrab
  exec: stonegrab-cmd
activators.yml
Код:
EXEC:
  stonegrab-cmd:
    flags:
    - '!VAR_PLAYER_EXIST=id:stonegrab-has'
    actions:
    - ITEM_GIVE=type:stone
    - VAR_PLAYER_SET=id:stonegrab-has value:1
    reactions:
    - ITEM_REMOVE_INVENTORY=type:stone amount:1
    - VAR_PLAYER_CLEAR=id:stonegrab-has
Можно просто активатором COMMAND вместо commands.yml воспользоваться, но тогда команда не будет зарегистрирована при запуске сервера.
спасибо, кстати, можешь напомнить как сделать выдачу предметов (каждый определенным шансом)?
 
Последнее редактирование:

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

Назад
Верх