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

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

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

  1. Danil007524

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

    Баллы:
    76
    @fromgate, есть предложение по улучшению действия MESSAGE. Т.е. не совсем улучшения, а добавления новых действий: MSGACT - показывать выбранное сообщение в Action Bar'е. MSGTITLE - показывать сообщение в Title. (с параметром SubTitle, разумеется.). В общем, всё.
     
  2. Korvinius

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

    Баллы:
    88
    Угу, этот вариант работает безотказно с флагами, а вот с активаторами не хочет:(
     
  3. Автор темы
    fromgate

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

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    Будет. Но когда - пока не знаю.
     
  4. Lyosha12

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

    Баллы:
    98
    Skype:
    alexey_zyuz
    Имя в Minecraft:
    Lyosha12
    Пока что можно заменить командами. Сам текст можно создать здесь: https://www.minecraftjson.com/
     
  5. Korvinius

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

    Баллы:
    88
    Опять вылезла эта ошибка:
    Код:
    [17:12:51 ERROR]: Could not pass event PlayerJoinEvent to ReActions v0.9.9/4
    org.bukkit.event.EventException
            at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:310) ~[server11358.jar:git-Spigot-db6de12-3f3c65f]
            at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[server11358.jar:git-Spigot-db6de12-3f3c65f]
            at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:502) [server11358.jar:git-Spigot-db6de12-3f3c65f]
            at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:487) [server11358.jar:git-Spigot-db6de12-3f3c65f]
            at net.minecraft.server.v1_8_R3.PlayerList.onPlayerJoin(PlayerList.java:298) [server11358.jar:git-Spigot-db6de12-3f3c65f]
            at net.minecraft.server.v1_8_R3.PlayerList.a(PlayerList.java:157) [server11358.jar:git-Spigot-db6de12-3f3c65f]
            at net.minecraft.server.v1_8_R3.LoginListener.b(LoginListener.java:144) [server11358.jar:git-Spigot-db6de12-3f3c65f]
            at net.minecraft.server.v1_8_R3.LoginListener.c(LoginListener.java:54) [server11358.jar:git-Spigot-db6de12-3f3c65f]
            at net.minecraft.server.v1_8_R3.NetworkManager.a(NetworkManager.java:231) [server11358.jar:git-Spigot-db6de12-3f3c65f]
            at net.minecraft.server.v1_8_R3.ServerConnection.c(ServerConnection.java:148) [server11358.jar:git-Spigot-db6de12-3f3c65f]
            at net.minecraft.server.v1_8_R3.MinecraftServer.B(MinecraftServer.java:814) [server11358.jar:git-Spigot-db6de12-3f3c65f]
            at net.minecraft.server.v1_8_R3.DedicatedServer.B(DedicatedServer.java:374) [server11358.jar:git-Spigot-db6de12-3f3c65f]
            at net.minecraft.server.v1_8_R3.MinecraftServer.A(MinecraftServer.java:654) [server11358.jar:git-Spigot-db6de12-3f3c65f]
            at net.minecraft.server.v1_8_R3.MinecraftServer.run(MinecraftServer.java:557) [server11358.jar:git-Spigot-db6de12-3f3c65f]
            at java.lang.Thread.run(Unknown Source) [?:1.7.0_67]
    Caused by: java.util.ConcurrentModificationException
            at java.util.HashMap$HashIterator.nextEntry(HashMap.java:839) ~[?:1.7.0_67]
            at java.util.HashMap$KeyIterator.next(HashMap.java:874) ~[?:1.7.0_67]
            at me.fromgate.reactions.util.waiter.ActionsWaiter.refresh(ActionsWaiter.java:77) ~[?:?]
            at me.fromgate.reactions.RAListener.onPlayerJoin(RAListener.java:323) ~[?:?]
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.7.0_67]
            at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.7.0_67]
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.7.0_67]
            at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.7.0_67]
            at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:306) ~[server11358.jar:git-Spigot-db6de12-3f3c65f]
            ... 14 more
    >
    [17:12:51 INFO]: XX_Max_XX[/93.79.218.158:27225] logged in with entity id 30666 at ([middle]37624.0341855228, 79.0, -38418.317706293186)
    >
     
  6. BrainRTP

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

    Баллы:
    76
    Имя в Minecraft:
    BrainRTP
    Привет, как сделать так, что бы NPC выдавали рандомные сообщения?
    Код:
     message:%RANDOM:{Привет, я - Стражник}, 123% 
    Не работает. Выдает такое: "{Привет" / " я - Стражник}" / "123"
    Нужно что бы целую фразу выдавал. Что не так?
     
  7. IIIeX

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

    Баллы:
    61
    Имя в Minecraft:
    IIIeX
    День добрый :)
    Ребят, кто пользуется флагом regon_member для проверки состоит игрок в регионе или нет?
    Вылетает ошибка в консоль при этом флаге, пробывал разные версии WG6+, работал только на WG5.9...

    ядро spigot: последний билд 1.8.8
    worldguard: 6.1.2-1652
    worldedit: 6.1.1-3459

    Код:
    [22:10:36] [Server thread/ERROR]: Could not pass event RegionEvent to ReActions v0.9.9
    org.bukkit.event.EventException
        at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:310) ~[vanilla.jar:git-Spigot-e4d4710-e1ebe52]
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[vanilla.jar:git-Spigot-e4d4710-e1ebe52]
        at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:502) [vanilla.jar:git-Spigot-e4d4710-e1ebe52]
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:487) [vanilla.jar:git-Spigot-e4d4710-e1ebe52]
        at me.fromgate.reactions.event.EventManager.setFutureRegionCheck(EventManager.java:336) [ReActions.jar:?]
        at me.fromgate.reactions.event.EventManager.access$3(EventManager.java:325) [ReActions.jar:?]
        at me.fromgate.reactions.event.EventManager$4.run(EventManager.java:341) [ReActions.jar:?]
        at org.bukkit.craftbukkit.v1_8_R3.scheduler.CraftTask.run(CraftTask.java:71) [vanilla.jar:git-Spigot-e4d4710-e1ebe52]
        at org.bukkit.craftbukkit.v1_8_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:350) [vanilla.jar:git-Spigot-e4d4710-e1ebe52]
        at net.minecraft.server.v1_8_R3.MinecraftServer.B(MinecraftServer.java:723) [vanilla.jar:git-Spigot-e4d4710-e1ebe52]
        at net.minecraft.server.v1_8_R3.DedicatedServer.B(DedicatedServer.java:374) [vanilla.jar:git-Spigot-e4d4710-e1ebe52]
        at net.minecraft.server.v1_8_R3.MinecraftServer.A(MinecraftServer.java:654) [vanilla.jar:git-Spigot-e4d4710-e1ebe52]
        at net.minecraft.server.v1_8_R3.MinecraftServer.run(MinecraftServer.java:557) [vanilla.jar:git-Spigot-e4d4710-e1ebe52]
        at java.lang.Thread.run(Unknown Source) [?:1.8.0_73]
    Caused by: java.lang.NoSuchMethodError: com.sk89q.worldguard.LocalPlayer.getAssociation(Lcom/sk89q/worldguard/protection/regions/ProtectedRegion;)Lcom/sk89q/worldguard/domains/Association;
        at me.fromgate.reactions.module.wgbridge.WGBridge6x.isPlayerIsMember(WGBridge6x.java:159) ~[?:?]
        at me.fromgate.reactions.externals.RAWorldGuard.isPlayerIsMember(RAWorldGuard.java:132) ~[?:?]
        at me.fromgate.reactions.flags.FlagRegion.checkFlag(FlagRegion.java:44) ~[?:?]
        at me.fromgate.reactions.flags.Flags.check(Flags.java:111) ~[?:?]
        at me.fromgate.reactions.flags.Flags.checkFlag(Flags.java:137) ~[?:?]
        at me.fromgate.reactions.flags.Flags.checkAllFlags(Flags.java:151) ~[?:?]
        at me.fromgate.reactions.flags.Flags.checkFlags(Flags.java:143) ~[?:?]
        at me.fromgate.reactions.actions.Actions.executeActivator(Actions.java:144) ~[?:?]
        at me.fromgate.reactions.activators.RegionActivator.activate(RegionActivator.java:62) ~[?:?]
        at me.fromgate.reactions.activators.Activator.executeActivator(Activator.java:230) ~[?:?]
        at me.fromgate.reactions.activators.Activators.activate(Activators.java:288) ~[?:?]
        at me.fromgate.reactions.RAListener.onRegion(RAListener.java:394) ~[?:?]
        at sun.reflect.GeneratedMethodAccessor68.invoke(Unknown Source) ~[?:?]
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_73]
        at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_73]
        at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:306) ~[vanilla.jar:git-Spigot-e4d4710-e1ebe52]
        ... 13 more

    Сам активатор:
    Код:
    REGION:
      qqq:
        region: world.test
        flags:
        - REGION_MEMBER=world.test
        actions:
        - MESSAGE=test region member
     
  8. Lyosha12

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

    Баллы:
    98
    Skype:
    alexey_zyuz
    Имя в Minecraft:
    Lyosha12
    @fromgate, пожалуйста, адаптируйте версию под 1.9! Лог заполняется неумолимо быстро и разрастается до мегабайтов! Без Вашего плагина мне жизнь совсем не мила :(
    Код:
    12.03 01:58:53 [Server] INFO ... 3 more
    12.03 01:58:53 [Server] INFO at org.bukkit.craftbukkit.v1_9_R1.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:53)
    12.03 01:58:53 [Server] INFO at org.bukkit.craftbukkit.v1_9_R1.scheduler.CraftTask.run(CraftTask.java:71)
    12.03 01:58:53 [Server] INFO at me.fromgate.reactions.MetricsLite$1.run(MetricsLite.java:173)
    12.03 01:58:53 [Server] INFO at me.fromgate.reactions.MetricsLite.access$3(MetricsLite.java:278)
    12.03 01:58:53 [Server] INFO at me.fromgate.reactions.MetricsLite.postPlugin(MetricsLite.java:285)
    12.03 01:58:53 [Server] INFO Caused by: java.lang.NoSuchMethodError: org.bukkit.Server.getOnlinePlayers()[Lorg/bukkit/entity/Player;
    12.03 01:58:53 [Server] INFO at java.lang.Thread.run(Thread.java:745)
    12.03 01:58:53 [Server] INFO at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    12.03 01:58:53 [Server] INFO at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    12.03 01:58:53 [Server] INFO at org.bukkit.craftbukkit.v1_9_R1.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:56)
    12.03 01:58:53 [Server] WARN org.apache.commons.lang.UnhandledException: Plugin ReActions v0.9.9 generated an exception while executing task 525
    12.03 01:58:53 [Server] WARN Exception in thread "Craft Scheduler Thread - 17"
    Код:
    [02:49:45] [Craft Scheduler Thread - 96/INFO]: [AuthMe] Traktor logged in!
    [02:49:54] [Server thread/INFO]: Lyosha12 issued server command: /BAN Traktor Test 12 13 14
    [02:49:54] [Server thread/ERROR]: Could not pass event ExecEvent to ReActions v0.9.9
    org.bukkit.event.EventException
        at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:310) ~[custom_server.jar:git-Spigot-b1c1b55-7d73fbb]
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[custom_server.jar:git-Spigot-b1c1b55-7d73fbb]
        at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:502) [custom_server.jar:git-Spigot-b1c1b55-7d73fbb]
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:487) [custom_server.jar:git-Spigot-b1c1b55-7d73fbb]
        at me.fromgate.reactions.event.EventManager$1.run(EventManager.java:255) [ReActions.jar:?]
        at org.bukkit.craftbukkit.v1_9_R1.scheduler.CraftTask.run(CraftTask.java:71) [custom_server.jar:git-Spigot-b1c1b55-7d73fbb]
        at org.bukkit.craftbukkit.v1_9_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:350) [custom_server.jar:git-Spigot-b1c1b55-7d73fbb]
        at net.minecraft.server.v1_9_R1.MinecraftServer.D(MinecraftServer.java:729) [custom_server.jar:git-Spigot-b1c1b55-7d73fbb]
        at net.minecraft.server.v1_9_R1.DedicatedServer.D(DedicatedServer.java:400) [custom_server.jar:git-Spigot-b1c1b55-7d73fbb]
        at net.minecraft.server.v1_9_R1.MinecraftServer.C(MinecraftServer.java:660) [custom_server.jar:git-Spigot-b1c1b55-7d73fbb]
        at net.minecraft.server.v1_9_R1.MinecraftServer.run(MinecraftServer.java:559) [custom_server.jar:git-Spigot-b1c1b55-7d73fbb]
        at java.lang.Thread.run(Thread.java:745) [?:1.7.0_80]
    Caused by: java.lang.NoSuchMethodError: org.bukkit.Server.getOnlinePlayers()[Lorg/bukkit/entity/Player;
        at me.fromgate.reactions.actions.ActionBroadcast.execute(ActionBroadcast.java:33) ~[?:?]
        at me.fromgate.reactions.actions.Action.executeAction(Action.java:73) ~[?:?]
        at me.fromgate.reactions.actions.Actions.performAction(Actions.java:182) ~[?:?]
        at me.fromgate.reactions.actions.Actions.executeActions(Actions.java:176) ~[?:?]
        at me.fromgate.reactions.actions.Actions.executeActivator(Actions.java:147) ~[?:?]
        at me.fromgate.reactions.activators.ExecActivator.activate(ExecActivator.java:28) ~[?:?]
        at me.fromgate.reactions.activators.Activator.executeActivator(Activator.java:230) ~[?:?]
        at me.fromgate.reactions.activators.Activators.activate(Activators.java:288) ~[?:?]
        at me.fromgate.reactions.RAListener.onRegionLeave(RAListener.java:410) ~[?:?]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.7.0_80]
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) ~[?:1.7.0_80]
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.7.0_80]
        at java.lang.reflect.Method.invoke(Method.java:606) ~[?:1.7.0_80]
        at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:306) ~[custom_server.jar:git-Spigot-b1c1b55-7d73fbb]
    
    Код:
    COMMAND:
      Ban:
        override: true
        regex: true
        command: (?i)(ban \S+ .+)
        flags:
        - PERM=essentials.ban
        actions:
        - cancel_event=true
        - VAR_SET=id:Ban_NickAdm value:%player%
        - VAR_SET=id:Ban_NickPlr value:%arg1%
        - VAR_SET=id:Ban_Reason value:{%args1%}
        - execute=activator:EXEC_Ban player:%var:Ban_NickPlr%
    EXEC:
      EXEC_Ban:
        actions:
        - broadcast=&c&l➡ &b%var:Ban_Reason% &eзабанил &a%var:Ban_NickPlr% &bна %varp:%arg1%%ч
        - broadcast=&c&l➡ &eПричина:&c %var:Ban_Reason%
    
     
    Последнее редактирование: 12 мар 2016
  9. Автор темы
    fromgate

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

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    Обязательно адаптирую, планирую заняться сегодня... Но....
     
  10. BrainRTP

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

    Баллы:
    76
    Имя в Minecraft:
    BrainRTP
    @Lyosha12
    Поможете мне? Выше написал что нужно... Спасибо.
     
  11. Lyosha12

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

    Баллы:
    98
    Skype:
    alexey_zyuz
    Имя в Minecraft:
    Lyosha12
    Но Вы же сами определили ошибку. Если где-то работает, а где-то нет, то это уже версия сопутствующего плагина виновата, а не ReActions.
    Можно сделать рандомизацию из переменных. Загнать нужные фразы в них и в выдаче их игроку поступить так:
    - MESSAGE=%var:NPC-Text-%random:1-30%%
     
  12. qDeath

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

    Баллы:
    66
    Помогите решить проблему.

    Вот мой активатор:

    COMMAND:
    '1':
    override: true
    regex: false
    command: test
    flags:
    - ITEM_INVENTORY=type:EMERALD 1
    actions:
    - MESSAGE=&e+
    reactions:
    - MESSAGE=&c-

    Вот мой итем: (mythicmobs)

    Emerand:
    Id: 388
    Data:
    Amount: 1
    Display: '&6[Обмен] &2Изумруд'
    Options:
    HideFlags: true
    Lore:
    - '§6Описание:'
    - §71
    - §71
    - §71

    ===================

    Если в инвентаре есть обычный изумруд, то активатор работает.
    Если в инвентаре изумруд от mythicmobs, то активатор не работает.
    Даже если использую - ITEM_INVENTORY=type:EMERALD name:{&6[Валюта] &2Изумруд} и удаляю описание предмета (lore). Почему так?

    Можно ли сделать так, чтобы он принял предмет с любым именем?
     
    Последнее редактирование: 12 мар 2016
  13. BrainRTP

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

    Баллы:
    76
    Имя в Minecraft:
    BrainRTP
    @Lyosha12
    Не мог бы ты подкинуть каких-нибудь туториалов про var? А то я не очень понял, даже с документацией...
     
  14. Soul_KRT

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

    Баллы:
    76
    name:.*
    Если нужно - lore:.*
    Должно работать
    Извиняюсь, но точно не помню. Если выше написанное работать не будет -
    name:{.*}
    lore:{.*}
    Если и так не будет (хотя должно) - без .
    name:{*}
     
  15. Lyosha12

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

    Баллы:
    98
    Skype:
    alexey_zyuz
    Имя в Minecraft:
    Lyosha12
    Тоже долго сторонился переменных. Но в них нет ничего сложного. Они являются основой любого серьёзного кода. Переменные в ReActions могут хранить что угодно: строки или числа.

    Чтобы записать что-то в переменную, нужно выполнить действие установки личной или глобальной переменной (VAR_SET или VAR_PLAYER_SET). В установке есть 2 параметра: id и value. Если id - это название переменной (id:Test, регистр не играет роли), то value - то, что будет хранить переменная. Если нужно хранить строку, а не значение, то поступают так: value:{несколько слов}. Если написать без фигурных скобок, то в переменную будет занесено только первое слово.

    Например, если значение - это количество запусков активатора, то оно будет содержать число, которое будет увеличиваться при запуске аткиватора. Например, сделать это можно так: VAR_INC=id:Test. Такое действие будет увеличивать (инкрементировать, если на языке программистов) значение переменной. ReActions может делать это, даже если переменная ещё не создана. Начальное значение, как помню, - 1. Аналогично действует INC_DEC, только в обратную сторону - уменьшает на единицу.

    Теперь, чтобы подставить значение переменной в текст, например, нужно написать так: %var:Test% - для глобальной переменной или %varp:Test% - для персональной.

    К примеру, я хочу изменить поведение команды /ban в Essentials. Для этого я использовал бы 2 активатора:
    Код:
    COMMAND:
      Ban:
        override: true
        regex: true
        command: (?i)(ban \S+ .+)
        flags:
        - PERM=essentials.ban
        actions:
        - cancel_event=true
        - VAR_SET=id:Ban_NickAdm value:%player%
        - VAR_SET=id:Ban_NickPlr value:%arg1%
        - VAR_SET=id:Ban_Reason value:{%args1%}
        - execute=activator:EXEC_Ban player:%var:Ban_NickPlr%
    EXEC:
      EXEC_Ban:
        actions:
        - broadcast=&c&l➡ &b%var:Ban_Reason% &eзабанил &a%var:Ban_NickPlr% &bна %varp:%arg1%%ч
        - broadcast=&c&l➡ &eПричина:&c %var:Ban_Reason%
    
    В первом активаторе я заношу значения, которые получаю из команды, в переменные, чтобы дальше их подставить в новый активатор EXEC, который будет выводить сообщение со всеми этими параметрами. Можете проверить работоспособность на версии ниже 1.9, ибо там не работает вызов EXEC.

    Надеюсь, читать документацию по переменным в ReActions стало легче :)
     
  16. BrainRTP

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

    Баллы:
    76
    Имя в Minecraft:
    BrainRTP
    @Lyosha12
    Спасибо за такое объяснение! Не мог бы ты мне рассказать, что означает в command "(?i)(ban \S+ .+)"
    и что означают активаторы в команде бан. А запутался чутка.
    Не могу понять значения value и их %args%
     
  17. qDeath

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

    Баллы:
    66

    name:{.*}
    lore:{.*}

    Помоги еще, если можешь. Какой код, чтобы команда отправляла ник игрока? ( cmd {player} ban )
     
  18. Lyosha12

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

    Баллы:
    98
    Skype:
    alexey_zyuz
    Имя в Minecraft:
    Lyosha12
    (?i)(ban \S+ .+) - регулярное выражение. Модификатор (?i) (или квантифер, если угодно) означает, что к следующей скобке будет применено игнорирование регистра английских букв. Это значит, что активатор будет реагировать как на /ban ..., так и на /bAn...

    \S+ - составная конструкция. Означает "Не пробел в любом количестве, но хотя бы один".

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

    Слово ban и пробелы являются постоянными (константами). Пробел так же можно заменить конструкцией \s.

    cancel_event - отменить введённую команду, чтобы игрока не забанило преждевременно. Далее я заношу в переменные то, что получил из команды, а потом вызываю EXEC для того игрока, которому хочу выдать бан (ник должен быть первым аргументом, после нулевого аргумента - самой команды).


    %args% - означает, что ReActions подставит вместо этой конструкции всё, что находится после нулевого аргумента, не включая его. %args1% - значит, что будет подставлено всё, что находится после первого аргумента, не включая его самого.
     
  19. BrainRTP

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

    Баллы:
    76
    Имя в Minecraft:
    BrainRTP
    @Lyosha12
    Ужас. Для меня это не понятно, пока что >:3
    Не мог бы ты привести пример конкретно для моей ситуации?
    Игрок кликает по НПС и ему пишется 1 из 2 (или более) текстов с задержкой 5 секунд (анти спав, т.e DELAY=5s)
    @Lyosha12
    Кстати, залил я твой EXEC и COMMAND себе и попытался прописать: /ban test 1 причина
    Ничего не сработало!
     
  20. Lyosha12

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

    Баллы:
    98
    Skype:
    alexey_zyuz
    Имя в Minecraft:
    Lyosha12
    Если я напишу прямой код, то Вы вряд ли будете в нём разбираться и поставите на сервер как чёрный ящик.
    Чтобы это сделать Вам нужно использовать активатор MOB_CLICK с соответствующим типом, именем моба. Далее к нему Вы должны приписать единственное действие MESSAGE, в котором будет содержаться то, что я написал ранее - %var:Test-%random:1-30%%.

    ReActions может обрабатывать плейсхолдеры в плейсхолдерах. Это значит, что сначала он подставит случайное число от одного до 30, а потом подставит значение глобальной переменной, которое соответствует имени, полученному ранее.

    Делайте и пишите, если что-то не будет получаться. Всегда лучше прийти самому к решению - потом же будет понятнее.
    Не сработало по тому, что в конце активатора COMMAND я вызываю EXEC относительно того, к кому применяется бан. Если игрока нет, то и активатор, соответственно, не будет вызван.
    Чтобы это работало, нужно параметру regex в описании предмета установить значение true.
     

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