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

Можно ли создавать НИПа из Custom NPC ? На активаторы MOB_KILL (и подобные) видел, а вот на MOB_SPAWN не хочет спавнить, если юзануть тип создаваемой утвари PLAYER.
 
Можно ли создавать НИПа из Custom NPC ? На активаторы MOB_KILL (и подобные) видел, а вот на MOB_SPAWN не хочет спавнить, если юзануть тип создаваемой утвари PLAYER.

Создавать можно только стандартных мобов.
 
Пытался создать моба типа Guardian и ничего не происходило :D
Хотя, ифриты спамились.
 
@fromgate, интересная дилемма:
Код:
  Mute-2-Adm:
    mask: (Игрок \w+ заткнут на n.*|Ты снова можешь разговаривать.)
    type: REGEX
    source: CHAT_OUTPUT
    flags: []
    actions:
    - var_player_set=id:Mute value:0 player:%word2%
    - cancel_event=true
    - 'message=player:all &6[&3PM&6] (&7%player%&6): Чат игрока &e%word2%&6 разморожен.'
    reactions: []
Из комбинации берётся второе слово. Однако, во втором случае нужно использовать %player%, но как в одном активаторе это сделать? Может, внедрить в регулярки "варианты-параметры"? А их указывать через символ в плейсхолдере.
Как насчёт отмены установки блока?
Код:
ITEM_CLICK:
  Mute-Sign:
    item: "amount:1 regex:false data:0 type:SIGN"
    flags:
    - var_player_compare=id:Mute value:1
    actions:
    - cancel_event=true
    - message=&6[&3ExtraMute&6] Ваш чат и возможность писать сейчас заморожены.
    reactions: []

Действие изменения параметров существующего предмета?
 
Последнее редактирование:
угу, даже иссушителя нельзя:(

Это попробую побороть. Раньше был баг с лошадьми (не у меня - в бакките, но победить удалось ;))
Из комбинации берётся второе слово. Однако, во втором случае нужно использовать %player%, но как в одном активаторе это сделать? Может, внедрить в регулярки "варианты-параметры"? А их указывать через символ в плейсхолдере.

Не совсем понял, что имеется в виду.

Действие изменения параметров существующего предмета?
В работе. ;)
Пытался создать моба типа Guardian и ничего не происходило :D
Хотя, ифриты спамились.


