Войти или зарегистрироваться

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

@fromgate, раз уж пошла (мини-)тема насчет обновлений, то не могли бы вы добавить действие, заменяющее команду /tellraw и её возможности? Писать нечто типа
- cmd_op=tellraw %player_name% [{"text":"&a/rg del <ID>&7 - Удалить регион.","clickEvent":{"action":"suggest_command","value":"/rg del <ID>"},"hoverEvent":{"action":"show_text","value":{"text":"","extra":[{"text":"&a/rg del myhouse&7 - Удалить регион &emyhouse&7."}]}}}]
лишь для того, чтобы показать сообщение, надпись при наведении и вставку команды при клике - весьма неудобно.
Также было-бы неплохо добавить плейсхолдер для активатора MESSAGE, который захватывал-бы сообщение целиком.

Прошу прощение за беспокойство :I
 
Я тут идейку хочу предложить создателю данного плагина. Добавить возможность вывода sidebar или поддержку одноименного плагина. Думаю так будет удобно выводить значение переменных и прочих параметров при создании мини-игр и т.п. Хз может я не первый это предлагаю.:whistle:
 
Если после это повторно написать, тогда уже все становится нормально. Оочень стремно и странно
Я уже не помню старый синтаксис, но сравнение нужно проводить так:
id: value:

То, что у Вас переменная подставляется после введения команды дважды, означает лишь то, что Вы используете переменную до её инициализации.
файл "variables" тупо пустой
Есть такое. И происходит при одновременной записи переменной из игры и закачке файла через FTP. Где-то происходит обрубка синтаксиса и ReActions во избежание чего-то просто обнуляет файл.
 
Нечего было обновляться без бекапа. Золотое правило: Хочешь обновить, сделай бекап!
Я почти на любое изменение делаю бекап (не считая совсем простых изменений которые можно и потом сделать если что то не так пошло.)
 
Я уже не помню старый синтаксис, но сравнение нужно проводить так:
id: value:
/QUOTE]
Да, привыкаю по-тихоньку. Переписал, да и не в этом дело. Плейсхолдер продолжает себя плохо вести. И я не могу использовать переменную до ее инициализации, так как инициализация происходит по время написания команды, это же аргумент. Не знаю, как это работает, но помогло только создание персональной переменной, в которую записывается аргумент. Работает, да, безусловно, но это неудобно и много где придется переделывать. Выглядит теперь это извращение так:
Код:
    - var_set=id:biz001s1 value:%arg3%
    - 'message=&e[biz]Вы установили цену. Теперь она составляет: %var:biz001s1%$'
    - 'sign_set_line=loc:world,-1.0,65.0,603.0,0.0,0.0 line4:{Цена: %var:biz001s1%$}'
 
MrStefanie2007 сказал(а):
но это неудобно и
Никто не запрещает выучить Java. Пока @fromgate не откажется от навязчивой идеи сделать язык программирования, но чтобы он таковым по определению не являлся, мы не сможем писать красивые системы. Если бы у нас был простой доступ к событиям, и расширенное управление переменными\циклами\массивами, как в skripts, то все бы с Java пересели на ReActions - однозначно :)

И да, @fromgate, не делая ReActions более похожим на элементарные азы программирования (отказ от явных циклов, простеньких массивов, удобного разбиения "проекта" на файлы), мы не сможем реализовать все свои желания :)
 
Да меня просто пугает тот факт, что раньше все работало, а на новой версии - вот такая фигня, причем не понятно по какой причине не работает и по какому алгоритму все это проходит, чтобы знать на каком моменте что-то не так происходит. Это же не один активатор. Таких активаторов с плейсхолдером %argX% у меня большая куча и еще тележка.
 
Да меня просто пугает тот факт, что раньше все работало, а на новой версии - вот такая фигня, причем не понятно по какой причине не работает и по какому алгоритму все это проходит, чтобы знать на каком моменте что-то не так происходит. Это же не один активатор. Таких активаторов с плейсхолдером %argX% у меня большая куча и еще тележка.
Нужно инициализировать переменную до её использования. Создать переменную сразу как аргумент и потом проверить её существование\подставить невозможно.
 
