@fromgate
Извините, но я не понял как это реализовать. А точнее как вызвать с этим параметром...

Не могли бы вы по подробнее рассказать как сделать?
Действием вызываешь активатор EXEC:
execute=activator:EXEC region:World.mine1
А в этом EXEC пишешь команду на телепортацию в нужную локацию, не указывая регион, так как EXEC выполнится для всех игроков, которые были на тот момент в регионе World.mine1
Зелье - пройдёт нормально. В том плане, что в руках будет не меч, а фигня какая-то.
А вот если действие SHOOT влупить или (моим плагином Laser) или каким-то плагином (который грамотно работает с событиями) мы получим урон, а в руках у игрока не факт, что будет источник урона.
Предположим мы увеличиваем урон от определенного меча.
Игрок держит его в руках, а у него сторонним плагином создана "аура урона", которая наносит урон окружающим игрокам (небольшой полсердчка), мы находим мечь, думаем что он им бьёт и увеличиваем этот урон во много раз.
Но вообще это довольно специфично, так что наверное, можно не заморачиваться
Вообще, активатор MOB_DAMAGE и увеличение урона с помощью действия и плейсхолдера будет происходить тогда, когда все флаги вернут true. То есть, если у игрока не будет меча, то и урон не будет увеличиваться.
Или Вы имеете в виду, что урон может наносится не мечом, но приписывается ему в как событие? И тогда мы будем увеличивать урон именно от меча, а не другой, навязанный сторонним плагином. В итоге, эффекта от действия увеличения временной переменной не будет. Я правильно понял?
---
Хотя, какая вообще разница, чем был нанесён урон? На что это влияет? Нам же нужно только модифицировать конечный результат для моба. А случаи, когда этого делать не надо, можно описать флагами.
А вот это странно:
Код:
Activator-COMMAND-5:
override: false
regex: true
command: О плейсхолдерах(\s+\S+){3,}
flags: []
actions:
- MESSAGE=&r
- MESSAGE=&c[&e▼&c]&3------------------------------------------------&c[&e▼&c]
- MESSAGE=Итак, чтобы узнать, какой аргумент ввёл игрок в команде,
- MESSAGE=нужно в действиях указать &aплейсхолдер&r -
- MESSAGE=&d%&darg&c<&3НомерНужногоАргумента&c>&d%
- MESSAGE=Например, второй аргумент в данной команде был "&d%arg2%&r".
- MESSAGE=А вот пятый, если он был:&r "&d%arg5%&r".
- MESSAGE=&r
- MESSAGE=Можно вывести все аргументы после конкретного:&d
- MESSAGE=&d%&dargs&c<&3НомерНужногоАргумента&c>&d%&r.
- MESSAGE=Пример. Это все аргументы, которые были после третьего,
- MESSAGE=не включая третий аргумент:&r "&d%args3%&r"
- MESSAGE=&r
- MESSAGE=Можно вывести все аргументы, кроме команды - &d%&dargs%&r:&e
- MESSAGE="&d%args%&r"
- MESSAGE=&r
- MESSAGE=Завершая тему плейсхолдеров в командах, можно узнать
- MESSAGE=количество аргументов - &d%&dArgsCount%&r:&a %ArgsCount%
- MESSAGE=&r
- MESSAGE=Рассмотрим второй вариант создания активатора &bCOMMAND&r.
- MESSAGE=Наберите &e/продолжение 2 &2ЛюбойАргумент
reactions: []
@fromgate, есть одна интересная диллема с активатором REGION. Когда я просто стою в регионе, его запуск проходит по секундному плану. Однако он запускается всегда, если я переступаю с блока на блок, игнорируя секундный интервал. Это, конечно, хорошо для быстрого запуска EXEC'a на ивенте для проверки, участвуют ли ещё нужные игроки, но столь быстрая проверка так же может вызывать падения TPS.
Так вот, может можно было бы дополнить активатор выбором типа проверки: поблочно или по времени, что указано в конфиге? Кстати о времени. Можно было бы ещё сделать возможность выбирать его в самом активаторе.
Добавлю. Вроде уже решил проблем с двоеточием.
Нет:
Код:
- MESSAGE=&r
- MESSAGE=&c [&e▼&c]&3-----------------------------------&c[&e▼&c]
- MESSAGE=Этот активатор реагирует на текст. Разный текст. В разных вариациях. Например, если Вы видите сообщение "Привет, это я", то Вам можно дать слиток золота.
- MESSAGE=&r
- MESSAGE=Рассмотрим сам активатор и его аргументы. Создание:
- MESSAGE=
Ещё трабл с переносом строки:
Код:
- MESSAGE=&r
- MESSAGE=&c [&e▼&c]&3-----------------------------------&c[&e▼&c]
- MESSAGE=Этот активатор реагирует на текст. Разный текст. В разных вариациях. Например, если Вы написали сообщение "&aПривет, это я&r", то Вам можно дать слиток золота. Кстати, можете это сделать :)
- MESSAGE=&r
- MESSAGE=Рассмотрим сам активатор и его аргументы. Создание:&r
- MESSAGE=&e/ra add &bMESSAGE &2Activator-Name &6[&dsource:&3ТипИсточника&6] &6[&dtype:&3СпособСравнения&6] &6[&dmask:&3ШаблонСообщения&6]
- MESSAGE=&r
- MESSAGE=Рассмотрим отдельно все аргументы. Напишите соответствующие команды:&r
- MESSAGE=&e/О типах источника
- MESSAGE=&e/О способах сравнения
- MESSAGE=&e/О допустимом шаблоне сообщения
- MESSAGE=&r
- MESSAGE=На закуску предлагаю почитать о производимых активатором плейсхолдерах:&r &e/О плейсхолдерах в &bMESSAGE
- MESSAGE=&r
- MESSAGE=Ваше задание после изучения активатора &bMESSAGE&r:&r
- MESSAGE=&e/О задании для &bMESSAGE
@fromgate, а при использовании типа маски REGEX в активаторе MESSAGE, по какому принципу дополнительно идёт сравнение? По EQUAL или по CONTAINS?
А здесь должно быть EQUALS, а не EQUAL?
http://reactions.fromgate.ru/message.htm@fromgate, а как насчёт плейсхолдера, который бы содержал число регионов, в которых игрок числится владельцем, жителем и... Ну, сумму можно через CALC сделать. Можно было бы организовать "аренду" регионов у кого-то...

