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

Только еще один вопросик, как правильно написать активатор, тот же item_click, чтобы "ловил", например яблоки, не зависимо от названия, описания, зачарований и прочего?
в общем сам нашел ответ: name:{.*} lore:{.*} ...
В новой версии, по сравнению со старыми, есть один недостаток, вот например:
Код:
  taler_buy_loto:
    flags:
    - ITEM_INVENTORY=type:GOLD_NUGGET name:{&6Золотой &eТалер} data:0 amount:64
    actions:
    - item_remove_inventory=type:GOLD_NUGGET name:{&6Золотой &eТалер} data:0 amount:64
    reactions:
#    ..........
Это работает без проблем, если изменять количество предметов, на любое, меньше 64, тоже все работает, но если больше 64-х, то уже не работает ни флаг, ни действие, то есть, укажите количество вещей 1, 10, 23, 64 - работает, а 65, 100 или 500 уже не будет работать, хотя в старых версиях, это работает :( Можно это исправить?
 
Последнее редактирование:
то, что не работало вчера, само, заработало сегодня, УРРАААА!!! Теперь я могу обновить у себя ReActions
14162987013113.gif
 
Добрый день.
Подскажите как правильно разбить файл activators.yml на несколько файлов.
Просто у меня сейчас там много всего и не удобно когда все это в одной куче
 
Добрый день.
Подскажите как правильно разбить файл activators.yml на несколько файлов.
Просто у меня сейчас там много всего и не удобно когда все это в одной куче
можно просто скопировать каждую задачу в разные файлы по типу: имя_файла.yml
Расширение важно. Так же файл должен быть в кодировке UTF-8 без BOM
Класть все это дело нужно в ту же папку, где и activators.yml
 
можно просто скопировать каждую задачу в разные файлы по типу: имя_файла.yml
Расширение важно. Так же файл должен быть в кодировке UTF-8 без BOM
Класть все это дело нужно в ту же папку, где и activators.yml
Спасибо!
@fromgate
Можно ли как ни будь сделать активатор который реагировал бы на снятие определенной брони.
Я столкнулся с проблемой что мне необходимо отменять наложенный эффект когда игрок надел броню (ничего сложного) и добавлять эффект когда игрок снял броню (вот тут и проблема.)
У меня есть мир в котором накладывается эффект как только игроки покидают регион. Но если на игроке есть определенная броня, то эффект не накладывается. Проблема в том что мне нужно проверять снял ли игрок броню или нет.
 
Последнее редактирование:
Проблема в том что мне нужно проверять снял ли игрок броню или нет.
если бы привязать к какому то другому акитватору, то можно было бы использовать флаг item_wear
разбить файл activators.yml на несколько файлов.
а можно и командой /ra group активатор группа, где группа - это будет имя файла (без yml) если этот файл есть, то активатор будет в него перемещен, если нет, то файл будет создан.
У меня сейчас 33 файла с активаторами.
В новой версии, по сравнению со старыми, есть один недостаток, вот например:
Код:
  taler_buy_loto:
    flags:
    - ITEM_INVENTORY=type:GOLD_NUGGET name:{&6Золотой &eТалер} data:0 amount:64
    actions:
    - item_remove_inventory=type:GOLD_NUGGET name:{&6Золотой &eТалер} data:0 amount:64
    reactions:
#    ..........
Это работает без проблем, если изменять количество предметов, на любое, меньше 64, тоже все работает, но если больше 64-х, то уже не работает ни флаг, ни действие, то есть, укажите количество вещей 1, 10, 23, 64 - работает, а 65, 100 или 500 уже не будет работать, хотя в старых версиях, это работает :( Можно это исправить?
Больше того, даже если мы укажем количество 50, а в инвентаре будет лежать 3 раза по 49, то есть ни в одном месте не будет нужного количества в одном стаке, то эти активаторы тоже не сработают(
 
Вопрос про связку реакшнс-варплист. Есть проблема: У плагина Mywarp почему-то не пашет команда варплист для игроков, только для админов. Появилась мысль запилить на спавне кнопку, к которой привязать эту команду от имени оператора. И все бы ничего, но ведь, когда варпов будет много, то как игроки будут видеть варпы на страницах 2, 3, 4,... ? Поэтому вопрос. Как-то можно сделать средствами реакшнс, чтобы при нажатии кнопки страницы перелистывались сами?
 
Вопрос про связку реакшнс-варплист. Есть проблема: У плагина Mywarp почему-то не пашет команда варплист для игроков, только для админов. Появилась мысль запилить на спавне кнопку, к которой привязать эту команду от имени оператора. И все бы ничего, но ведь, когда варпов будет много, то как игроки будут видеть варпы на страницах 2, 3, 4,... ? Поэтому вопрос. Как-то можно сделать средствами реакшнс, чтобы при нажатии кнопки страницы перелистывались сами?
Если Вы хотите сделать из одной кнопки мульти-кнопку, то это не стоит усилий. Более того - не удобно. Однако, если так уж хотите, то используйте много EXEC'ов, в которых проверяйте значение переменной, которое увеличивается на единицу с каждым новым нажатием. Как только будет конец массива - активатором MESSAGE ловите конечный текст, выводите первую страницу и устанавливаете личную переменную в значение 1. И так по циклу можно гонять игроков.
 
Вопрос про связку реакшнс-варплист. Есть проблема: У плагина Mywarp почему-то не пашет команда варплист для игроков, только для админов. Появилась мысль запилить на спавне кнопку, к которой привязать эту команду от имени оператора. И все бы ничего, но ведь, когда варпов будет много, то как игроки будут видеть варпы на страницах 2, 3, 4,... ? Поэтому вопрос. Как-то можно сделать средствами реакшнс, чтобы при нажатии кнопки страницы перелистывались сами?
сделать не кнопкой, а командой, активатор: COMMAND
 
На Sponge api порт планируется?
 
На Sponge api порт планируется?
Сейчас рано говорить. Дело в том, что всё очень сильно завязано на bukkitAPI. Я как раз вчера оценивал перенос на nukkit - придётся очень много переделывать.
Но я этим займусь. В результате, наверняка добавится и поддержка Sponge.
 
Кто нибудь пытался реализовать условие "НЕ", например таким образом:
Если в руке (type: DIAMOND но НЕ (type: DIAMOND name: DIAMOND1) и НЕ (type: DIAMOND name: DIAMOND2)), то: ...
Если кто то знает как это реализовать, поделитесь пожалуйста :)
 
Последнее редактирование:
Кто нибудь пытался реализовать условие "НЕ", например таким образом:

Если кто то знает как это реализовать, поделитесь пожалуйста :)
Отрицание флага. Документацию читайте.
Код:
    - '!Flag=Args'
 
нужно писать с маленькой буквы

Отрицание флага. Документацию читайте.
дельный совет...

Похоже все таки в одном активаторе мою конструкцию не реализовать, придется делать через вложенные EXEC-ки...
 
/ra add rgenter a1 a1
/ra add a1 f item_inventory 27221:&fКлюч от двери
/ra add a1 a tp loc1
/ra add a1 a item_remove_inventory 27221:&fКлюч от двери
Всё работает, но ключ не удаляет. Когда ставлю просто чистый айди 27221 и беру чистый итем без изменения имени - всё успешно удаляется при выполнении действия, а тут - нет! Помогите.
 
это что за предмет?
грубо говоря, для сравнения, если бы это был алмаз, я бы написал так:
Код:
/ra add a1 a item_remove_inventory type:DIAMOND name:{&fКлюч от двери}
а чтобы узнать, как называется предмет у тебя в руке сделай простенький активатор:
Код:
/ra add exec type
/ra add type a message %PLAYER_ITEM_HAND%
и тогда берешь предмет в руку, пишешь команду:
Код:
/exec type
и тебе в чат выведет что за штука у тебя в руке
@Lyosha12 вот это называется совет, если нечего сказать, то лучше промолчать, а
Документацию читайте
может любой посоветовать.
 
Последнее редактирование:
Добрый вечер!
Плагин просто замечательный, но возникла проблема.
Задача: гоночная трасса, а конкретнее: на старте запись в персональную переменную starttime времени старта, на финише происходит запись в персональную переменную finishtime разницы между временем сейчас и starttime.
Проблема 1: когда пытаешься вывести в сообщении значение переменной с помощью плейсхолдера, он выводит сам плейсхолдер, но никак не значение переменной.
Проблема 2: из-за проблемы 1 невозможно даже проверить, работает ли всё правильно с переменными или нет. Есть какая-то команда, чтобы увидеть инициализированные на данный момент переменные и их значения?
Прилагаю код.
Код:
REGION_ENTER:
  started:
    region: start_area
    flags: []
    actions:
    - 'cmd_console=tellraw @a {text: "", extra: [{selector: @p, bold: true, color:
      gold}, {text: " стартовал!"}]}'
    - var_player_set=id:starttime, value:{%SERVER_TIME%}
    - message=%varp:starttime%
    reactions: []
  finished:
    region: finish_area
    flags: []
    actions:
    - 'cmd_console=tellraw @a {text: "", extra: [{selector: @p, bold: true, color:
      gold}, {text: " финишировал!"}]}'
    - var_player_set=id:finishtime, value:{%CALC:%SERVER_TIME% - %varp:starttime% %}
    - message=%varp:finishtime%
    - message=%var:elias.finishtime%
    reactions: []
