аждый из наборов условий есть простым списком разделенный запятыми. Условия могут задаваться в любом порядке, но [target=] всегда учитывается первым, перед любыми другими условиями. О разделителе «,» (запятая) можно думать как о слове «и». Условие вроде [help, nodead, target=focus] означает «Мой фокус дружественная цель И она не мертва».
Замечание: Условия чувствительны к регистру. Если использовать [Help] вместо [help], макрос выдаст ошибку. Однако, это не относится к параметрам условий (описанных ниже). По-прежнему, обычно лучше писать прописными буквами. Записывайте заклинания и предметы точно так же, как вы видите названия в их подсказках. И в точности следуйте примерам в этом руководстве.
Условия сами по себе строятся из нескольких блоков. Во-первых, как вы могли видеть в примере с «nodead», можно добавить приставку «no» перед условием для получения обратного значения. Заметьте, что [nohelp] не обозначает тоже что и [harm]. [harm] и [help] вернут истинное значение как минимум при наличии цели. По мимо этого, существуют некоторые цели, которым невозможно помочь или навредить (игроки с выключенным ПвП, небоевые питомцы, эскорт-квесты и так далее).
Некоторые из условий также требуют своего собственного набора параметров. Например, [stance] обозначает «Если включена любая стойка» (полезно для всех классов со стойками, кроме воинов так как они всегда находятся в стойке). Но можно указать одну или несколько конкретных стоек для проверки. Набор параметров начинается с двоеточия «:» и каждый параметр отделяется косой чертой «/», которая значит «или». Вот общая иллюстрация синтаксиса для одного условия, а все что в угловых скобках «<>» опционально.
Вот простой пример использования умения Shield Bash в Defensive или Battle стойках, но если активна Berserker стойка – она переключается на Defensive.
/cast [stance:1/2] Shield Bash; Defensive Stance
Примечание: приставка «no» применяется ко всему условию и его параметрам. [nostance:1/2] будет означать «любая из стоек кроме 1 или 2»
1.4.3. Пустые параметры
Путаница возникает при использовании команд, не требующих параметров. Самая распространенная ошибка в написании макроса – добавлять лишнюю точку с запятой в конце, что приводит к неожиданным глюкам. Рассмотрим такой макрос:
/petattack [target=focus, harm];
Для не посвященных, выглядит будто я посылаю питомца на цель в фокусе если она враждебна, и больше ничего. Но давайте разобьем макрос на составляющие:
/petattack [target=focus, harm] ; \________/ \__________________/ V V V | | | | | command options | | parameters (empty) | | | options (empty) | parameters (empty)
Видите дополнительный пустой набор опций и параметров? Запомните – пустые наборы опций всегда возвращают «истину», так что второй пустой параметр передается /petattack если первое условие не было истинно.
1.4.4. Пустые состояния
Иногда нужна команда использующая умения при нужных условиях на определенную цель, но ведущая себя как обычно, если условия не истинны. В этом случае вы пожелаете использовать пустой набор условий, который всегда возвращает истину. Этот макрос прочитает Flash of Light на цель под курсором вашей мыши. Если цель под мышью враждебна или ее просто нет, макрос поведет себя как обычная команда /cast Flash of Light и выполнит заклинание на вашу цель, учитывая опции по авто-использованию умений на себя в настройках интерфейса.
Некоторые команды разрешают использовать напрямую ID целей как свои параметры. Например, /target party1 использует целью первого человека в вашей партии. Команда /target [target=party1] более понятна, но ведет себя абсолютно так же. В то же время, разработчики в множестве случаев не дают использовать ID целей для проверки условий напрямую, по этому приходится использовать один или другой способ в зависимости от ситуации. К примеру, такой макрос не будет работать как надо:
/target [target=focus, dead] party1
WoW проигнорирует параметр party1, так как мы уже установили цель с помощью [target=]. Есть правда особые исключения из этого правила. Пару команд имеют «ключевые цели» в качестве основных для этих команд. Если вы используете некую цель в [target=], WoW разрешит задать еще одну, либо выберет цель по умолчанию, если ничего не задано. Этот нюанс требует конкретного примера:
Здесь «ключевая цель» это фокус. Так как используется [target=focus], WoW передаст цель команде /focus. Можно убрать «target» в конце, так как команда /focus берет по умолчанию вашу текущую цель. Ниже приведен список всех команд с их ключевыми целями и целями по умолчанию, если такие есть. Повторим еще раз, для ясности – ключевая цель это такая цель, которую можно использовать в [target=] и она позволит вам передать команде еще одну другую цель. Цель по умолчанию – эта такая цель, которая будет передана команде если цели не задано.
Команда Ключевая цель Цель по умолчанию /target target /focus focus target /startattack target target /petattack pettarget target
1.5. Условные переходы
Теперь рассмотрим полный список условий, и что они означают. Каждое из условий в свою очередь будет рассмотрено более подробно далее в руководстве.
1.5.1. Полный список условий
Вот полный список условий доступных в системе макросов. Патч 2.0 поставил цель убрать из игры все старые «умные макросы», которые позволяли людям играть спамя одну кнопку. Но некоторые из задач, решаемых за счет макросов получили статус ОК и благословение *Близард* в качестве опций для макросов.
Если вы не находите в списке какое-либо условие, значит, не существует способов проверять его и выполнять нужные действия в бою. Это не обсуждается, но ситуация может изменится в будущем. Сокращенная запись указана в скобках. { help - Может накладывать дружественные заклинания на цель } { harm - Может накладывать враждебные заклинания на цель } { exists - Цель существует } { dead - Цель мертва } { stance (form) - Находиться в стойке (форме) } { stealth – Скрыт } { modifier (mod) - Удерживается заданная кнопка } { button (btn) - Макрос активирован с заданной кнопкой мыши } { equipped (worn) - Одет нужный тип предмета (это может быть ячейка инвентаря, тип или подтип предмета) } { channeling - Заданное закливание передается (чэннелинг) } { actionbar (bar) - Выбрана заданная страница панели действий } { bonusbar - Заданная дополнительная панель активна } { pet – Указанный питомец доступен } { combat – В бою } { mounted - Верхом } { swimming – В воде } { flying – Верхом на летающем маунте } { flyable – В зоне, где разрешены летающие маунты } { indoors – В помещении } { outdoors – Вне помещения } { party – Цель является членом вашей партии } { raid – Цель является членом вашей партии или рейда } { group – Вы входите в указанную группу }
1.5.2. help и harm
Эти две опции мы уже рассмотрели довольно подробно. Мне нечего добавить больше, но ради полноты этот раздел останется здесь.
1.5.3. exists
Определяет существует ли заданная цель. Другими словами, если у вас нету цели, [exists] вернет ложь. Если у вас задан фокус, [target=focus, exists] вернет истину. Заметьте, что в некоторых случаях можно обойтись без [exists]. [help], [harm], [dead], [party], и [raid] все включают [exists] если они истинны.
1.5.4. dead
Если у вас есть цель, и она мертва, эта опция вернет истину.
Стойка - это термин широко используемый воинами, друидам, рогами (стелз), пристами (шадоуформа) и шаманами (призрачный волк). Стойки применяются только в тех ситуациях, когда определенные умения могут быть использованы в каких-либо формах. Именно по этому, ауры паладином (хоть они и находятся на панели форм) и аспекты охотников НЕ ЙаВЛЙаЮТСЙа стойками.
В простейшем случае, [stance], как упоминалось ранее, означает что вы находитесь в любой из стоек/форм. Это эквивалент [stance:1/2/3/.../n] где n это номер стойки. [stance:0] здесь то же что и [nostance], и возможно использовать условия вроде [stance:0/3], чтобы проверить находитесь ли вы в стойке 3 или вообще без стоек.
Стойки сами по себе имеют такие же порядковые номера, как их положение на панели стоек/форм. К примеру, формы друида начиная с Медведя, Аква-формы, Кота и формы для путешествий будет иметь номера стоек с 1 по 4. Чтобы вам было легче со всем этим, вот простая таблица с номерами: Warrior Druid Priest Rogue Shaman Стойка 1 Battle Bear Shadowform Stealth Ghostwolf Стойка 2 Defensive Aquatic Стойка 3 Berserker Cat Стойка 4 Travel Стойка 5 MK/ToL Стойка 6 Flight Примечание: если у друида отсутствует нужная форма, все более высокие числа сдвигаются в таблице вверх.
Примеры:
/cast [stance:1] Overpower; Battle Stance
Этот макрос – автоматизация Overpower в два щелчка мышкой. Если вы в неправильной стойке, первый клик переведет вас в нее. Когда вы перейдете в Battle Stance, использования макроса выполнит Overpower.
/cancelform [noform:0/1/3] /cast [form:1/3] Faerie Fire (Feral)(); Faerie Fire
В формах медведя или кота, этот макрос использует заклинание Faerie Fire (Feral), в форме для заклинаний – просто Faerie Fire. Во всех остальных формах, макрос переведет вас в заклинательную форму и наложит Faerie Fire.
1.5.6. stealth
Как может показаться рогам среди читателей, что поскольку у рог нет других стоек, эта опция работает идентично к [stance], [stealth] также применимо к расовому умению ночных эльфов Shadowmeld, Invisibility у магов и так далее.
1.5.7. modifier (mod)
Клавиши-модификаторы хороший способ сберечь место на панелях действий, а также путь к принятию определенных решений. Скажем вы хотите включить в макрос чтобы при обычном использовании он выполнял одно заклинание, а при зажатой кнопке-модификаторе – другое:
Этот макрос наложит дружественное заклинание на вашу цель, если это друг, а в противном случае – на цель вашей цели. Если же вы будете удерживать любую из кнопок-модификаторов, он выполнит Flash Heal, иначе - Greater Heal.
Конечно, кнопку-модификатор можно задать конкретно, например [modifier:shift/ctrl] означает «shift или control». Если хотите указать, что необходимы 2 модификатора одновременно: [modifier:shift, modifier:ctrl].
Будьте осторожны с установкой кнопок в ваших макросах. Если вы свяжите кнопку А с макросом, имеющим в себе, к примеру, модификатор [modifier:shift], а потом окажется, что существует клавиатурная комбинация shift-A, связанная с чем-либо еще - макрос не выполнится, так как клавиатурные комбинации имеют больший приоритет.
В то время как клавиатурными модификаторами могут быть только shift, ctrl или alt, существует также набор системных переменных, которые также можно использовать в качестве модификаторов условий. Скажем, переменная SELFCAST означает «если включен модификатор на автоматическое использование заклинаний на себя». По умолчанию, это alt (удерживание клавиши alt, во время использования заклинаний приведет к попытке наложить их на себя), хотя некоторые из аддонов дают возможность изменить это. Если сделать макрос вида:
Он будет работать как нужно, независимо от клавиши, установленной в качестве «использование-на-себя». Некоторые другие из переменных и их условия по умолчанию (с заметно меньшими возможностями применения) такие: { AUTOLOOTTOGGLE (shift) – авто-сбор предметов } { STICKYCAMERA (ctrl) – статичная камера } { SPLITSTACK (shift) – разделение стопок } { PICKUPACTION (shift) – действие для подбора предметов } { COMPAREITEMS (shift) – сравнение предметов } { OPENALLBAGS (shift) – открытие всех сумок } { QUESTWATCHTOGGLE (shift) – слежение за квестами }
1.5.8. button (btn)
Похожим на условие [modifier]образом, опция [button] позволяет вашему макросу отвечать напрямую, в зависимости от того какая кнопка мыши использована для активирования макроса. Номера кнопок с 1 по 5 соответствуют левой, правой или средней кнопкам, и кнопкам 4 и 5 (если такие есть на вашей мышке). Если ваш макрос активируется по нажатию клавиатурной комбинации, условие [button:1] будет всегда истинно.
#show Swift Green Mechanostrider /userandom [nobutton:2, flyable, nomounted] Ebon Gryphon; [nomounted] Black Battlestrider, Swift Green Mechanostrider /dismount [noflying] [button:2]
Поведение макроса когда вы не верхом: левый щелчок выберет Ebon Gryphon если это возможно (проверка flyable), в противном случае макрос выберет в качестве маунта либо Black Battlestrider, либо Swift Green Mechanostrider. Щелчок правой кнопкой по макросу всегда приведет к выбору одного из механических цыплят.
Поведение максроса, если вы верхом: левый щелчок приведет к спешиванию, если мы только не в полете. Правый щелчок – всегда приводит к спешиванию.
«Виртуальный щелчок» обычно можно игнорировать, но если вы используете аддон для модификации панелей действий, он может быть и полезным. Панели действий, реагирующие на различные состояния, преобразуют щелчки в виртуальные нажатия, чтобы определить какое из действий выполнить. Так как эти виртуальные нажатия зависят от конкретных аддонов, я не стану погружаться в дальнейшие объяснения.