Вы используете устаревший браузер. Этот и другие сайты могут отображаться в нем неправильно. Необходимо обновить браузер или попробовать использовать другой.
Вообще селектор игроков как раз работает по принципу "и".
Т.е. если указать:
player:{player:fromgate loc:world,20,20,20 radius:10 region:rg-test}
то это список будет включать игрока fromgate и всех остальных которые описаны названием региона и локацией с радиусом.
Но этот работает как и в регионе, как и в локации отдельно:
ra run activator:Activator-Exec-7-Test player:{loc:{loc:Activator-Exec-7-Test radius:3} region:rg-test}
И, если нельзя указать пересечение локаций, то как это сделать? Как насчёт действия ITEM_INVENTORY_DROP? Используя его вместе с активатором выхода игрока из игры, можно было бы сделать улучшенную копию плагина на выброс вещей при выходе из PvP. При чём, куда более удобную и масштабируемую
@Lyosha12
Не совсем поняли друг друга. Текущий селектор работает не как фильтр, а просто собирает единый список из всех игроков. Т.е. если указать регион и пермишен - то это будут игроки в регионе (у которых может и не быть пермишена) и игроки у которых есть пермишен (но которые при этом находятся вне этого региона). Итак, фиксируем версию.
Теперь все сообщения (включая сообщения от действия MESSAGE) ограничены 55 символами (в связи с выявлением бага в майнкрафте связанного с различием длины строк с использованием unicode-шрифта). Это значение меняется в файле config.yml
Селектор игроков теперь поддерживает дополнительные параметры: loc, radius.
Действие MESSAGE теперь поддерживает дополнительный параметр "hide" - для того чтобы отображать "надоедливые", повторяющиеся сообщения реже.
Активаторы PVP_DEATH и PVP_RESPAWN модифицированы и переименованы в PLAYER_DEATH и PLAYER_RESPAWN. Новый активатор поддерживает различные причины смерти: PVE (игрок убит мобом), PVP (игрок убит другим игроком) и OTHER (другие причины).
Новая команда /exec <ИмяАктиватора> [player:<СписокИгроков>] [delay:<Время>]. Эта команда - это краткая альтернатива для команды /react run.
Оптимизация кода, исправление выявленных ошибок.
Просьба качать со спигота (и после закачки ставить "звездочки") -- может так о плагине узнает чуть больше народу.
Активаторы PVP_DEATH и PVP_RESPAWN модифицированы и переименованы в PLAYER_DEATH и PLAYER_RESPAWN. Новый активатор поддерживает различные причины смерти: PVE (игрок убит мобом), PVP (игрок убит другим игроком) и OTHER (другие причины).
Не совсем поняли друг друга. Текущий селектор работает не как фильтр, а просто собирает единый список из всех игроков. Т.е. если указать регион и пермишен - то это будут игроки в регионе (у которых может и не быть пермишена) и игроки у которых есть пермишен (но которые при этом находятся вне этого региона).
Тогда как можно написать ситуацию, где что-то проверяет пересечение двух радиусов от сущностей? Почему предмет не преобразовывается в строку?
/ra add ITEM_CLICK Activator-ITEM_CLICK-2 %PLAYER_ITEM_HAND% Не работает действие
- ITEM_REMOVE_INVENTORY=type:267 amount:3
Хотя выдача с теми же аргументами работает нормально... Если это сделано исключительно по тому, что ID больше не поддерживаются в высших версиях, то организация этой поддержки может поставить ReActions на одну ступень с самыми популярными и нужными плагинами. Ведь, все привыкли к ID...
И ничего про этот плейсхолдер в документации я не нашёл. Или плохо искал?
Конечно, я не прошу придумывать ID и для новых предметов. Такой аналог был бы очень хорош в плане простоты использования. Интересно... Когда я указываю ссылку, иногда, чтобы перейти по ней, нужно нажать на строку ниже, чем сама ссылка. С чем это связано?
А как писался плейсхолдер, который генерирует описание предмета в ячейке? И как распределяются ячейки? @fromgate, а почему невозможна проверка нескольких строк описания одним регулярным выражением? Ведь, если поставить модификаторы gui, то мы получим соответствие выражению в любом регистре, строке и количестве.
А такая проверка очень нужна, если требуемое слово находится в разных предметах на разных строках. Да, создать несколько активаторов с отловом каждой строки можно, но зачем тогда соответствующие модификаторы?
Ну представь надо было добавить такой плейсхолдер для того чтобы его записывать в переменную.
Результат был бы...
Вообще надо подумать. Либо сделать что-то вроде доп.переменной, в которую можно записать любое значение в процессе редактирования и его использовать. Либо ещё что-то придумать. Если есть мысли - предлагай. Главное чтобы это удобно было.
Не работает действие
- ITEM_REMOVE_INVENTORY=type:267 amount:3
Хотя выдача с теми же аргументами работает нормально... Если это сделано исключительно по тому, что ID больше не поддерживаются в высших версиях, то организация этой поддержки может поставить ReActions на одну ступень с самыми популярными и нужными плагинами. Ведь, все привыкли к ID...
И ничего про этот плейсхолдер в документации я не нашёл. Или плохо искал?
Конечно, я не прошу придумывать ID и для новых предметов. Такой аналог был бы очень хорош в плане простоты использования.
Вообще не знаю. Никогда не пользовался. Честно говоря, подозреваю, что при этом майнкрафт пытается (или должен) вывести хинт-подсказку и она должна быть ссылкой, но не выводит. Но это только мои домыслы, которые ничем не подкреплены
О! Моя ошибка. Читать значение читаю, а сохранять - не сохраняю. Параметр "reactions.default-chat-line-length" - если его создать, то работать будет. Оставим до следующей версии на моей совести
@fromgate, а почему невозможна проверка нескольких строк описания одним регулярным выражением? Ведь, если поставить модификаторы gui, то мы получим соответствие выражению в любом регистре, строке и количестве.
А такая проверка очень нужна, если требуемое слово находится в разных предметах на разных строках. Да, создать несколько активаторов с отловом каждой строки можно, но зачем тогда соответствующие модификаторы?
Вообще, новые строки распознавались, когда я включил в конструкцию флаг g. Значит, за перенос строк отвечает какой-то параметр из конструкции регулярок. Следовательно, его и надо применять. Или сделать что-то, чтобы "\n" было равнозначно тому параметру. Или вообще убрать "\n", а оставить только подсказку с тем, как именно использовать модификаторы. Я про "(?...)" - сам на сайте проверки regex не видел такого, но это работает и там.
Ну представь надо было добавить такой плейсхолдер для того чтобы его записывать в переменную.
Результат был бы...
Вообще надо подумать. Либо сделать что-то вроде доп.переменной, в которую можно записать любое значение в процессе редактирования и его использовать. Либо ещё что-то придумать. Если есть мысли - предлагай. Главное чтобы это удобно было.
Может встроить "невидимый активатор" COMMAND? Когда пишется такая команда именно с таким плейсхолдером, она отменяется и выполняется другая: плейсхолдер заносится во временную переменную, а из неё подставляется в команду через действие CMD. Следом за этим, временная переменная удаляется, а пользователь доволен.
Однако, зачем костыли? Почему нельзя сделать парсинг этого плейсхолдера как и в конфиге? Или тут дело в каких-то глубинных противоречиях или совпадениях переменных?
Я бы предложил усложнить параметр вызова EXEC'a - селектор игрока - таким способом: добавить параметры "and" и "or". Что-то вроде этого: player:{and:{... ... ...} or:{... ... ...}}. Что означало бы соответствие всем условиям-аргументам в and или "хотя бы одному" в or. Вложенность этих параметров друг в друга тоже желательна. Как по мне, получается просто шедеврально удобно в плане использования.
formgate, я вчера сидел и копался на вашем сайте-туториале, нашёл кое-что и попробовал написать. Выглядит это так:
Код:
EXEC:
test1:
actions:
- CMD_CONSOLE=say hello world 1
- ACTION_DELAYED=time:10 action:{CMD_CONSOLE say hello world 2}
Запускаю командой: /react run activator:test1
Отклик есть, запущено успешно, результата нет.
Запускаю командой: /react run activator:test1 player:ДляСебя
Вижу в чате дважды первое сообщение и через 10 секунд дважды второе.
Это вообще то что мне нужно? Вроде похоже. И как тогда правильно?
Ещё раз поясню то, что мне нужно... Надо чтобы при вводе какой либо (всё равно какой) команды в консоль выполнялся ряд команд из других плагинов в строгой последовательности и с промежутками между ними. И да, раз уж на то пошло, я не нашёл никаких упоминаний на вашем сайте-туториале про эти параметры:
regex: false
override: true
v0.9.6/1
Добавил действие WAIT (параметр - time:<Время>). Это действие приостанавливает выполнение действий на указанное время. К примеру, если у вас всего пять действий и третье из них WAIT time:10s то первые действия будут выполнены сразу. А оставшиеся два - через десять секунд.
Залил новый девбилд: 0.9.6/2
Изменение - давно запрашиваемая возможность запоминать ACTION_DELAYED при выходе игрока и выполнять когда игрок вернётся. Аналогично запоминаются действия WAIT.
Если при повторном входе игрока время уже "вышло", то действия будут выполнены сразу же. Если нет - то игрок будет ждать оставшееся время.
Т.е. если, задано время ожидание на 1 час, а игрок ушёл, прогулял 45 минут, то действие выполнится через 15 минут после входа.
В общем прошу, у кого есть возможность погонять, вдруг какие-то ошибки вылезут...
@BrainRTP
Версия плагина какая стоит? Сейчас перепроверю у себя. @BrainRTP
Ну вот такой активатор у меня отлично работает:
Использовать так: /g type:IRON_SWORD name:... и т.д.
Ввести нечто вроде сохраненной переменной, - которая хранится в lore.
Т.е. если к примеру в lore написано:
"Супер меч, принадлежащий
пьяному монаху.
Сила: +5
Опыт: +10
Ум: -100"
То у этого предмета будет три переменных:
Сила, Опыт и Ум с соответствующими значениями.
Ввести нечто вроде сохраненной переменной, - которая хранится в lore.
Т.е. если к примеру в lore написано:
"Супер меч, принадлежащий
пьяному монаху.
Сила: +5
Опыт: +10
Ум: -100"
То у этого предмета будет три переменных:
Сила, Опыт и Ум с соответствующими значениями.
Допустим, ITEM_CLICK включается для предмета с lore "Test %random:1-5%". Вот это второе слово мне и нужно вывести. Иначе получится, что для каждого значения мне нужно создавать свой активатор. Боюсь спросить: а в таймере можно указывать что-то кроме ников, all и null? Нельзя
player: region:world_the_end.parkour,world_the_end.dropper Предлагаю добавить флаг, который бы проверял, не телепортировался ли игрок в ближайшее %время%. При чём, нужен параметр типа "игнорировать ли телепортации от ReActions".
@BrainRTP
Поскольку там неважно, чтобы игрок был в наличии, то нужно указать player:null
player:all - это запуск для всех игроков (т.е. сколько игроков на сервере, столько активаторов и запустится).
По поводу 720 минут - честно говоря, никогда такого не пробовал. Может в самой библиотеки по этому поводу происходят какие-то чудеса. Поэтому я бы порекомендовал вот такой вариант: 0 0 0/12 * * ?. Должно отрабатывать в 0:00 и в 12:00
На данном сайте используются cookie-файлы, чтобы персонализировать контент и сохранить Ваш вход в систему, если Вы зарегистрируетесь.
Продолжая использовать этот сайт, Вы соглашаетесь на использование наших cookie-файлов.