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

1. Можно ли установить режим полёта при помощи ReActions, посредствам самого плагина и команд консоли MineCraft/Bukkit/Spigot?


2. Как отследить сообщение, отправляемое игроку при выполнение стандартных команд, к примеру /minecraft:gamemode 1 PlayerName , ведь сами сообщения указаны в файлах на стороне клиента и меняются в зависимости от языка, установленного в клиенте игрока.
 
Последнее редактирование:
Не подскажите, как действием IF_ELSE проверить наличие пермишена у игрока?
В этом действии пока нельзя использовать флаги. Я попробую это допилить в будущем. Но ваш вопрос можно решить следующим образом:
Код:
ACTIVATOR:
  act:
    flags:
    - FLAG_SET=PERM:ваш.пермишен !PERM:ваш.пермишен
    actions:
    - IF_ELSE=if:{PERM_FLAG==ваш.пермишен}
              then:run:actions:{
                action1:{message=есть пермишен}
              }
              else:run:actions:{
                action1:{message=нет пермишена}
              }
 
1. Можно ли установить режим полёта при помощи ReActions, посредствам самого плагина и команд консоли MineCraft/Bukkit/Spigot?


2. Как отследить сообщение, отправляемое игроку при выполнение стандартных команд, к примеру /minecraft:gamemode 1 PlayerName , ведь сами сообщения указаны в файлах на стороне клиента и меняются в зависимости от языка, установленного в клиенте игрока.
1. На сколько я знаю, нельзя. Я попробую добавть это действие в ReActions.
2. Сообщения, которые не передаются сервером отследить нельзя.
 
Build #153 или Последняя версия
  • Добавлено действие FLY
  • Устанавливает режим полёта игроку, а также запрещает или разрешает игроку включать режим полёта с помощью двойного нажатия клавиши прыжка.
  • Описание
 
Последнее редактирование:
Что с сайтом? Уже 2 день не могу зайти
 
Добрый день! Я, конечно, только начинающий пользователь ReAction и всё же хотел попросить помощи. Ничего более на ютубе я не нашел. Мне нужно создать регион, и что бы одного рандом игрока из данного региона телепортировало в определённую локацию. Чувствую, здесь причастна строка %loc-from%, хотя гадать не буду и у меня ничего не вышло. То есть, я должен жмакнуть на кнопку, а телепортировать кого-то из того или иного региона. ReAction настолько функционален, что, казалось бы, нет ничего, чего бы он не мог в руках мастера. Надеюсь, что моё дело не столь трудное, как кажется... да и вовсе и реально.
 
Ой! Я тут решил воспользоваться DNS сервисами яндекса. Он не подтянул записи о поддоменах. Прописал, надеюсь скоро заработает.
к рессурсу ниже тоже нет доступа:
http://repo.nukkit.ru
Не могу скомпилировать плагин. Пишет:
 
Добрый день! Я, конечно, только начинающий пользователь ReAction и всё же хотел попросить помощи. Ничего более на ютубе я не нашел. Мне нужно создать регион, и что бы одного рандом игрока из данного региона телепортировало в определённую локацию. Чувствую, здесь причастна строка %loc-from%, хотя гадать не буду и у меня ничего не вышло. То есть, я должен жмакнуть на кнопку, а телепортировать кого-то из того или иного региона. ReAction настолько функционален, что, казалось бы, нет ничего, чего бы он не мог в руках мастера. Надеюсь, что моё дело не столь трудное, как кажется... да и вовсе и реально.
%loc-from% - это лишь плейсхолдер, он ничем вам не поможет.

Прежде чем нажать на кнопку для телепортирования игрока, необходимо узнать какие игроки находятся в регионе и сколько их. А затем из этого списка случайным образом выбрать одного. Быстрого решения нет, но выполнить с помощью ReActions возможно.
Чтобы решить данную задачу, нужно при входе в регион игрока создавать глобальную переменную игроков (players). Если она уже существует, то дополнить её именем игрока через запятую. С каждым игроком наша переменная будет выглядеть так:
players: playerName1,playerName2,...,playerNameN
Также необходимо создать глобальную переменную количества игроков в регионе (N)

Затем необходимо создать exec-активатор, в котором указываем шанс с помощью флага CHANCE=round(100/N) и зацикливаем активатор сам на себя, пробегая всех игроков, пока не сработает шанс для какого-то игрока.
После чего телепортируем его с помощью действия TP

Также нужно не забыть удалять игрока из глобальной переменной, когда он выходит из региона.

Я расписал это решение, потому-что оно мне сразу пришло в голову, возможно есть и проще вариант.

Расписывать активаторами не буду, я просто дал идею для реализации.
 
