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

Build #142
  • Модифицировано действие LOG
  • Теперь можно создавать и записывать собственный файл журнала все сообщения, которые применяются к действию LOG
  • Пример:
- LOG=Ваше сообщение file:{test/test.log}
Можно указывать путь к журналу. Путь указывается относительно корня сервера.
 
Build #142
  • Модифицировано действие LOG
  • Теперь можно создавать и записывать собственный файл журнала все сообщения, которые применяются к действию LOG
  • Пример:
- LOG=Ваше сообщение file:{test/test.log}
Можно указывать путь к журналу. Путь указывается относительно корня сервера.
Спасибо) Очень практичная модификация! Завтра будем тестировать все это...

И ещё надо бы обратить внимание на флаг COMPARE.
Было бы удобно расширить его функцию до возможности сравнения: больше/меньше (по типу как VAR_GREATER, VAR_LOWER). Сейчас только есть возможность сравнить равно/не равно. Тоесть надо создавать переменную, делать это сравнение в ней и удалять её. Лишние действия...
 
Последнее редактирование:
Вообщем, никак не выдается эффект силы.
Действие:
- POTION=type:STRENGTH level:1 time:5m ambient:true

API, как и было дано на сайте: Это
 
И ещё надо бы обратить внимание на флаг COMPARE.
Было бы удобно расширить его функцию до возможности сравнения: больше/меньше (по типу как VAR_GREATER, VAR_LOWER). Сейчас только есть возможность сравнить равно/не равно. Тоесть надо создавать переменную, делать это сравнение в ней и удалять её. Лишние действия...
Мне пока не очень ясно, что вы хотите. Покажите на примере двух активаторов, как вы делаете сейчас и как бы вы хотели, чтобы оно работало. Чтобы от этого отталкиваться.
 
Мне пока не очень ясно, что вы хотите. Покажите на примере двух активаторов, как вы делаете сейчас и как бы вы хотели, чтобы оно работало. Чтобы от этого отталкиваться.

Все вроде очень просто и практично. Может быть путаница из за того что лучше надо было назвать этот флаг не COMPARE_GREATER, а типа PARAM_GREATER. Вот, навожу пример:

Есть у нас значение D, и пусь обозначает оно там... дистанцию игрока к какому то обьекту... Ми запускаем активатор, заносим D в переменную и затем запускаем следующий активатор, в котором с помощью флага мы вынуждены сравнивать, больше ли эта переменная значения 30, или нет. Если больше - выводим меседж что игрок дальше 30-ти блоков от обьекта.
Код:
exe1:
  actions:
  - 'VAR_PLAYER_SET=id:distance  value:D'
  - 'EXECUTE=activator:exe1+'

exe1+:
  flags:
  - 'VAR_PLAYER_GREATER=id:distance   value:30'
  actions:
  - 'MSG=Вы находитесь дальше, чем на 30 блоков от обьекта.
  - 'VAR_PLAYER_CLEAR=id:distance '

Но если бы существовал флаг PARAM_GREATER, в котором сразу можна сравнить параметр D со значением 30, мы могли бы упростить:
Код:
exe1:
  flags:
  - 'PARAM_GREATER=param:D  value:30'
  actions:
   - 'MSG=Вы находитесь дальше, чем на 30 блоков от обьекта.


Вроде понятно теперь должно быть. Если нет, то вот ещё :
Нашел свой старый пост, где наводил пример как можна вычислить есть ли в заданом радиусе игрок, обладающий конкретным пермишеном - http://rubukkit.org/threads/mech-fu...-inache-bukkitdev.41857/page-186#post-1453325

Там есть ссылка на полный активатор - https://pastebin.com/VKp7uuUk
И в рядке №61 показано место где можна сократить, имея в арсенале флаг, умеющий сравнивать больше ли представленый параметр за указаное значение, не прибегая к занесению его в переменную.
 
Последнее редактирование:
Никак не хочу отвлекать авторов плагина от работы.
Спрашиваю у смертных:
Вообщем, имею 1 активатор типа "SIGN"

Как сделать так, чтобы при наличии пермишена(или персональной переменной), допустим, quest_1_complete действия были другими, например:
- MESSAGE=&7Ты уже прошел этот квест!