Спасибо.
 
нужно писать с маленькой буквы


дельный совет...

Похоже все таки в одном активаторе мою конструкцию не реализовать, придется делать через вложенные EXEC-ки...
Если Вы не в состоянии осознать с моим примером, то что уж говорить про документацию?
Если в руке (type: DIAMOND но НЕ (type: DIAMOND name: DIAMOND1) и НЕ (type: DIAMOND name: DIAMOND2)), то: ...

Код:
    flags:
    - ITEM=64*1
    - '!ITEM=type:DIAMOND name:DIAMOND1'
    - '!ITEM=type:DIAMOND name:DIAMOND2'
    actions: []
    reactions: []

Есть какая-то команда, чтобы увидеть инициализированные на данный момент переменные и их значения?
В конфиге точно можно глянуть. Файл variables.yml.
Проблема 1: когда пытаешься вывести в сообщении значение переменной с помощью плейсхолдера, он выводит сам плейсхолдер, но никак не значение переменной.
Синтаксис неверный. Читайте документацию: Плейсхолдеры
 
Код:
    flags:
    - ITEM=64*1
    - '!ITEM=type:DIAMOND name:DIAMOND1'
    - '!ITEM=type:DIAMOND name:DIAMOND2'
    actions: []
    reactions: []
такой вариант не будет работать так, как мне нужно, потому, что я подразумевал в руке любой алмаз, с любым названием или описанием, кроме указанных, то есть исходя из вашей логики нужно бы писать примерно так:
Код:
    flags:
    - ITEM=type:DIAMOND name:{.*} lore:{.*}
    - '!ITEM=type:DIAMOND name:DIAMOND1'
    - '!ITEM=type:DIAMOND name:DIAMOND2'
но и этот вариант нужно еще перепроверить, не факт что будет работать правильно.
 
Назад
Верх