Начнем с азов, что такое макросы? Макрос в World of Warcarft — это
набор слеш-команд, которые выполняются по нажатию одной кнопки. Макросы
используют для повторения определенных (часто — монотонных) действий и
самое главное, для ведения боя. В World of Warcraft в любое время можно создать 38 макросов, которые
будут доступны всем вашим персонажам, и еще 18 индивидуальных для
каждого персонажа отдельно. Итого 54 штуки, это очень внушительный
арсенал в умелых руках. В патче 3.0 макросы можно сохранять на сервере,
даже если вы играете с нескольких компьютеров, ваши макросы всегда с
вами.
Длина макросов ограничена 255-ю символами. Мало это или много? Этого
достаточно для решения очень многих задач. Чтобы создать макрос, нужно
ввести в строке чата /macro или /макро. Приступим:
Быстрое переключение талантов
/run if( GetActiveTalentGroup() == 1 ) then DEFAULT_CHAT_FRAME:AddMessage("Активируем ПВЕ спек");SetActiveTalentGroup(2) else DEFAULT_CHAT_FRAME:AddMessage("Активируем ПВП спек");SetActiveTalentGroup(1) end
Если у вас есть двойная специализация, вы сможете быстро сменить свой билд нажатием одной кнопки. Впишите свой текст в строчках DEFAULT_CHAT_FRAME:AddMessage, это сообщение выведется в чат.
Переключение талантов и экипировки
/equipset [spec:1] Танк; Фури /usetalents [spec:1] 2; 1
Вместо «Танк» и «Фури» впишите название своих комплектов вещей. Если
они у вас не включены — зайдите в настройки и поставьте галочку
«Использовать управление экипировкой».
Переключение оружия
#showtooltip [mod] 0 11; 17 /equipslot 17 0 11
Создаем макрос без иконки, вместо 11 вписываем номер ячейки в
рюкзаке, в которой лежит сменное оружие. 0 — это номер сумки в рюкзаке.
Стартовая сумка на 16 ячеек имеет порядковый номер 0, вторая — 1, и так
далее. Если предмет лежит не в первой сумке, то отсчет ячейки нужно
начинать c начала.
#showtooltip [mod] 0 11; 17 /equipslot 17 0 11
17 — это ячейка персонажа, в которую одевается офф-хенд. 16 для мейн-хенда, соответственно.
Весь список ячеек экипировки:
Вызвать случайного пета
/run CallCompanion("CRITTER", random(GetNumCompanions("CRITTER")))
Безопасный вызов маунта
/run g,f={G,G,G},{F,F,F};z={["Dalaran"]=g,["Wintergrasp"]=g,["Krasus' Landing"]=f};f=z[GetSubZoneText()]or z[GetZoneText()]or(IsFlyableArea()and f)or g;z=(IsMounted()or CallCompanion("MOUNT",f))and IsFlying()or Dismount()
Если в локации можно летать, вызовет флай-маунта, если нет — вызывает
обычного. Первое нажатие вызывает маунта, второе — дизмаунт, если
персонаж находится в полете, вас не сбросит с маунта вниз, так что можно
не бояться случайного нажатия.
Вместо G впишите номера своих наземных маунтов из закладки Персонаж —> Транспорт, вместо F — номера флай-маунтов. Ячейки считаются слева направо, сверху вниз.
Ссылка на профессию в чат
Вместо «Алхимия» впишите название своей профессии и отредактируйте
сообщение, которое будет выводиться перед ссылкой. Не забывайте, что
максимальная длина макроса — 255 символов.
/script CastSpellByName("Алхимия"); SendChatMessage("Фласки по 20 голд: "..GetTradeSkillListLink(),"CHANNEL",nil, GetChannelName("Торговля: Город")); CloseTradeSkill();
Ставим марки на цели
/script SetRaidTarget("target", 8); /raid Бьем череп %t ({skull}) /script SetRaidTarget("target", 7); /raid Затем крест %t ({X}) /script SetRaidTarget("target", 5); /raid Луна в овцу (%t) {moon} /script SetRaidTarget("target", 1); /raid Звезду в сап %t ({star})
Это только пример, вы можете сами написать нужный макрос, синтаксис такой:
/script SetRaidTarget("unit", iconId);
unit — моб или игрок, на которого будет вешаться марка.
Можно поставить «target», но удобнее будет «mouseover» — не нужно выбирать цель, достаточно навести мышку и нажать макрос.
iconId — иконка, значения от 1 до 8 (0 = нет иконки)
Максимальное отдаление камеры
/console CameraDistanceMaxFactor 3.4 /console CameraDistanceMax 50
Игроки без фласок
/run nf="[Фласки!]: ";for i=1,GetNumRaidMembers()do for b=1,41 do ufl=UnitAura('raid'..i,b);if ufl then if strfind(ufl,"Flask")then break;end;elseif b==41 then nf=nf..UnitName('raid'..i).." ";end;end;end;SendChatMessage(nf,"raid");
Игроки без еды
/run nfb="[Еда!]: ";for i=1,GetNumRaidMembers()do for b=1,40 do ua=UnitAura('raid'..i,b);if ua=="Well Fed"or ua=="Food"then break;elseif b==40 and ua~="Well Fed"then nfb=nfb..UnitName('raid'..i).." ";end;end;end;SendChatMessage(nfb,"raid");
Проверяем вагонов в рейде, в чат выведется список рейдеров, которые не выпили фласки или не съели своей еды для баффа. скопипастил отсюда
|