Руководство по макросам. Часть IV, специально для mmoboom.ru
Оглавление
- Опции
- Что такое опции и зачем они нужны?
- Панель действия или actionbar
- Кнопка мыши или button
- Прерывания потокового заклинания или channeling
- В бою или combat
- Мертвая цель или dead
- Одето на тебе или equipped
- Существует ли цель или exists
- Можно летать или flyable
- На летающем средстве передвижения или flying
- В группе или group
- Враждебна цель или harm
- Дружелюбная цель или help
- В здании или indoors
- Зажимаем доп. кнопку или modifier
- На верховом животном или mounted
- Не в здании или outdoors
- Цель в группе или party
- Указанный питомец активен или pet
- Цель в рейде или raid
- В форме или stance
- В стелсе или stealth
- В воде или swimming
- Цель или target
- Интерфейс транспорта у цели или unithasvehicleui
- Интерфейс транспорта у вас или vehicleui
- Дополнительно о опциях
- FAQ
- Как сократить макрос?
- Что делать, если команда макроса не поддерживает нужную опцию?
- Мне нужна помощь по макросам, куда мне написать?
К оглавлению
Опции
Что такое опции и зачем они нужны?
Опции — это набор условий, нужных для уменьшения засорения кнопок на панели действий и упрощение игры в целом.
Пример, где нам понадобятся опции
Ситуация такая. Мы друид и нам нужно, когда мы ни в какой форме не стоим, использовать обычный Волшебный огонь, а когда стоим в облике кошки или медведя, использовать Волшебный огонь (облик зверя). Без опций, нам нужно использовать две разные кнопки. С опциями, можно уместить эти две способности, на одной кнопке. И если мы не стоим ни в какой форме, тогда игра нам сама подставит на эту кнопку обычный Волшебный огонь, а если мы в кошачьем или медвежьем облике, игра нам подставит Волшебный огонь (облик зверя) на эту же самую кнопку.
Вот собственно, сам этот макрос с использованием опций:
/cast [stance: 0] Волшебный огонь
/cast [stance: 1/3] Волшебный огонь (облик зверя)
/cast [stance: 1/3] Волшебный огонь (облик зверя)
Так же у некоторых опций есть аргументы, это часть опции, которую можно изменить.
К оглавлению
Панель действия или actionbar
Опция actionbar задает условие проверки, активна ли сейчас заданная главная панель действий, если да, выполняет заданную команду, если нет, ничего не делает.
Шаблон:
[actionbar: %номер активной панели%]
Пример:
/cast [actionbar:1] Омоложение
/cast [actionbar:2] Гнев
Этот макрос будет использовать Омоложение, если активна первая панель на главной панели и будет использовать Гнев, если активна вторая панель на главной панели./cast [actionbar:2] Гнев
Аналогичная опция: bar
К оглавлению
Кнопка мыши или button
Опция button, задает условие проверки, нажали ли мы заданной кнопкой мыши, если да, выполняет заданную команду, если нет, ничего не делает.
Шаблон:
[button: %номер кнопки мыши]
%номер кнопки мыши%:- Левая кнопка мыши
- Средняя кнопка мыши
- Правая кнопка мыши
- Кнопка 4
- Кнопка 5
Пример:
/cast [button: 1] Восстановление
/cast [button: 2] Омоложение
Этим макросом, будет использоваться Восстановление, если макрос была нажата ЛКМ и будет использоваться Омоложение, если макрос была нажата СКМ./cast [button: 2] Омоложение
Аналогичная опция: btn.
К оглавлению
Прерывания потокового заклинания или channeling
Опция chaneling, задает условие проверки, идет ли сейчас заданное потоковое заклинание, если да, выполняет заданную команду, если нет, ничего не делает.
Шаблон:
[channeling: %Имя потокового заклинания%]
Пример:
/cast [channeling: Пытка разума] Пытка разума
Этим макросом, мы применим Пытку разума, если сейчас используем Пытку разума К оглавлению
В бою или combat
Опция combat, задает условие проверки, находитесь ли вы в бою. Если да, тогда выполняет команду макроса, а если нет, ничего не делает.
Шаблон:
[combat]
Пример:
/cast [combat] Возрождение
/cast Оживление
Этим макросом, мы будем использовать Возрождение, если находимся в бою и Оживление, если находимся не в бою./cast Оживление
К оглавлению
Мертв или dead
Опция dead задает условие, мертва ли ваша цель, если мертва, делает заданную команду, если не мертва, ничего не делает.
Шаблон:
[dead]
Пример:
/cast [dead] Оживление
/cast Омоложение
Этим макросом, мы будем использовать Оживление, если цель мертва и использовать Омоложение, если цель жива./cast Омоложение
К оглавлению
Одето на тебе или equipped
Опция equipped задает условие проверки, надет ли на вас заданный тип предмета, если да, выполняет заданную команду, если нет, ничего не делает.
Шаблон:
[equipped: %тип предмета, тип оружия или подтип оружия%]
%Типы предметов%Тип оружия:
%Тип оружия%- Одноручное
- Двуручное
Подтип оружия:
%Подтип оружия%- Кинжал
- Кистевое
- Одноручный топор
- Одноручное дробящее
- Одноручный меч
- Древковое
- Посох
- Двуручный топор
- Двуручное дробящее
- Двуручный меч
- Лук
- Арбалет
- Огнестрельное
- Метательное
- Жезл
- Удочка
Пример:
/cast [equipped: Двуручное дробящее] Зимний горн
Этим макросом, мы используем Зимний горн, если на нас надето Двуручное дробящее оружие.Аналогичная опция: worn
К оглавлению
Существует ли цель или exists
Опция exists задает условие проверки, существует ли у вас цель, если да, выполняет заданную команду, если нет, ничего не делает.
Шаблон:
[exists]
Пример:
/cast [exists] Омоложение
Этим макросом мы наложим Омоложение на цель, если она существует.Так же эта опция может проверять, существует ли заданный unitid.
Шаблон:
[target=%unitid%, exists]
Пример:
/cast [target=focus, exists] Омоложение
Этим макросом мы наложим Омоложение на фокус, если он существует.К оглавлению
Можно летать или flyable
Опция flyable задает условие проверки, можно здесь летать или нет. Если можно выполняет заданную команду, если нет, ничего не делает.
Шаблон:
[flyable]
Пример:
/cast [flyable] Черный дракон
Этим макросом мы используем Черный дракон, если мы находимся в зоне, где можно летать.К оглавлению
На летающем средстве передвижения или flying
Опция flying задает условие проверки, находитесь ли вы сейчас на летающем средстве передвижения, если да, выполняет заданную команду, если нет, ничего не делает.
Шаблон:
[flying]
Пример:
/cast [flying] Замедленное падение
Этим макросом мы используем Замедленное падение если находимся на летающем средстве передвижения.К оглавлению
В группе/рейде или group
Опция group задает условие проверки, находитесь ли вы в группе/рейде.
Шаблон:
[group: %тип группы игроков%]
%тип группы игроков%:party — группа (до 5 человек)
raid — рейд (до 40 человек)
Пример:
/cast [group: raid] Спокойствие
Этим макросом мы используем Спокойствие, если находимся в рейде.Примечание:
[group: raid] включает в себя [group: party]
К оглавлению
Не дружелюбная цель или harm
Опция harm задает условие проверки, враждебна ли ваша цель, если да, выполняет заданную команду, если нет, ничего не делает.
Шаблон:
[harm]
Пример:
/cast [harm] Гнев
Этим макросом, мы используем Гнев если цель враждебна.К оглавлению
Дружелюбная цель или help
Опция help задает условие проверки, дружелюбна ли ваша цель, если да, выполняет заданную команду, если нет, ничего не делает.
Шаблон:
[help]
Пример:
/cast [help] Омоложение
Этим макросом мы используем Омоложение, если цель дружелюбна.К оглавлению
В здании или indoors
Опция indoors задает условие проверки, находитесь ли вы в помещении, если да, выполняет заданную команду, если нет, ничего не делает.
Шаблон:
[indoors]
Пример:
/cast [indoors] Облик кошки
В этом макросе, мы применяем Облик кошки, если находимся в здании.К оглавлению
Зажимаем доп. кнопку или modifier
Опция modifier задает условие проверки, зажат ли ctrl и/или shift и/или alt, если да, выполняет заданную команду, если нет, ничего не делает.
Шаблон:
[modifier: %shift/alt/ctrl%]
Если не писать shift, alt и ctrl, тогда при зажатой любой из этих кнопок, будет выполняться заданная команда.Что бы команда выполнялась и при зажатом ctrl и при зажатом шифте(или можете использовать другие варианты), тогда надо написать их через слеш: [modifier: alt/ctrl]
Пример:
/cast [modifier: shift] Омоложение
/cast [modifier: alt/ctrl] Восстановление
Этим макросом, мы используем Омоложение, если зажата кнопка shift и используем Восстановление, если зажата кнопка alt или кнопка ctrl./cast [modifier: alt/ctrl] Восстановление
Аналогичная опция: mod
К оглавлению
На верховом животном или mounted
Опция mounted задает условие проверки, находитесь ли вы на верховом животном, если да, выполняет заданную команду, если нет, ничего не делает.
Шаблон:
[mounted]
Пример:
/cast [maunted] Омоложение
Этим макросом мы используем Омоложение, если находимся на верховом животном.К оглавлению
Не в здании или outdoors
Опция outdoors задает условие проверки, находимся ли мы вне здания, если да, выполняет заданную команду, если нет, ничего не делает.
Шаблон:
[outdoors]
Пример:
/cast [outdoors] Механоцикл
Этим макросом мы используем Механоцикл, если находимся вне здания.К оглавлению
Цель в группе или party
Опция party задает условие проверки, находится ли ваша цель в группе, если да, выполняет заданную команду, если нет, ничего не делает.
Шаблон:
[party]
Пример:
/cast [party] Знак дикой природы
Этим макросом мы наложим Знак дикой природы на цель, если она в вашей группе.К оглавлению
Указанный питомец активен или pet
Опция pet задает условие проверки, активен ли сейчас заданный питомец, если да, выполняет заданную команду, если нет, ничего не делает.
Шаблон:
[pet:%тип или имя питомца%]
Что бы узнать %тип или имя питомца%, нужно в игре вызвать нужного вам питомца и написать в чате вот такой скрипт:/run print(UnitCreatureFamily("pet"))
После этого, в чате будет написан %тип или имя питомца%.Пример:
/cast [pet: Страж Скверны] Метание топора
/cast [pet: Суккуб] Удар кнутом
Этим макросом, мы используем Метание топора, если сейчас активен страж Скверны и используем Удар кнутом, если активен Суккуб./cast [pet: Суккуб] Удар кнутом
К оглавлению
Цель в рейде или raid
Опция raid задает условие проверки, находится ли ваша цель в рейде, если да, выполняет заданную команду, если нет, ничего не делает.
Шаблон:
[raid]
Пример:
/cast [raid] Знак дикой природы
Этим макросом мы наложим Знак дикой природы на цель, если она в нашем рейде.К оглавлению
В форме или stance
Опция stance задает условие проверки, находитесь ли вы в определенной форме, если да, выполняет заданную команду, если нет, ничего не делает.
Шаблон:
[stance: %номер стойки/формы%]
Древо Жизни и Облик лунного совуха, тогда у Облика птицы и Облик стремительной птицы будет 5 № стойки.
%номер стойки/формы%Что бы задать сразу несколько стоек, напишите их через слеш: [stance: 1/2].
Пример:
/cast [stance: 0/4] Волшебный огонь
/cast [stance: 1/3] Волшебный огонь (облик зверя)
Этим макросом, мы используем обычный Волшебный огонь, если находимся в человеческом облике или в Походном облике и используем Волшебный огонь (облик зверя), если находимся в облике кошки или медведя. /cast [stance: 1/3] Волшебный огонь (облик зверя)
Аналогичная опция: form
К оглавлению
В стелсе или stealth
Опция stealth задает условие проверки, находимся ли мы сейчас в незаметности, если да, выполняет заданную команду, если нет, ничего не делает.
Шаблон:
[stealth]
Пример:
/cast [stealth] Обшаривание карманов
Этим макросом, мы используем Обшаривание карманов, если находимся в невидимости.К оглавлению
В воде или swimming
Опция swimming задает условие проверки, находимся ли мы сейчас в воде, а точнее плывем ли мы сейчас, если да, выполняет заданную команду, если нет, ничего не делает.
Шаблон:
[swimming]
Пример:
/cast [swimming] Водный облик
/cast Походный облик
Этим макросом, мы используем Водный облик, если сейчас плывем и используем Походный облик, если НЕ плывем./cast Походный облик
К оглавлению
Цель или target
Опция target позволяет выполнить заданное действие на заданную цель, без смены основной цели.
Шаблон:
[target=%unitid%]
Player — игрок.
targettargettarget — цель цели вашей цели, target'ов можно писать сколько душе угодно, главное чтобы в рамки по количеству символов уложиться
focus — сохраненная цель
arenaN — соперник на арене с индексом N(1, 2, 3, 4 или 5)
bossN — активный босс текущего боя с индексом N(1, 2, 3 или 4)
mouseover — игрок который в данный момент оказался под курсором мыши
partyN — n-ый член группы, не считая себя(1, 2, 3 или 4)
partypetN — питомец n-ого члена группы (1, 2, 3 или 4)
pet — питомец игрока
raidN — n-ый член рейда (1, 2, 3,..., 40)
raidpetN — n-ый питомец члена рейда (1, 2, 3,..., 40)
npc — NPC с которым игрок в данный момент взаимодействует
Примечание: ID целей можно совмещать, то есть можно написать partypet3targettarget, что будет означать цель цели питомца третьего игрока в группе, наверное запутанно... Ну суть ясна, я думаю
%unitid%targettargettarget — цель цели вашей цели, target'ов можно писать сколько душе угодно, главное чтобы в рамки по количеству символов уложиться
focus — сохраненная цель
arenaN — соперник на арене с индексом N(1, 2, 3, 4 или 5)
bossN — активный босс текущего боя с индексом N(1, 2, 3 или 4)
mouseover — игрок который в данный момент оказался под курсором мыши
partyN — n-ый член группы, не считая себя(1, 2, 3 или 4)
partypetN — питомец n-ого члена группы (1, 2, 3 или 4)
pet — питомец игрока
raidN — n-ый член рейда (1, 2, 3,..., 40)
raidpetN — n-ый питомец члена рейда (1, 2, 3,..., 40)
npc — NPC с которым игрок в данный момент взаимодействует
Примечание: ID целей можно совмещать, то есть можно написать partypet3targettarget, что будет означать цель цели питомца третьего игрока в группе, наверное запутанно... Ну суть ясна, я думаю
Пример:
/cast [@focus] Превращение
Этим макросом, мы применим Превращение на наш фокус, не меняя основной цели.Сокращение:
@%unitid%
К оглавлению
Интерфейс транспорта у цели или unithasvehicleui
Опция unithasvehicleui задает условие проверки, есть ли у вашей цели интерфейс транспорта, если да, выполняет заданную команду, если нет, ничего не делает.
Шаблон:
[unithasvehicleui]
К сожалению, макроса с этой опции я не придумал, но думаю понятно, где это используется.К оглавлению
Интерфейс транспорта у вас или vehicleui
Опция vehicleui задает условие проверки, есть ли у вас сейчас интерфейс транспортного средства, если да, выполняет заданную команду, если нет, ничего не делает.
Шаблон:
[vehicleui]
К сожалению и к этой опции я не придумал макроса. Если у вас в загашнике есть подобный, прошу им поделиться.К оглавлению
Дополнительно о опциях
Конъюнкция(логическое "И") в опциях
Конъюнкция или в простонародии логическое "И" или просто "И", позволяет задавать сложные условия из опций, при которых команда макроса будет выполняться, только когда выполняются ВСЕ заданные условия.
Шаблон:
[%1ая опция%, %2ая опция%, ....%Nая опция%]
Т.е. что бы задать коъюнкцию опций, нужно написать их в квадратных скобках через запятую.Пример:
/cast [stance:1/3, harm] Волшебный огонь (облик зверя)
Этим макросом мы используем Волшебный огонь (облик зверя), если находимся в облике кошки или медведя И если наша цель при этом, враждебна. Т.е. само условие будет звучать так: "Если вы находитесь в облике кошки или медведя И ваша цель враждебна, тогда выполняй заданную команду".К оглавлению
Дизъюнкция(логическое "ИЛИ") в опциях
Дизъюнкция или логическое "ИЛИ" или просто "ИЛИ", позволяет создавать сложные условия из опций, при которых команда макроса будет выполняться, когда будет выполняться ХОТЯ БЫ ОДНА из заданных условий.
Шаблон:
[%1ая опция%][%2ая опция%]...[%Nая опция%]
Т.е. что бы задать дизъюнкцию опций, нужно записать их подряд, заключая каждое условие в отдельные квадратные скобки.Перед тем как прочитать пример: дизъюнкцию и конъюнкцию в опциях можно использовать одновременно, то есть можно задавать более сложные условия из опций. Oдно из таких условий, будет представлено в примере ниже.
Пример:
/cast [@focus, exists][harm] Превращение
Этим макросом мы используем Превращение, если у нас существует фокус ИЛИ наша цель враждебна. Замечу, если у нас существует фокус, а это условие задается двумя опциями, тогда Превращение будет применяться на фокус, если же его не существует, тогда макрос проверит, враждебна ли наша цель, если да, то мы применим Превращение к нашей цели, если нет, то макрос не сработает вообще.К оглавлению
Отрицание в опциях
Отрицание в опциях, задается прибавлением префикса no к опции. Оно дает нам противоположное условие опции, то есть, если combat проверяет, находимся ли мы в бою, то эта же опция с префиксом nocombat будет проверять, НЕ находимся ли мы в бою и только тогда выполнять заданную команду.
Шаблон:
no%опция%
%опция% может быть любая, КРОМЕ target, для неё логическое отрицание не допустимо, потому что эта опция не задает условие.Пример:
/cast [nocombat, dead] Оживление
Этим макросом мы используем Оживление, если находимся НЕ в бою И наша цель мертва.К оглавлению
FAQ
В этом коротеньком FAQ, я постараюсь ответить на достаточно популярные общие вопросы по макросам. FAQ будет пополняться.
Как сократить макрос?
Если вам понадобилось сократить макрос, то скорее всего вы превысили лимит в 255 символов. Вот 4 КЭПовских совета как сократить макрос.
1) Заменить все команды и опции на более коротких "сородичей", по возможности. Такие "сородиче" написаны в конце описания команды или опции, если они конечно вообще существуют, под названием "Аналогичные команды" и "Аналогичные опции" соответственно. Так же для сокращения макроса можно смешивать русские и английские названия команд.
2) Перечитать макрос и понять, нет ли там тавтологии и ненужных вещей.
3) Так же, если у вас имеется команда cast или аналогичные ей команды, которые идут несколько раз подряд, то можно с такого макроса:
/cast [mod:ctrl] Оживление
/cast [mod:shift] Восстановление
Сократить до такого:/cast [mod:shift] Восстановление
/cast [mod:ctrl] Оживление; [mod:shift] Восстановление
Т.е. мы записали тоже самое, только через точку с запятой, при этом убрав саму команду cast.4) Убрать лишние пробелы.
К оглавлению
Что делать, если команда макроса не поддерживает нужную опцию?
И так, этот действенный метод, мне пришел в голову, когда я помогал одному человеку в теме помощи в макросах.
1) Первое что мы делаем, это создаем отдельный макрос, с нужной нам командой. После создания такого макроса, мы перетаскиваем его на панель задач, в какой-нибудь тайный угол, в который вы тыкаете очень редко.
2) Теперь мы пишем в чате команду /framestack, появляется окошко. Мы наводим мышкой на наш созданный макрос и в нашем окошке ищем строчку, подобную этой: MultiBarBottomRightButton6, это строчка, отвечает за название фрейма кнопки.
3) Теперь создаем наш основной макрос, на который мы будем нажимать. В этом макросе, должен быть вот такой текст:
/click [%нужная опция%] %название фрейма кнопки%
Список допустимых опций:
actionbar(bar)
button(btn)
channeling
combat
dead
equipped(worn)
exists
flyable
flying
group
harm
help
indoors
modifier(mod)
mounted
outdoors
party
pet
raid
stance(form)
spec
stealth
swimming
target=UnitId(@unitid)
unithasvehicleui
vehicleui
%нужная опция ограничивается списком под спойлером%actionbar(bar)
button(btn)
channeling
combat
dead
equipped(worn)
exists
flyable
flying
group
harm
help
indoors
modifier(mod)
mounted
outdoors
party
pet
raid
stance(form)
spec
stealth
swimming
target=UnitId(@unitid)
unithasvehicleui
vehicleui
К оглавлению
Мне нужна помощь по макросам, куда мне написать?
Самый легкий вопрос в нашем FAQ, который решается поиском Задавать вопросы по макросам или спрашивать как написать тот или иной макрос, можно в ЭТОЙ теме.
комментарии (50)