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

@Lyosha12
Код:
  rmvtest:
    override: true
    regex: false
    command: cmd:rmvtest
    actions:
    - var_player_set=id:rmvtest value:{%PLAYER_ITEM_HAND%}
    - message=%PLAYER_ITEM_HAND%
    - ITEM_REMOVE=%varp:rmvtest%

Вот это работае до "ITEM_REMOVE". Хотя странно, с ITEM_REMOVE буду бороться.

Подстановка PLAYER_ITEM_HAND работает только в активаторах. Т.е. на этапе ввода команды - нет. Хотя, пожалуй, /ra set var как раз там команда где плейсхолдеры тоже должны подставляться.
 
Доброго времени! Можно ли каким-то образом сделать подписанную книгу с текстом, чтобы она была предметом?
 
@Astrogen
Можно в новой версии:
type:WRITTEN_BOOK book-title:{The book of Test} amount:1 book-pages:{Line1&z&0Line2&z&z&0Line4&z&z&z&0Line7&z&z&z&z&z&z&z&0LineX\nPage2Line1&z&0Page2Line2&z&z&z&0Page2Line5\nPage3Line1} book-author:fromgate

Здесь: &z - разделитель строк (в оригинальной книге используется сочетание - &0\n, я в своем формате взял &z - чтобы избежать путаницы);
\n - разделитель между страницами
Единственное эта версия пока не рекомендуется для "живых" серверов. Она пока в стадии допиливания.
 
Спасибо. Подождем :) Это очень интересно для сюжетных веток
 
Если говорить о том, что я делаю - я уже давно ничего не делаю ;) Я уже пару лет безсерверный ;)
Я бы с радостью пригласил присоединится к моему проекту, но что то мне подсказывает, что ответ будет отрицательным ;)
 
@Korvinius
Ну как бы да. Времени нет, а посредством ReActions и других плагинов я связан со многими проектами ;)
 
Уважаемый @fromgate! я правильно понял из вышесказанного, что если я в данный момент поменяю свой 0.9.4/3 на последнюю версию - мне придется переделывать все активаторы, действия и реакции? Я понимаю, что отрываю от работы, но нельзя ли перечислить коротко - что несовместимо (или ткнуть меня носом в пост, если я пропустил). Спасибо.
 
@Astrogen
Придётся менять почти всё что касается предметов.
Если где-то была выдача предметов - возможно она останется работать.
Но вот если была проверка (а это значит и удаление тоже) - однозначно придётся переделывать.
Выше я уже в разных сообщениях частично описывал будет формат описания предметов.

Ну а позднее я сделаю полное описание чего поменялось и что нужно будет переделать.

Вообще я надеялся сохранить полную совместимость, но понял с этим будет так много возни, что лучше за это не браться.
@Lyosha12
0.9.4/29
https://dl.dropboxusercontent.com/u/64799811/ReActions/ReActions.jar

- Вроде поборол удаление предметов.
- Чтобы избежать того, то предмет сохраненный в переменную потому не поддается проверке или удалению (это в случае использования управляющих символов), в строку полученную на основе реального предмета добавляется параметр regex=false.
Этот параметр влияет только на то как эта строка будет потом сравниваться с существующим предметом. Если regex=true - то на основе регулярного выражения. Если regex=false то будет сравниваться построчно (игнорируя регистр).
 
Предметов на проверке у меня пока что не так много - в основном телепортеры, благо занимаюсь архитектурой. Только дроп с 3-х монстров и проверка его наличия в инвентаре. Задам вопрос по другому: если сейчас поменять на текущую бету - в дальнейшем планируются еще глобальные изменения синтаксиса? Или перестройки в данный момент будет достаточно до релиза?
 
Предметов на проверке у меня пока что не так много - в основном телепортеры, благо занимаюсь архитектурой. Только дроп с 3-х монстров и проверка его наличия в инвентаре. Задам вопрос по другому: если сейчас поменять на текущую бету - в дальнейшем планируются еще глобальные изменения синтаксиса? Или перестройки в данный момент будет достаточно до релиза?

Глобальные изменения (если они будут) будут только после этого (грядущего) релиза. Сейчас надо вылизать всё что касается работы с новым форматом описания предметов.
 
Последнее редактирование:
Вот теперь и меч Пепла работает, и удаление предмета. Однако, броня не удаляется из слотов брони...

