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

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

1.5.2(собирал с ним). В оригинальном 0.4.2 тоже не работает
В 1.6.х - жизнь это double, а в 1.5.2 - это int. Соответственно нестыковка. По идее в логе сервера об этом пишется сообщение.

так вы мне помножите с квестом ?
Слушайте, ну это же не квестовый плагин.
Если Вам нужно сделать вознаграждение за какой-то предмет, то вам нужно:
1. Создать активатор (допустим, кнопку)
2. Прописать флаг - наличие предмета в руках или инвентаре
3. Удалить предмет, выдать награду
 
В 1.6.х - жизнь это double, а в 1.5.2 - это int. Соответственно нестыковка. По идее в логе сервера об этом пишется сообщение.
Ну я же говорю, я пересобрал из сорцов, поменял дублы на инты, но ничего. Жизни не выдаются, в консоли ничего.
 
В 1.6.х - жизнь это double, а в 1.5.2 - это int. Соответственно нестыковка. По идее в логе сервера об этом пишется сообщение.


Слушайте, ну это же не квестовый плагин.
Если Вам нужно сделать вознаграждение за какой-то предмет, то вам нужно:
1. Создать активатор (допустим, кнопку)
2. Прописать флаг - наличие предмета в руках или инвентаре
3. Удалить предмет, выдать награду
Можешь видео по этой теме сделать ?
 
Заметил такую штуку:

действие - ITEM_REMOVE не воспринимает предметы с именами.

т.е. например

- ITEM_REMOVE=&aПервый_Ключ$369 / не работает

а

- ITEM_REMOVE=369 работает

, что создает ряд очевидных проблем.
-------
хотя если подумать, то проверка в руке по имени работает, а убрать на другое не получится так быстро. Так что может быть это и не проблема вовсе. но в любом случае решил рапортнуть.
репорт намбер 2:

react run [activator] region:[region] delay:[10]

какое бы число не было в delay, выполняется всегда с задержкой в 1 тик


далее, пробуем нативный вариант из под кнопки, через

- EXECUTE=exec:[activator] region:[region] delay:1s

в этом случае не работает регион, активатор выполняется всего 1 раз

(конечная цель была в том, что по нажатию на кнопку выполняется активатор типа Exec для каждого игрока врегионе)
-----------------------------

если выполнить из консоли
react run A8_Wave1 region:a8_main delay=10s
то плюет этим
http://pastebin.com/qcg3uMnE

если выполнить просто react run A8_Wave1 region:a8_main
то выполняет активатор, но в консоль пишет, что мол failed
 
Последнее редактирование:
ValeraSTK, с предметами уже будет исправлено в следующей версии. Спасибо Laser'у - там я обкатал на поименованных "батарейках".

С запускаемыми регионами надо будет подумать.
 
ValeraSTK, с предметами уже будет исправлено в следующей версии. Спасибо Laser'у - там я обкатал на поименованных "батарейках".

С запускаемыми регионами надо будет подумать.
в догонку к этому не смог заставить работать - BLOCK_SET block:2:1 loc:World6,-557,58,-57
 
v0.4.3
https://www.dropbox.com/s/nwp1tn5wsq4v86s/ReActions.jar

  • Новый активатор JOIN (возможный, доп.параметр - FIRST). Вызывается при заходе игрока на сервер. Если нужно выполнять активатор для игроков, которые ранее на сервере не появлялись используем модификатор FIRST: /react add JOIN <название активатора> FIRST
  • Новый активатор MOBCLICK срабатывает при клике по мобу. /react add mobclick <название активатора> <название_моба$тип>
  • В действии mob - новые параметры: run:<активатор> <rundelay:время> - запускает активатор типа EXEC после убийства данного моба каким-либо игроком.
  • block_set 0 теперь работает
  • Новый флаг LIGHT_LEVEL. Проверяет уровень освещенности у игрока
  • Переделан активатор EXECUTE. Теперь его выполнение командой /react run и из другого активатора происходит однотипно: /react run activator:<название> player:<игрок> region:<регион> delay:<время> region - соответственно регион, в котором должны быть игроки, по отношению к которым выполняется активатор если player и регион не указаны, то происходит попытка выполнить активатор от имени того, кто его инициировал. Но если это консоль ничего не произойдёт. Т.е. для консоли обязательно указывать или player:<имя игрока> или region:<название региона>
 