Код:
  sign1:
    sign-mask:
    - 'Квест:'
    - '"Начало начал"'
    - ''
    - ''
    click-type: ANY
    flags:
    - PERM=quest_1
    actions:
    - MESSAGE=&7Ты уже начал прохождение квеста &7"&fНачало начал&7"&f.
    - MENU_ITEM=size:9 title:{Начало начал} slot5:{name:{&aНеобходимые действия:} lore:{&2Тебе нужно открыть\n&2первый телепорт,\n&2чтобы в будущем\n&2суметь телепортироваться\n&2на открытую точку} type:35 data:5}
    reactions:
    - CMD_CONSOLE=pex user %PLAYER_NAME% add quest_1
    - MENU_ITEM=size:9 title:{Начало начал} slot5:{name:{&aНеобходимые действия:} lore:{&2Тебе нужно открыть\n&2первый телепорт,\n&2чтобы в будущем\n&2суметь телепортироваться\n&2на открытую точку} type:35 data:5}
    - MESSAGE=&7Ты начал первый квест.
    - SOUND=ENTITY_EXPERIENCE_ORB_PICKUP
 
Последнее редактирование:
Здравствуйте, не подскажите, как сделать так, чтобы при клике предметом у меня выполнялся активатор№1, а при клике тем-же предметом 2-й раз, у меня остановился активатор№1, и начал выполняться активатор№2
Проще сделать скриптом.
 
Никак не хочу отвлекать авторов плагина от работы.
Спрашиваю у смертных:
Вообщем, имею 1 активатор типа "SIGN"

Как сделать так, чтобы при наличии пермишена(или персональной переменной), допустим, quest_1_complete действия были другими, например:
- MESSAGE=&7Ты уже прошел этот квест!

Код:
  sign1:
    sign-mask:
    - 'Квест:'
    - '"Начало начал"'
    - ''
    - ''
    click-type: ANY
    flags:
    - PERM=quest_1
    actions:
    - MESSAGE=&7Ты уже начал прохождение квеста &7"&fНачало начал&7"&f.
    - MENU_ITEM=size:9 title:{Начало начал} slot5:{name:{&aНеобходимые действия:} lore:{&2Тебе нужно открыть\n&2первый телепорт,\n&2чтобы в будущем\n&2суметь телепортироваться\n&2на открытую точку} type:35 data:5}
    reactions:
    - CMD_CONSOLE=pex user %PLAYER_NAME% add quest_1
    - MENU_ITEM=size:9 title:{Начало начал} slot5:{name:{&aНеобходимые действия:} lore:{&2Тебе нужно открыть\n&2первый телепорт,\n&2чтобы в будущем\n&2суметь телепортироваться\n&2на открытую точку} type:35 data:5}
    - MESSAGE=&7Ты начал первый квест.
    - SOUND=ENTITY_EXPERIENCE_ORB_PICKUP
С помощью доп активатора или If_else
 
Никак не хочу отвлекать авторов плагина от работы.
Спрашиваю у смертных:
Вообщем, имею 1 активатор типа "SIGN"

Как сделать так, чтобы при наличии пермишена(или персональной переменной), допустим, quest_1_complete действия были другими, например:
- MESSAGE=&7Ты уже прошел этот квест!

Код:
  sign1:
    sign-mask:
    - 'Квест:'
    - '"Начало начал"'
    - ''
    - ''
    click-type: ANY
    flags:
    - PERM=quest_1
    actions:
    - MESSAGE=&7Ты уже начал прохождение квеста &7"&fНачало начал&7"&f.
    - MENU_ITEM=size:9 title:{Начало начал} slot5:{name:{&aНеобходимые действия:} lore:{&2Тебе нужно открыть\n&2первый телепорт,\n&2чтобы в будущем\n&2суметь телепортироваться\n&2на открытую точку} type:35 data:5}
    reactions:
    - CMD_CONSOLE=pex user %PLAYER_NAME% add quest_1
    - MENU_ITEM=size:9 title:{Начало начал} slot5:{name:{&aНеобходимые действия:} lore:{&2Тебе нужно открыть\n&2первый телепорт,\n&2чтобы в будущем\n&2суметь телепортироваться\n&2на открытую точку} type:35 data:5}
    - MESSAGE=&7Ты начал первый квест.
    - SOUND=ENTITY_EXPERIENCE_ORB_PICKUP