угу, даже иссушителя нельзя:(
Теперь можно: http://adf.ly/1K0nlW
 
Предлагаю добавить в активатор message вывод сообщения в чат отдельному игроку...
К примеру я пытался привязать к сообщению AntiRelog "вы в бою" активатор , не получилось
 
Последнее редактирование:
Предлагаю добавить в активатор message вывод сообщения в чат отдельному игроку...
К примеру я пытался привязать к сообщению AntiRelog "вы в бою" активатор , не получилось
Код:
 '003':
    mask: 'активатор'
    type: END
    source: ALL
    actions: - cmd_console=kick kaban"]
  '001':
    mask: '123'
    type: END
    source: ALL
    actions:
    - cmd_console=kick kaban

Поясните, что именно нужно.
Источник (source) "CHAT_OUTPUT" - это как раз вывод сообщения в чат.
Активатор запускается относительно всех игроков, которые получили это сообщение.
 
Поясните, что именно нужно.
Источник (source) "CHAT_OUTPUT" - это как раз вывод сообщения в чат.
Активатор запускается относительно всех игроков, которые получили это сообщение.
К примеру
Создал активатор
'001':
mask: '123'
type: END
source: ALL
actions:
- cmd_console=kick kaban
Если выводить сообщение 123 в общий чат к примеру через сервер то активатор срабатывает.
\
А если ,в моём случае плагин AntiRelog, выводит сообщение 123 только для учасников пвп (то есть не всех игроков)то активатор не срабатывает .
Для проверки я еще создал кнопку с сообщение 123 , активатор не сработал
\
То есть было бы не плохо что бы активатор можно было вызвать при отправке сообщения отдельному игроку(или нескольким игрокам)
 
Последнее редактирование:
То есть было бы не плохо что бы активатор можно было вызвать при отправке сообщения отдельному игроку(или нескольким игрокам)
Используй личные переменные
Код:
Mute-2-Adm:
    mask: (Игрок \w+ заткнут на n.*|Ты снова можешь разговаривать.)
    type: REGEX
    source: CHAT_OUTPUT
    flags: []
    actions:
    - var_player_set=id:Mute value:0 player:%word2%
    - cancel_event=true
    - 'message=player:all &6[&3PM&6] (&7%player%&6): Чат игрока &e%word2%&6 разморожен.'
    reactions: []
Здесь отлов сообщения по регулярке, в которой есть два варианта на что реагировать. В первом случае мне нужно использовать в действии MESSAGE плейсхолдер второго слова, что означало бы ник игрока. Во втором - в том же действии - %player%.
@fromgate, очень часто нужно центрировать сообщение. Добавите такую функцию?
Почему локации добавляются беспорядочно? Ни по алфавиту, ни по времени создания...
 
@fromgate, очень часто нужно центрировать сообщение. Добавите такую функцию?
Это можно будет добавить, когда доберусь до собственного пагинатора.


Почему локации добавляются беспорядочно? Ни по алфавиту, ни по времени создания...

Ну.. так сортируется благодаря алгоритму работы ряда классов в Java. Собственно, никогда этим вопросом не озадачивался. Будет возможность - гляну.
 
Нужен параметр, позволяющий отключить телепортацию игрока на центр блока в отдельном действии TP.
Трабл:
upload_2015-7-4_0-6-19.png
Теперь сравнение переменных на больше\меньше проходит не включая сравниваемое число?
Активатор REGION_LEAVE не работает при смерти игрока и его возрождении вне региона. Можно пофиксить таймером c EXEC, но не очень удобно. Исправите?
Почему не работает вызов EXEC'a? Может, из-за дробного вывода числа при счёте?
Код:
REGION_ENTER:
  Dropper-Finish-LIMITED:
    region: world_the_end.dropper-finish
    flags:
    - var_player_compare=id:Dropper-Game_Type value:LIMITED
    - var_player_LOWER=id:Dropper-LVL value:31
    - var_player_GREATER=id:Dropper-LVL value:-1
    actions:
    - var_player_inc=id:Dropper-LVL value:1
    - message=&6[&3Dropper&6]&7 Ваш уровень:&e %varp:Dropper-LVL%
    - execute=activator:Dropper-TP-LVL-%CALC:%varp:Dropper-LVL%+1% player:{player:%player%}
    reactions: []
EXEC:
  Dropper-TP-LVL-1:
    flags:
    - var_player_compare=id:Dropper-Game_Type value:LIMITED
    - var_player_compare=id:Dropper-LVL value:1
    actions:
    - TP=loc:Dropper-%CALC:%varp:Dropper-LVL%+1%
    - message=EXEC Dropper-TP-LVL-1 вызван.
    reactions: []

А как скоро будет возможность сохранить\вернуть весь инвентарь? Или можно как-то записать все предметы, которыми обладает игрок, в одну переменную, а потом все разом выдать?
Нужен ещё активатор, который реагировал бы на снятие предмета со слота брони.
@fromgate, почему никакого результата? //Параграф нужен вместо амперсанда...
Код:
ITEM_WEAR:
  Dropper-Gold-Armour-2:
    item: 'enchantments:DURABILITY:3 regex:false name:{&6Сет святой брони} type:GOLD_CHESTPLATE'
    flags: []
    actions:
    - potion=type:DAMAGE_RESISTANCE lvl:4 time:3s
    reactions: []
upload_2015-7-4_4-33-44.png
И тут вместо эффектов - локации: http://reactions.fromgate.ru/potion.htm
А можно инвертировать селектор?
Можно ли регистрировать сообщения, которые отправляют игроку моды? Напоминание оптифайна об обновлении, например? Или это к серверу и плагинам никаким боком не встаёт?
Активатор PLAYER_DAMAGE с типами урона и вытекающими плейсхолдерами? :whistle:
 
Последнее редактирование:
@fromgate, ошибочки... (На чужом сервере. У меня на туториале такого нет...)
Код:
2015-07-04 10:24:56 [SEVERE] Could not pass event EntityDamageByEntityEvent to ReActions v0.9.5/7
org.bukkit.event.EventException
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:427)
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62)
    at org.bukkit.plugin.TimedRegisteredListener.callEvent(TimedRegisteredListener.java:30)
    at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:478)
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:463)
    at org.bukkit.craftbukkit.v1_5_R3.event.CraftEventFactory.callEvent(CraftEventFactory.java:94)
    at org.bukkit.craftbukkit.v1_5_R3.event.CraftEventFactory.callEntityDamageEvent(CraftEventFactory.java:398)
    at org.bukkit.craftbukkit.v1_5_R3.event.CraftEventFactory.handleEntityDamageEvent(CraftEventFactory.java:423)
    at net.minecraft.server.v1_5_R3.EntityLiving.damageEntity(EntityLiving.java:691)
    at net.minecraft.server.v1_5_R3.EntityAnimal.damageEntity(SourceFile:119)
    at net.minecraft.server.v1_5_R3.EntityWolf.damageEntity(EntityWolf.java:178)
    at net.minecraft.server.v1_5_R3.EntityHuman.attack(EntityHuman.java:874)
    at net.minecraft.server.v1_5_R3.PlayerConnection.a(PlayerConnection.java:1124)
    at net.minecraft.server.v1_5_R3.Packet7UseEntity.handle(SourceFile:36)
    at org.spigotmc.netty.NettyNetworkManager.b(NettyNetworkManager.java:215)
    at net.minecraft.server.v1_5_R3.PlayerConnection.d(PlayerConnection.java:115)
    at net.minecraft.server.v1_5_R3.ServerConnection.b(SourceFile:35)
    at org.spigotmc.MultiplexingServerConnection.b(MultiplexingServerConnection.java:72)
    at net.minecraft.server.v1_5_R3.MinecraftServer.r(MinecraftServer.java:583)
    at net.minecraft.server.v1_5_R3.DedicatedServer.r(DedicatedServer.java:227)
    at net.minecraft.server.v1_5_R3.MinecraftServer.q(MinecraftServer.java:472)
    at net.minecraft.server.v1_5_R3.MinecraftServer.run(MinecraftServer.java:404)
    at net.minecraft.server.v1_5_R3.ThreadServerApplication.run(SourceFile:573)