%loc-from% - это лишь плейсхолдер, он ничем вам не поможет.

Прежде чем нажать на кнопку для телепортирования игрока, необходимо узнать какие игроки находятся в регионе и сколько их. А затем из этого списка случайным образом выбрать одного. Быстрого решения нет, но выполнить с помощью ReActions возможно.
Чтобы решить данную задачу, нужно при входе в регион игрока создавать глобальную переменную игроков (players). Если она уже существует, то дополнить её именем игрока через запятую. С каждым игроком наша переменная будет выглядеть так:
players: playerName1,playerName2,...,playerNameN
Также необходимо создать глобальную переменную количества игроков в регионе (N)

Затем необходимо создать exec-активатор, в котором указываем шанс с помощью флага CHANCE=round(100/N) и зацикливаем активатор сам на себя, пробегая всех игроков, пока не сработает шанс для какого-то игрока.
После чего телепортируем его с помощью действия TP

Также нужно не забыть удалять игрока из глобальной переменной, когда он выходит из региона.

Я расписал это решение, потому-что оно мне сразу пришло в голову, возможно есть и проще вариант.

Расписывать активаторами не буду, я просто дал идею для реализации.
Да, спасибо! Конечно, это не совсем просто, и даже проблематично... моей целью вовсе было сделать установку для телепорта, выдачи предметов и обратного телепорта, но теперь я вижу, что это очень трудно. Хотя бы потому, что мне придется каждый раз выписывать игроков... Спасибо за внимание, и всё же, если будут идеи - я хотел бы выслушать.
 
Да, спасибо! Конечно, это не совсем просто, и даже проблематично... моей целью вовсе было сделать установку для телепорта, выдачи предметов и обратного телепорта, но теперь я вижу, что это очень трудно. Хотя бы потому, что мне придется каждый раз выписывать игроков... Спасибо за внимание, и всё же, если будут идеи - я хотел бы выслушать.
Ни кого не нужно выписывать вручную, всё делают активаторы автоматически. Вам останется всего лишь нажать на кнопку, а всю остальную работу делают активаторы. Сложность в том, что необходимо всё это правильно запрограммировать.
Даю совет: Всегда начинайте с простого, а затем постепенно усложняйте задачи.

Вот я, полтора года назад ни как не мог понять, как телепортировать игрока. Я скептически относился к этому плагину, считал, что он слишком сложный для меня. А теперь абсолютно любую задачу могу решить с помощью ReActions. А если не могу решить, то просто добавляю новые активаторы, действия или флаги, чтобы всё получилось. У меня сейчас цель избавиться от как можно больше плагинов, чтобы в идеале осталось не больше пяти штук.

Так что не оставляйте попыток решить свою задачу. Там не всё так сложно, как кажется на первый взгляд.
 
Ни кого не нужно выписывать вручную, всё делают активаторы автоматически. Вам останется всего лишь нажать на кнопку, а всю остальную работу делают активаторы. Сложность в том, что необходимо всё это правильно запрограммировать.
Даю совет: Всегда начинайте с простого, а затем постепенно усложняйте задачи.

Вот я, полтора года назад ни как не мог понять, как телепортировать игрока. Я скептически относился к этому плагину, считал, что он слишком сложный для меня. А теперь абсолютно любую задачу могу решить с помощью ReActions. А если не могу решить, то просто добавляю новые активаторы, действия или флаги, чтобы всё получилось. У меня сейчас цель избавиться от как можно больше плагинов, чтобы в идеале осталось не больше пяти штук.

Так что не оставляйте попыток решить свою задачу. Там не всё так сложно, как кажется на первый взгляд.
Да... Сам я начал его изучать дня так 3 назад. Принцип действия телепорта знаю и так далее. В общем, простые действия с трудом, но понять и осуществить я смог. Ах, а что поводу вашей инструкции... ну, что-то я понял, что-то нет. В общем, если уж мне и объяснять, то с максимально дополненной инструкцией, но я понимаю вашу занятость, по этому настаивать не буду. В любом случае у меня есть подсказки и вдохновение, даже если с переменными я ни разу не работал. Но, если так подумать... обучение идёт в разы быстрее, когда рядом есть тот, кто расскажет и покажет, а рядом со мной таких нет, собственно по этому я и нахожусь здесь. И еще раз спасибо за время, подсказки и позитив!
 
Возможно, я что-то делаю не так, но мне кажется, что активатор Quit не работает.
Не могу создать его.
Копирую команду с вашего сайта

Для наглядности написал команду еще раз с персонажа на сервере:
upload_2017-10-25_23-39-26.png
 