Потому что этого я не менял. Как думаешь, как лучше сделать - добавить поиск предмета в броне-слотах item_remove_inventory или лучше сделать отдельное действие - item_unwear? Во-втором случае можно сделать способ удаления - удалить/переложить в инвентарь/выбросить. Всё-таки это своеобразное действие и цель у item_remove_inventory может быть немного другая.
 
Потому что этого я не менял. Как думаешь, как лучше сделать - добавить поиск предмета в броне-слотах item_remove_inventory или лучше сделать отдельное действие - item_unwear? Во-втором случае можно сделать способ удаления - удалить/переложить в инвентарь/выбросить. Всё-таки это своеобразное действие и цель у item_remove_inventory может быть немного другая.
Все идеи хороши. Однако, для начала нужно поправить саму суть действия удаления предмета из инвентаря. После можно заняться апгрейдом.

Флаг наличия предмета в слотах брони (даже не брони) - давно предлагали.
Перекладывать броню в инвентарь или выбрасывать её - не менее хорошая идея.
Так же стоило бы наряду с этим реализовать помещение предмета в слот брони при выдаче\попадании его в инвентарь.
 
Однако, для начала нужно поправить саму суть действия удаления предмета из инвентаря.

Ну вроде как работает. Или у тебя какие-то проблемы с этим возникли?
 
Ну вроде как работает. Или у тебя какие-то проблемы с этим возникли?
Проблема в том, что предмет брони, хоть и находится в инвентаре, из него не удаляется, если он в слоте для брони.
В чём проблема? Действия кика и установка значения личной переменной FloodCall в 0 не работают, хотя у меня floodcall: '43.0'
Код:
  TimerExecFloodCall:
    time: 0/1 * * * * ?
    player: all
    paused: 'false'
    activator: ExecFloodCall
Код:
  ExecFloodCall:
    flags:
    - var_player_GREATER=id:floodcall value:1
    actions:
    - execute=activator:KickFloodCall player:%player%
    - execute=activator:DecFloodCall player:%player%
    reactions: []
  KickFloodCall:
    flags:
    - var_player_GREATER=id:floodcall value:4
    actions:
    - var_player_set=id:FloodCall value:0
    - cmd_console=kick %player% Флуд командами.
    reactions: []
  DecFloodCall:
    flags:
    - var_player_GREATER=id:floodcall value:1
    actions:
    - var_player_dec=id:FloodCall
    reactions: []
Код:
  AntiAloodCMD-Shop:
    command: 'shop .*'
    override: false
    regex: true
    flags:
    - DELAY_PLAYER=call
    actions:
    - DELAY_PLAYER=5s/call
    reactions:
    - DELAY_PLAYER=5s/call
    - cancel_event=true
    - message=&6[&eFloodProtect&6]&7 Пожалуйста, перестаньте флудить командами.
    - var_player_inc=id:FloodCall
    - execute=activator:KickFloodCall player:%player%
 
или лучше сделать отдельное действие - item_unwear? Во-втором случае можно сделать способ удаления - удалить/переложить в инвентарь/выбросить.
100% лучший вариант, намного, добавляются новые просторы для фантазии, еще бы плюс к этому обратное действие: "поместить" предмет из активатора в определенный слот брони.
 
@fromgate, мне нужно указать строку %args% из команды, но она не должна включать первый аргумент. Однако вариант
Код:
    command: 'deldonate arg1:* .*'
не работает...
 
Не мог бы кто написать как пользоваться логическим "ИЛИ" (FLAG_SET)? Разобраться самому можно но времени нет, множество функций приходится исследовать самому (так как не ясно какая структура для того или иного флага, активатора, действия сейчас актуальна)...
 
Не мог бы кто написать как пользоваться логическим "ИЛИ" (FLAG_SET)? Разобраться самому можно но времени нет, множество функций приходится исследовать самому (так как не ясно какая структура для того или иного флага, активатора, действия сейчас актуальна)...
Выдаёт true при хотя бы одном совпадении:
FLAG_SET=FLAG1:ARG1 FLAG2:ARG2 FLAG3:ARG3
Выдаёт false при хотя бы одном несовпадении:
'!FLAG_SET=FLAG1:ARG1 FLAG2:ARG2 FLAG3:ARG3'
Выдаёт true при хотя бы одном совпадении:
FLAG_SET=!FLAG1:ARG1 FLAG2:ARG2 !FLAG3:ARG3
 
Назад
Верх