Caused by: java.lang.NoSuchMethodError: org.bukkit.event.entity.EntityDamageEvent.getDamage()D
    at me.fromgate.reactions.event.EventManager.raiseMobDamageEvent(EventManager.java:427)
    at me.fromgate.reactions.RAListener.onMobDamageByPlayer(RAListener.java:247)
    at sun.reflect.GeneratedMethodAccessor213.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:425)
    ... 22 more
 
Последнее редактирование:
Вопрос с таймером:

Код:
SERVER:
  timertest:
    paused: 'false'
    activator: exec123
    time: '0/10 38 11 ? * *'
    player: all

Насколько я понимаю, этот код должен запускать таймер в 11:38 каждые 10 секунд. Но он не работает.

А если вместо 11 часов всунуть * (т.е., будет 0/10 38 * ? * *), то срабатывает :/

В чём я не прав?
 
Вопрос с таймером:

Код:
SERVER:
  timertest:
    paused: 'false'
    activator: exec123
    time: '0/10 38 11 ? * *'
    player: all

Насколько я понимаю, этот код должен запускать таймер в 11:38 каждые 10 секунд. Но он не работает.

А если вместо 11 часов всунуть * (т.е., будет 0/10 38 * ? * *), то срабатывает :/

В чём я не прав?
Формат такой: * * * * * ?
Насчёт запуска через несколько часов и минут - не могу точно сказать.
 
@fromgate, ошибочки... (На чужом сервере. У меня на туториале такого нет...)
Код:
2015-07-04 10:24:56 [SEVERE] Could not pass event EntityDamageByEntityEvent to ReActions v0.9.5/7
org.bukkit.event.EventException
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:427)
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62)
    at org.bukkit.plugin.TimedRegisteredListener.callEvent(TimedRegisteredListener.java:30)
    at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:478)
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:463)
    at org.bukkit.craftbukkit.v1_5_R3.event.CraftEventFactory.callEvent(CraftEventFactory.java:94)
    at org.bukkit.craftbukkit.v1_5_R3.event.CraftEventFactory.callEntityDamageEvent(CraftEventFactory.java:398)
    at org.bukkit.craftbukkit.v1_5_R3.event.CraftEventFactory.handleEntityDamageEvent(CraftEventFactory.java:423)
    at net.minecraft.server.v1_5_R3.EntityLiving.damageEntity(EntityLiving.java:691)
    at net.minecraft.server.v1_5_R3.EntityAnimal.damageEntity(SourceFile:119)
    at net.minecraft.server.v1_5_R3.EntityWolf.damageEntity(EntityWolf.java:178)
    at net.minecraft.server.v1_5_R3.EntityHuman.attack(EntityHuman.java:874)
    at net.minecraft.server.v1_5_R3.PlayerConnection.a(PlayerConnection.java:1124)
    at net.minecraft.server.v1_5_R3.Packet7UseEntity.handle(SourceFile:36)
    at org.spigotmc.netty.NettyNetworkManager.b(NettyNetworkManager.java:215)
    at net.minecraft.server.v1_5_R3.PlayerConnection.d(PlayerConnection.java:115)
    at net.minecraft.server.v1_5_R3.ServerConnection.b(SourceFile:35)
    at org.spigotmc.MultiplexingServerConnection.b(MultiplexingServerConnection.java:72)
    at net.minecraft.server.v1_5_R3.MinecraftServer.r(MinecraftServer.java:583)
    at net.minecraft.server.v1_5_R3.DedicatedServer.r(DedicatedServer.java:227)
    at net.minecraft.server.v1_5_R3.MinecraftServer.q(MinecraftServer.java:472)
    at net.minecraft.server.v1_5_R3.MinecraftServer.run(MinecraftServer.java:404)
    at net.minecraft.server.v1_5_R3.ThreadServerApplication.run(SourceFile:573)