Нужно инициализировать переменную до её использования. Создать переменную сразу как аргумент и потом проверить её существование\подставить невозможно.
Не понял. Аргумент же сразу при команде создается, верно? Смотри внимательно тот код, который я кидал тебе. Там VAR_SET=id:"переменная" value:%ARG3%
И все встает, то есть %arg3% - в строках var_set/var_inc/var_dec и пр. заменяется и все окей
Проблемы только когда %arg3% нужно представить в виде текста, в сообщении или на табличке. Пересмотри те куски кода, которые я кидал
Я понял алгоритм. После первого же использования (упоминания) %argX% - он удаляется. То есть допустим в этой строчке:
Код:
    - var_inc=id:donation value:%arg1%
    - var_player_inc=id:donation value:%arg1%
Общая переменная "donation" увеличится, а персональная уже нет, так как %arg1% был использован и перестает существовать. Не знаю, с чем это связано, надеюсь подправят (еще попробую другие версии поставить).
Приходится пользоваться вот таким костылём:
Код:
    - var_player_set=id:arg1 value:%arg1%
    - var_inc=id:donation value:%varp:arg1%
    - var_player_inc=id:donation value:%varp:arg1%
 
Здравствуйте ещё раз :о
Опять появилась проблема - при попытке ввести команду в консоль ошибка пишется.
Код:
  rgRent:
    override: false
    regex: true
    command: ((r|rg|region)(s|shop)) rent(\s+\S+){3,3}
    flags:
    - region_owner=world.%arg2%
    actions:
    - var_player_set=id:signId value:%arg2%
    - var_player_set=id:signTime value:%arg3%
    - var_player_set=id:signPrice value:%arg4%
    - execute=activator:rgRentExec