Возможно, я что-то делаю не так, но мне кажется, что активатор Quit не работает.
Не могу создать его.
Копирую команду с вашего сайта

Для наглядности написал команду еще раз с персонажа на сервере:
Посмотреть вложение 48514
Я знаю в чём дело. После обновления, который сделал @fromgate ещё в Апреле-Мае, был внедрен метод, который следит за соблюдением того, чтобы необходимые данные были обязательно введены. По умолчанию он установлен в false, поэтому, активаторы у которых нет прописанных правил всегда будет отказ при попытке их создать из консоли.

Я постараюсь поправить везде этот момент. Но пока попробуйте создать свой активатор в файле, а не из консоли.
 
Последнее редактирование:
@maxdikiy
Могли бы вы добавить поддержку ReActions новых версий для 1.7.10?
Т.к. только на 9.9 и позже можно создавать/изменять активаторы прямо в игре, а не через файл.
В более поздних версиях же (при установке на 1.7.10) такое возможно только через файл((
Займитесь этим, пожалуйста(( Думаю, это многим поможет! :)
 
Можно добавить поддержку биомов из TerrainControl для флага BIOME? Было бы отлично.
А ещё флаг для проверки наличия указанного игрока\игроков онлайн.
Плейсхолдер %argscount% для активатора COMMAND не может принимать значения 0 и 1 (если введена только сама команда или только первый аргумент). Очень прошу исправить.
Можно ли в STATE добавить GOD (режим бога из EssentailsX и WorldGuard)?
 
Последнее редактирование:
Ребят, вопрос есть. Такой вариант работает:
Код:
CMD_CONSOLE=title %PLAYER_NAME% actionbar ["§bЖажда: §f%varp:thirst%"]
А такой не хочет из-за ':' (без ':' работает):
Код:
    - IF_ELSE=if:{%argscount%==2}
              then:run:actions:{
                action1:{CMD_CONSOLE=title %PLAYER_NAME% actionbar ["§bЖажда: §f%arg2%"]}
              }
Если переписать вот так, то работает:
Код:
    - IF_ELSE=if:{%argscount%==2}
              then:run:actions:{
                action1:{CMD_CONSOLE=title %PLAYER_NAME% actionbar ["§bЖажда:"," §f%arg2%"]}
              }
Почему? И если с title понятно, то что делать с MESSAGE (метод с взятием в кавычки не работает, как это было в (re)actions: )? Создавать EXEC ради одного сообщения? Тут тоже выдаёт ошибку из-за ':' в сообщении:
Код:
    - IF_ELSE=if:{%argscount%==2}
              then:run:actions:{
                action1:{MESSAGE=§r郯 §bВы установили себе новый уровень жажды: %arg2%.}
              }
 
Последнее редактирование:
Ребят, вопрос есть. Такой вариант работает:
Код:
CMD_CONSOLE=title %PLAYER_NAME% actionbar ["§bЖажда: §f%varp:thirst%"]
А такой не хочет из-за ':' (без ':' работает):
Код:
    - IF_ELSE=if:{%argscount%==2}
              then:run:actions:{
                action1:{CMD_CONSOLE=title %PLAYER_NAME% actionbar ["§bЖажда: §f%arg2%"]}
              }
Если переписать вот так, то работает:
Код:
    - IF_ELSE=if:{%argscount%==2}
              then:run:actions:{
                action1:{CMD_CONSOLE=title %PLAYER_NAME% actionbar ["§bЖажда:"," §f%arg2%"]}
              }
Почему? И если с title понятно, то что делать с MESSAGE (метод с взятием в кавычки не работает, как это было в (re)actions: )? Создавать EXEC ради одного сообщения? Тут тоже выдаёт ошибку из-за ':' в сообщении:
Код:
    - IF_ELSE=if:{%argscount%==2}
              then:run:actions:{
                action1:{MESSAGE=§r郯 §bВы установили себе новый уровень жажды: %arg2%.}
              }
Используй вместо ":" вот этот знак- "︰"
Сверху сообщение, со знаком, предложенным мною, а снизу оригинальное:
upload_2017-10-26_15-40-59.png
Ах, да, вместо "MESSAGE=§r郯 §bВы установили себе новый уровень жажды: %arg2%."

Можешь использовать это:"- CMD_CONSOLE=tellraw %PLAYER_NAME% ["§bВы установили себе новый уровень жажды:"," §b%arg2%"]"

Вот сайт, где можно генерировать такие сообщения (/title, /tellraw, subtittle, actionbar)
 

Вложения

  • upload_2017-10-26_15-38-55.png
    upload_2017-10-26_15-38-55.png
    13,9 КБ · Просмотры: 3
Назад
Верх