Caused by: java.lang.NoSuchMethodError: org.bukkit.event.entity.EntityDamageEvent.getDamage()D
    at me.fromgate.reactions.event.EventManager.raiseMobDamageEvent(EventManager.java:427)
    at me.fromgate.reactions.RAListener.onMobDamageByPlayer(RAListener.java:247)
    at sun.reflect.GeneratedMethodAccessor213.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:425)
    ... 22 more

У тебя наверное, более ранняя версия плагина ;) Исправил, пусть перекачает девбилд (0.9.5/9).
 
У тебя наверное, более ранняя версия плагина ;) Исправил, пусть перекачает девбилд (0.9.5/9).
То же самое:
Код:
2015-07-04 11:14:25 [SEVERE] Could not pass event EntityDamageByEntityEvent to ReActions v0.9.5/9
org.bukkit.event.EventException
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:427)
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62)
    at org.bukkit.plugin.TimedRegisteredListener.callEvent(TimedRegisteredListener.java:30)
    at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:478)
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:463)
    at org.bukkit.craftbukkit.v1_5_R3.event.CraftEventFactory.callEvent(CraftEventFactory.java:94)
    at org.bukkit.craftbukkit.v1_5_R3.event.CraftEventFactory.callEntityDamageEvent(CraftEventFactory.java:398)
    at org.bukkit.craftbukkit.v1_5_R3.event.CraftEventFactory.handleEntityDamageEvent(CraftEventFactory.java:423)
    at net.minecraft.server.v1_5_R3.EntityLiving.damageEntity(EntityLiving.java:691)
    at net.minecraft.server.v1_5_R3.EntityMonster.damageEntity(EntityMonster.java:39)
    at net.minecraft.server.v1_5_R3.EntityHuman.attack(EntityHuman.java:874)
    at net.minecraft.server.v1_5_R3.PlayerConnection.a(PlayerConnection.java:1124)
    at net.minecraft.server.v1_5_R3.Packet7UseEntity.handle(SourceFile:36)
    at org.spigotmc.netty.NettyNetworkManager.b(NettyNetworkManager.java:215)
    at net.minecraft.server.v1_5_R3.PlayerConnection.d(PlayerConnection.java:115)
    at net.minecraft.server.v1_5_R3.ServerConnection.b(SourceFile:35)
    at org.spigotmc.MultiplexingServerConnection.b(MultiplexingServerConnection.java:72)
    at net.minecraft.server.v1_5_R3.MinecraftServer.r(MinecraftServer.java:583)
    at net.minecraft.server.v1_5_R3.DedicatedServer.r(DedicatedServer.java:227)
    at net.minecraft.server.v1_5_R3.MinecraftServer.q(MinecraftServer.java:472)
    at net.minecraft.server.v1_5_R3.MinecraftServer.run(MinecraftServer.java:404)
    at net.minecraft.server.v1_5_R3.ThreadServerApplication.run(SourceFile:573)
Caused by: java.lang.NoSuchMethodError: org.bukkit.event.entity.EntityDamageEvent.setDamage(D)V
    at me.fromgate.reactions.event.EventManager.raiseMobDamageEvent(EventManager.java:431)
    at me.fromgate.reactions.RAListener.onMobDamageByPlayer(RAListener.java:247)
    at sun.reflect.GeneratedMethodAccessor610.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:425)
    ... 21 more
 
Формат такой: * * * * * ?
Насчёт запуска через несколько часов и минут - не могу точно сказать.
Уже пробовал. Как только я указываю третье значение слева (по идее, это часы) - не работает.

Кто что может подсказать?
 
Назад
Верх