Код:
[Server thread/ERROR]: Could not pass event CommandEvent to ReActions v0.9.9/4
org.bukkit.event.EventException
   at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:310) ~[craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:502) [craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:487) [craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   at me.fromgate.reactions.event.EventManager.raiseCommandEvent(EventManager.java:212) [ReActions.jar:?]
   at me.fromgate.reactions.RAListener.onPlayerCommand(RAListener.java:316) [ReActions.jar:?]
   at sun.reflect.GeneratedMethodAccessor424.invoke(Unknown Source) ~[?:?]
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.7.0_147-icedtea]
   at java.lang.reflect.Method.invoke(Method.java:601) ~[?:1.7.0_147-icedtea]
   at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:306) [craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) [craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:502) [craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:487) [craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   at net.minecraft.server.v1_8_R3.PlayerConnection.handleCommand(PlayerConnection.java:1154) [craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   at net.minecraft.server.v1_8_R3.PlayerConnection.a(PlayerConnection.java:997) [craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   at net.minecraft.server.v1_8_R3.PacketPlayInChat.a(PacketPlayInChat.java:45) [craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   at net.minecraft.server.v1_8_R3.PacketPlayInChat.a(PacketPlayInChat.java:1) [craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   at net.minecraft.server.v1_8_R3.PlayerConnectionUtils$1.run(SourceFile:13) [craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) [?:1.7.0_147-icedtea]
   at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) [?:1.7.0_147-icedtea]
   at java.util.concurrent.FutureTask.run(FutureTask.java:166) [?:1.7.0_147-icedtea]
   at net.minecraft.server.v1_8_R3.SystemUtils.a(SourceFile:44) [craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   at net.minecraft.server.v1_8_R3.MinecraftServer.B(MinecraftServer.java:715) [craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   at net.minecraft.server.v1_8_R3.DedicatedServer.B(DedicatedServer.java:374) [craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   at net.minecraft.server.v1_8_R3.MinecraftServer.A(MinecraftServer.java:654) [craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   at net.minecraft.server.v1_8_R3.MinecraftServer.run(MinecraftServer.java:557) [craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   at java.lang.Thread.run(Thread.java:722) [?:1.7.0_147-icedtea]
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.isPlayerIsOwner(WGBridge6x.java:146) ~[?:?]
   at me.fromgate.reactions.externals.RAWorldGuard.isPlayerIsOwner(RAWorldGuard.java:128) ~[?:?]
   at me.fromgate.reactions.flags.FlagRegion.checkFlag(FlagRegion.java:45) ~[?:?]
   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.CommandActivator.activate(CommandActivator.java:97) ~[?:?]
   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.onCommandActivator(RAListener.java:416) ~[?:?]
   at sun.reflect.GeneratedMethodAccessor425.invoke(Unknown Source) ~[?:?]
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.7.0_147-icedtea]
   at java.lang.reflect.Method.invoke(Method.java:601) ~[?:1.7.0_147-icedtea]
   at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:306) ~[craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   ... 26 more
Вся проблема в флаге - даже если не подставлять %arg2%, или убрать world. ошибка остаётся.
Есть ли решение данной проблемы? Или какая-нибудь замена флагу?

ReActions v0.9.9/4
Spigot 1.8.8
 
Здравствуйте ещё раз :о
Опять появилась проблема - при попытке ввести команду в консоль ошибка пишется.
Код:
  rgRent:
    override: false
    regex: true
    command: ((r|rg|region)(s|shop)) rent(\s+\S+){3,3}
    flags:
    - region_owner=world.%arg2%
    actions:
    - var_player_set=id:signId value:%arg2%
    - var_player_set=id:signTime value:%arg3%
    - var_player_set=id:signPrice value:%arg4%
    - execute=activator:rgRentExec
Код:
[Server thread/ERROR]: Could not pass event CommandEvent to ReActions v0.9.9/4
org.bukkit.event.EventException
   at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:310) ~[craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) ~[craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:502) [craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:487) [craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   at me.fromgate.reactions.event.EventManager.raiseCommandEvent(EventManager.java:212) [ReActions.jar:?]
   at me.fromgate.reactions.RAListener.onPlayerCommand(RAListener.java:316) [ReActions.jar:?]
   at sun.reflect.GeneratedMethodAccessor424.invoke(Unknown Source) ~[?:?]
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.7.0_147-icedtea]
   at java.lang.reflect.Method.invoke(Method.java:601) ~[?:1.7.0_147-icedtea]
   at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:306) [craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) [craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:502) [craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:487) [craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   at net.minecraft.server.v1_8_R3.PlayerConnection.handleCommand(PlayerConnection.java:1154) [craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   at net.minecraft.server.v1_8_R3.PlayerConnection.a(PlayerConnection.java:997) [craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   at net.minecraft.server.v1_8_R3.PacketPlayInChat.a(PacketPlayInChat.java:45) [craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   at net.minecraft.server.v1_8_R3.PacketPlayInChat.a(PacketPlayInChat.java:1) [craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   at net.minecraft.server.v1_8_R3.PlayerConnectionUtils$1.run(SourceFile:13) [craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) [?:1.7.0_147-icedtea]
   at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) [?:1.7.0_147-icedtea]
   at java.util.concurrent.FutureTask.run(FutureTask.java:166) [?:1.7.0_147-icedtea]
   at net.minecraft.server.v1_8_R3.SystemUtils.a(SourceFile:44) [craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   at net.minecraft.server.v1_8_R3.MinecraftServer.B(MinecraftServer.java:715) [craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   at net.minecraft.server.v1_8_R3.DedicatedServer.B(DedicatedServer.java:374) [craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   at net.minecraft.server.v1_8_R3.MinecraftServer.A(MinecraftServer.java:654) [craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   at net.minecraft.server.v1_8_R3.MinecraftServer.run(MinecraftServer.java:557) [craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   at java.lang.Thread.run(Thread.java:722) [?:1.7.0_147-icedtea]
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.isPlayerIsOwner(WGBridge6x.java:146) ~[?:?]
   at me.fromgate.reactions.externals.RAWorldGuard.isPlayerIsOwner(RAWorldGuard.java:128) ~[?:?]
   at me.fromgate.reactions.flags.FlagRegion.checkFlag(FlagRegion.java:45) ~[?:?]
   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.CommandActivator.activate(CommandActivator.java:97) ~[?:?]
   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.onCommandActivator(RAListener.java:416) ~[?:?]
   at sun.reflect.GeneratedMethodAccessor425.invoke(Unknown Source) ~[?:?]
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.7.0_147-icedtea]
   at java.lang.reflect.Method.invoke(Method.java:601) ~[?:1.7.0_147-icedtea]
   at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:306) ~[craftbukkit.jar:git-Spigot-db6de12-18fbb24]
   ... 26 more
Вся проблема в флаге - даже если не подставлять %arg2%, или убрать world. ошибка остаётся.
Есть ли решение данной проблемы? Или какая-нибудь замена флагу?

ReActions v0.9.9/4
Spigot 1.8.8
Активатор исполняется для игрока, но не консоли.
 
Активатор исполняется для игрока, но не консоли.

Может недопоняли.
Вписываю на сервере(от лица игрока) команду /rs rent yolo 5d 500, после чего в саму консоль пишется ошибка, а активатор не выполняется вообще(ни реакция, ни действие). Лечится удалением флага, но без этого флага "всё очень плохо".
А может и я недопонял :с
 
Может недопоняли.
Вписываю на сервере(от лица игрока) команду /rs rent yolo 5d 500, после чего в саму консоль пишется ошибка, а активатор не выполняется вообще(ни реакция, ни действие). Лечится удалением флага, но без этого флага "всё очень плохо".
А может и я недопонял :с
Когда я пытался таким образом выполнить команду через sudo из Essentials - не пропускало. Ну и, конечно, так как я не работал с этим флагом, остаётся возможность его некорректной работы.
 
Каким-то образом можно через активатор ITEM_CONSUME пополнить единицы "голода"? Я нашел только восстановление здоровья, но это не то.
Просто хочу добавить новую еду с: Сторонние плагины хороши, но там нет возможности хорошей кастомизации или хотя бы локализации, а хочется все на русском, ну а желательно чтобы можно было еще и управлять, потому и хочу реализовать через ReActions
 
Каким-то образом можно через активатор ITEM_CONSUME пополнить единицы "голода"? Я нашел только восстановление здоровья, но это не то.
Просто хочу добавить новую еду с: Сторонние плагины хороши, но там нет возможности хорошей кастомизации или хотя бы локализации, а хочется все на русском, ну а желательно чтобы можно было еще и управлять, потому и хочу реализовать через ReActions
Пока что только так:
hqdefault.jpg
 
Пока что только так:
hqdefault.jpg
Ну почему же, смотря на какой версии сервер)
Есть такой сервер - wealth the middle agges (Корвин держит), так на нем при поедании еды дается эффект сытости) Сервер на Spigot 1.8.8
Но при этом такое было и на 1.7.2-1.8
Возможно есть такой эффект (сытость) на всех версиях, я просто точно в эффектах не заблуждался и не сталкивался с ними вообще)
Вам стоит поискать!
 
Ну почему же, смотря на какой версии сервер)
Есть такой сервер - wealth the middle agges (Корвин держит), так на нем при поедании еды дается эффект сытости) Сервер на Spigot 1.8.8
Но при этом такое было и на 1.7.2-1.8
Возможно есть такой эффект (сытость) на всех версиях, я просто точно в эффектах не заблуждался и не сталкивался с ними вообще)
Вам стоит поискать!
У меня как раз 1.8.8
Но чет найти никак не могу.
И эффект сытости и восстановление единиц голода разные темы же, не?
Нашел. Эффект номер 23 - Насыщение. А говорили нету)
По английски SATURATION
Нужна еще помощь с:
Помогите, как сделать так, чтобы блок не ставился? Мб даже не через Reactions, но не хочу отдельный топик создавать. Соль в том, что этот блок - кастомная голова, а все головы запрещать ставить - не айс. Хелп
 
Назад
Верх