А тут что?
Новые плейсхолдеры в активаторе MESSAGE не распознают числа корректно (или я не понимаю что такое "целые" и "дробные" числа?):
Код:
Activator-MESSAGE-10:
mask: За $50 купил 9 слив по $5.4. Осталось $1,4, то есть ещё $1 40 центов.
type: EQUAL
source: CHAT_INPUT
flags:
- DELAY_PLAYER=Activator-MESSAGE-10
actions:
- MESSAGE=&r
- MESSAGE=&c [&e▼&c]&3-----------------------------------&c[&e▼&c]
- DELAY_PLAYER=150ms/Activator-MESSAGE-10
- MESSAGE=Рассмотрим составляющие фразы "&eЗа $50 купил 9 слив по $5.4. Осталось $1,4, то есть ещё $1 40 центов.&r":&r
- MESSAGE=&r
- MESSAGE=Пятое слово:&r "&a%word5%&r";
- MESSAGE=Третье целое число:&r "&a%int3%&r";
- MESSAGE=Третье число:&r "&a%num3%&r";
- MESSAGE=Количество слов:&r &a%word-count%&r;
- MESSAGE=Количество целых чисел:&r &a%int-count%&r;
- MESSAGE=Количество чисел:&r &a%num-count%&r.
reactions: []