Код:
SIGN:
  sign1:
    sign-mask:
    - 'Квест:'
    - '"Начало начал"'
    - ''
    - ''
    click-type: ANY
    flags:
    - '!var_player_exist=id:q1'
    actions:
    - Var_player_set=id:q1 value:1
    - MENU_ITEM=size:9 title:{Начало начал} slot5:{name:{&aНеобходимые действия:} lore:{&2Тебе нужно открыть\n&2первый телепорт,\n&2чтобы в будущем\n&2суметь телепортироваться\n&2на открытую точку} type:35 data:5}
    - MESSAGE=&7Ты начал первый квест.
    - SOUND=ENTITY_EXPERIENCE_ORB_PICKUP
    reactions:
    - IF_ELSE=
        if:{(%varp:q1%==1)}
        then:run:actions:{
            action1:{MESSAGE=&7Ты уже начал прохождение квеста &7"&fНачало начал&7"&f.}
            action2:{MENU_ITEM=size:9 title:{Начало начал} slot5:{name:{&aНеобходимые действия:} lore:{&2Тебе нужно открыть\n&2первый телепорт,\n&2чтобы в будущем\n&2суметь телепортироваться\n&2на открытую точку} type:35 data:5}}
        }
        else:{}
    - IF_ELSE=
        if:{(%varp:q1%==2)}
        then:run:actions:{
            action1:{MESSAGE=&7Ты уже прошел этот квест!}
        }
        else:{}
Вот так попробуй. Не люблю пермы поэтому переменные. Поставь переменную q1(можешь изменить) на 2 и квест будет выполнен.
 
С помощью доп активатора или If_else
О, спасибо огромное, как раз только что писал, как проверить переменную через это действие.

Теперь, по примеру, который ты мне дал буду делать.

Еще раз большое спасибо!



Как лайк поставить?)
 
О, спасибо огромное, как раз только что писал, как проверить переменную через это действие.

Теперь, по примеру, который ты мне дал буду делать.

Еще раз большое спасибо!



Как лайк поставить?)
пожалуйста!
 
Build #143
  • Добавлено два флага GREATER и LOWER
  • Проверяют больше или меньше параметр (param) указанного значения (value)
  • Проверяются только числа
  • Плейсхолдеры: %gparam% у флага GREATER, %lparam% - у флага LOWER
  • Пример:
Код:
  greater1:
    flags:
    - GREATER=param:25 value:24
    actions:
    - LOG=%gparam%
    reactions:
    - LOG=re:%gparam%
  lower1:
    flags:
    - LOWER=param:23 value:24
    actions:
    - LOG=%lparam%
    reactions:
    - LOG=re:%lparam%
 
Кому не лень разбираться, сделал чисто для себя некий генератор диалогов для NPC через Reaction. Решил поделиться. Если что не судите строго, я таким впервые занимаюсь. Есть идеи на счет функционала предлагайте. Буду дорабатывать. Для квестов использую плагин Qvests.

Сам генератор: https://www.dropbox.com/s/3ww4rogduay1sjq/DialogMaker_0.1.exe?dl=1
 
Кому не лень разбираться, сделал чисто для себя некий генератор диалогов для NPC через Reaction. Решил поделиться. Если что не судите строго, я таким впервые занимаюсь. Есть идеи на счет функционала предлагайте. Буду дорабатывать. Для квестов использую плагин Qvests.

Сам генератор: https://www.dropbox.com/s/3ww4rogduay1sjq/DialogMaker_0.1.exe?dl=1
Очень даже не плохо. Есть потенциал. Такой функционал намного упрощает работу . Стоит для этого сделать какой-то туториал, чтобы быстро понять что делать.
 
Кому не лень разбираться, сделал чисто для себя некий генератор диалогов для NPC через Reaction. Решил поделиться. Если что не судите строго, я таким впервые занимаюсь. Есть идеи на счет функционала предлагайте. Буду дорабатывать. Для квестов использую плагин Qvests.

Сам генератор: https://www.dropbox.com/s/3ww4rogduay1sjq/DialogMaker_0.1.exe?dl=1
Сяб, работает! ) Прелестная программа! Но подозрительная.
 
MOB_CLICK:
Auction:
mob-type: OCELOT
mob-name: '&2Аукционер'
actions:
- CMD=ah

Ребят не функционирует плагин AuctionHouse если его вызывать этим методом. Как быть?

А вот через меню работает :\
 
Последнее редактирование:
Назад
Верх