Доброго времени суток! Хотел бы узнать, возможно ли сделать так чтобы, если стоишь на рельсах (в определённом регионе) то через некоторое время тебя убивало, а если едешь на вагонетке по рельсам (в регионе) то с тобой ниего не будет происходить. Тоесть, своего рода флаг сидения в вагонетках.
 
olegikoligik, ну текущими средствами нельзя. Но добавить флаг проверки находится ли игрок в вагонетке или нет, я думаю можно будет.
 
olegikoligik, ну текущими средствами нельзя. Но добавить флаг проверки находится ли игрок в вагонетке или нет, я думаю можно будет.

Если такое возможно то сделайте в следущем обновлении пожалуйста.Тогда для меня ваш плагин станет самым лучшим. Даже лучше world guard и world edit.
 
https://www.dropbox.com/s/nwp1tn5wsq4v86s/ReActions.jar
Пока только фикс флага item_inventory (после небольшого издевательства над кодом он не понимал строчных букв в названии предмета)
Почему бы тебе не сделать флаг и действие "js"? Тогда не пришлось бы добавлять каждый раз по одному.
 
Получается с помощью активатора "Kill" можно запилить систему наград для игроков за убийство другого игрока?
 
Кажется, все таки я нашел проблему с этим флагом.

Это было.. мудрено.

Флаг item_inventory не возвращает true, если вещь это кожанная бронь и она покрашена.

Ээээ... это очень странно. Откуда итем берётся? Кто его создает? Покажи сам флаг.
Просто проверка происходит так: сначал сравнивается имя, потом id. Если в строке указана data/durability то сравнивается и оно. Для брони и оружия (т.е. то что "ломается") нельзя указывать data - иначе нужно будет доломать предмет до указанного состояния ;)
Почему бы тебе не сделать флаг и действие "js"? Тогда не пришлось бы добавлять каждый раз по одному.
Честно говоря не думал об этом. Но... вводить возможность написания скриптовых флагов/действий/активаторов, меня не вдохновляет честно говоря.
Разве что для того чтобы разобраться как это вообще делается ;)

Получается с помощью активатора "Kill" можно запилить систему наград для игроков за убийство другого игрока?
Вобщем-то да. Может не совсем гибко, но попробовать можно.
Очередная добавочка:
https://www.dropbox.com/s/nwp1tn5wsq4v86s/ReActions.jar

- Добавлен флаг WALK_BLOCK - параметр - тип блока. Ищет данный блок в ногах или под ногами. Возвращает true если находит.
- Флаг STATE теперь содержит дополнительные варианты расширяющие состояние "VEHICLE": VEHICLE_BOAT, VEHICLE_MINECART, VEHICLE_HORSE и VEHICLE_PIG
 
Если бы у меня была возможность пожать вам руку, сэр, это была бы честь для меня!:)
Большое спасибо, честно говоря не ожидал что вы сделаете это так быстро да и вообще сделаете. Буду продолжать следить за обновлениями. Большое вам спасибо!
 
Ещё один апдейт:
https://www.dropbox.com/s/nwp1tn5wsq4v86s/ReActions.jar
Добавлено:
  • Флаг DIRECTION позволяет определять в каком направлении (NORTH, NORTEAST, NORTHWEST, SOUTH, SOUTHEAST, SOUTHWEST, EAST, WEST) смотрит игрок:
Код:
# Пример активатора, который "прыгает" игрока на восток
# при этом при заходе в регион игрок и должен смотреть на восток, иначе он ничего не заметит
rgenter:
  jumper:
    region: jumper
    flags:
    - DIRECTION=east
    actions:
    - MESSAGE=&5Jump east
    - VELOCITY=2.7,1.3,0
    reactions: []

  • В активаторы PVPKILL и PVPDEATH добавлен плейсхолдер %targetplayer%. И там и там это - имя второго игрока участвующего в "активаторе". Т.е. в PVPKILL - это жертва, в PVPDEATH это убийца. Т.е. его можно использовать в сообщении, в качестве параметра команды (ban %targetplayer%) или в качестве значения параметра player для активатора EXECUTE (т.е. фактически даёт возможность более полно отрабатывать события).
Код:
# Пример использования плейсхолдера %targetplayer%
pvpkill:
  pvpkill:
    flags: []
    actions:
    - MESSAGE=&6PVPKILL! %targetplayer% killed by %player%  %curtime%
    - EXECUTE=activator:kill_activator player:%targetplayer%

v0.5.0
  • Переименованы активаторы. Файлы активаторов будут автоматически обновлены перед первой загрузкой. На всякий случай, рекомендую сделать бэкап директории плагина перед обновлением. В старой версии новые обновленные файлы работать не будут.
  • Новые активаторы: PVP_DEATH и PVP_RESPAWN (бывший pvpdeath). PVP_DEATH отрабатывает при смерти игрока в PVP (можно сказать, что это PVP_KILL, но по отношению к жертве). PVP_RESPAWN это тот же PVP_DEATH но отрабатывает при респавне убитого игрока.
  • Новый активатор: MOBCLICK отрабатывает когда игрока кликает правой кнопкой мыши по мобу. При описании активатора надо будет задать тип моба (поименованные мобы тоже поддерживаются). Например: /react add mobclick <имя активатора> &6Super_Cow$COW
  • Новый активатор: JOIN отрабатывает при входе игрока на сервер. Если при создании активатора указать доп.параметр "FIRST", то этот активатор будет распространяться только на тех кто заходит на сервер впервые.
  • Активатор EXEC и действие EXECUTE немного оптимизированы. Теперь запуск активатора командой (/react run) и действием EXECUTE используют одинаковые параметры: activator:<activator name> delay:<time> region:<region name> player:<player name>
  • Новое действие BLOCK_SET. Ставим блок в заданной точке. Параметры: block:<block type:data> loc:<location>
  • Добавлены новые параметры для действия MOB_SPAWN: run:<exec-активатор> и rundelay:<время>. При указании этих параметров, активатор <exec-активатор> будет выполнен для игрока, который убьёт данного моба.
  • Новый флаг: BIOME <biome> — проверяет находится ли игрок в заданном биоме
  • Новый флаг: DIRECTION <NORTH, NORTHEAST, NORTHWEST, SOUTH, SOUTHEAST, SOUTHWEST, EAST, WEST> — проверяет смотрит ли игрок в заданном направлении.
  • Новый флаг: LIGHT_LEVEL <0...20> — проверяет уровень освещения вокруг игрока
  • Новый флаг: WALK_BLOCK <id[:data]> — проверяет блок по которому идёт игрок.
  • Флаг STATE был расширен дополнительными параметрами: VEHICLE_MINECART, VEHICLE_BOAT, VEHICLE_PIG, VEHICLE_HORSE.
  • Теперь предметы во всех операциях выдача, сравнения или изъятия поддерживают имя. Так что теперь IRON_SWORD и IRON_SWORD с именем "Super sword" это разные вещи :)
http://dev.bukkit.org/media/files/754/55/ReActions.jar
В связи с тем, что есть риск того, что после очередного обиженного-забаненного, возникнет ситуация с отключением форума методом ддоса, я решил русскоязычное описание плагинов вести также на dev.bukkit.org. Благо есть такая возможность. Начну с ReActions, пока описание не полное, но уже есть:

Описание плагина
Описание активаторов
 
Последнее редактирование:
Назад
Верх