Макросы позволяют Вам создавать личные прикольные команды, которые Вы можете исполнять нажатием всего лишь одной кнопки. Существует множество вариантов использования Макросов. Здесь будет показано несколько примеров, а остальные способы применения Макросов Вы можете придумать сами. Вы даже можете спросить предложений у друзей!
Создание Макроса
Наберите /macro или нажмите на кнопку разговора и выберите пункт Макрос. Появится окно, содержащее список макросов. В начале, макросов у Вас не будет.
Нажмите кнопку "new" внизу этого окна. Появится другое окно, в котором Вы можете ввести название для нового Макроса и выбрать иконку.
Введите название Макроса. Выберите его таким образом, чтобы было понятно, что он делает. Например, введите название "assist" (помочь).
Выберите иконку. Например, меч.
Нажмите "Okay" – теперь перед Вами появится окно Макросов с выбранной иконкой (меч) и введенным названием ("assist").
Нажмите левой кнопкой мыши (ЛКМ) на иконке макроса, чтобы выделить ее. Появится кнопка, с помощью которой можно сменить название макроса или его иконку.
В то время как иконка вашего макроса подсвечена, переместите курсор в область ввода "enter macro commands" (введите команды макроса). Именно там Вы можете вводить то, что Макрос должен делать, когда Вы нажимаете на его иконку. Вам необходимо добавлять "/" перед командой, если она этого требует. В общем, команды необходимо вводить так же, как и при обычном их использовании.
Введите "/assist Nebu"
Теперь, поместите курсор над иконкой меча (assist), потом нажмите на ней ЛКМ и зажмите ее (ЛКМ).
Переместите иконку на свободное место в панели быстрого доступа (action bar).
Чтобы использовать Ваш новый макрос, нажмите соответствующую цифровую кнопку или нажмите правой кнопкой мыши (ПКМ) на иконке макроса в панели быстрого доступа.
Теперь, у Вас есть Макрос, с помощью которого Вы можете помогать другому игроку (Nebu) в нападении на монстров. Когда Nebu вступает с кем-нибудь в бой, нажмите кнопку данного Макроса и вашей новой целью станет субъект, с которым дерется Nebu.
Завершение Редактирования Макросов
После того, как вы закончите редактировать или создавать Макросы, нажмите крестик, расположенный в правом верхнем углу окна Макросов, чтобы закрыть его.
Редактирование Существующих Макросов
Введите /macro а затем нажмите на иконке макроса, который Вы хотите редактировать. Теперь Вы можете редактировать выбранный Макрос в области ввода "Enter Macro Commands". Когда Вы закончите, нажмите крестик, расположенный в правом верхнем углу окна Макросов, чтобы закрыть его.
Ограничения Макросов
Для каждого Макроса существует ограничение по количеству символов. Если Ваш Макрос слишком длинный, сделайте его покороче (прим. перев. – мдя… а мы до этого не догадаемся)!
Советы по Использованию Макросов
Используйте любые существующие команды
Дополнительная информация
Вы можете использовать "%t" в Ваших Макросах, что бы автоматически вставить выбранного монстра, существа, игрока в Ваш Макрос. Например, Макрос "/say hi %t" выведет "Hi Nebu", если Вы в данный момент выбрали игрока Nebu.
/cast позволяет исполнять заклинания по имени. Наберите "/cast (название заклинания)" - Пример "/cast Fireball (Rank 1)". Чтобы использовать эту команду в макросах, Вы можете набрать ее "ручками", или нажать на заклинании с зажатым шифтом (Shift) в книге заклинаний, чтобы автоматически добавить соответствующую команду в макрос.
Основные функции
AttackTarget();
Пример: AttackTarget();
Описание: Атакует выделенного персонажа.
CastSpellByName(spellname)
Пример: CastSpellByName("Demon Skin");
Описание: Кастует указанное заклинание
TargetUnit(targetcode);
Пример: TargetUnit("player");
Описание: Выделяет персонажа указанного в параметре "player", "party1".."party5", "npc", "target".
TargetUnitsPet(targetcode);
Пример: TargetUnitsPet("player");
Описание: Выделяет пэта указанного персонажа.
TargetLastEnemy();
Пример: TargetLastEnemy();
Описание: Выделяет последнего атакованного персонажа.
AssistUnit(target)
Пример: AssistUnit("target");
Описание: Помогает атаковать персонажу, указанному в параметре.
AssistByName(target)
Пример: AssistByName("Marco");
Описание: Помогает атаковать персонажу с именем указанным в параметре.
FollowUnit(target)
Пример: FollowUnit("target");
Описание: Следует за персонажем указанным в параметре.
FollowUnitByName(target)
Пример: FollowByName("Beeblebrox");
Описание: Следует за персонажем с именем указанным в параметре.
ToggleBag(bagnumber)
Пример: ToggleBag(0);
Описание: Открывает/закрывает сумку сумки расположены: 4-3-2-1-0. 0 это бэкпак.
InviteByName(target)
Пример: InviteByName(GetSlashCmdTarget(msg));
Описание: Приглашает в группу персонажа с именем указанным в параметре.
UninviteByName(target)
Пример: UninviteByName(GetSlashCmdTarget(msg));
Описание: Удаляет из группы персонажа с именем указанным в параметре.
InitiateTrade(target)
Пример: InitiateTrade("target");
Описание: Приглашает к торговле персонажа указанного в параметре.
InspectUnit(target)
Пример: InspectUnit("target");
Описание: Показывает информацию о персонаже.
BeginTrade();
Описание: Согласиться на торговлю.
CancelTrade();
Описание: Отказаться от торговли.
AcceptGroup()
Описание: Согласиться на приглашение в группу.
DeclineGroup()
Описание: Отказаться от группы
PromoteToPartyLeader(unit);
Описание: Делает лидером указанного игрока.
LeaveParty()
Описание: Покинуть группу.
AddFriend(name)
Описание: Добавить друга.
RemoveFriend(name)
Описание: Удалить друга
AddOrDelIgnore(name);
Описание: Добавляет/удаляет игрока из игнор-листа.
Duel(name)
Описание: Вызывает на дуэль игрока.
CancelDuel();
Описание: Отменяет дуэль.
SetLootMethod(methodstring, player)
Описание: Устанавливает способ лута: "freeforall","roundrobin","master".
LootSlot(slotidnumber, 0)
Пример: LootSlot(((LOOTFRAME_NUMBUTTONS - 1) * (LootFrame.page - 1)) + this:GetID(), 0);
Описание: Лутит указанный предмет
MoveForwardStart(starttime);
Описание: Игрок начинает бежать вперёд.
MoveForwardStop(time);
Описание: Игрок прекращает бежать вперёд.
MoveBackwardStart(starttime);
Описание: Игрок начинает бежать назад.
MoveBackwardStop(stoptime);
MoveBackwardStop(arg1);
Описание: Игрок прекращает бежать назад.
TurnLeftStart(starttime);
Описание: Игрок начинает бежать влево.
TurnLeftStop(arg1);
Описание: Игрок прекращает бежать влево.
TurnRightStart(starttime);
Описание: Игрок начинает бежать вправо.
TurnRightStop(stoptime);
Описание: Игрок прекращает бежать вправо.
StrafeLeftStart(StartTime);
Описание: Игрок начинает стрэйфить влево.
StrafeLeftStop(stoptime);
Описание: Игрок прекращает стрэйфить влево.
StrafeRightStart(starttime);
Описание: Игрок начинает стрэйфить вправо.
StrafeRightStop(stoptime);
Описание: Игрок прекращает стрэйфить вправо.
Jump();
Описание: Заставляет игрока прыгать.
SitOrStand()
Описание: Заставляет присесть/встать
AcceptGuild()
Описание: Принимает приглашение в гильдию.
DeclineGuild()
Описание: Отказывается от приглашение в гильдию.
GuildInviteByName(player);
Описание: Приглашение в гильдию для игрока, имя которого указанно в параметре.
GuildUninviteByName(player)
Описание: Выгоняет из гильдии игрока, имя которого указанно в параметре.
GuildPromoteByName(player)
Описание: Увеличивает статус игрока, имя которого указанно в параметре.
GuildDemoteByName(player)
Описание: Уменьшает статус игрока, имя которого указанно в параметре.
GuildSetLeaderByName(player)
Описание: Делает лидером игрока, имя которого указанно в параметре.
GuildSetMOTD(message)
Описание: Устанавливает приветственное сообщение.
GuildLeave()
Описание: Покинуть гильдию.
PetAttack();
Описание: Заставляет вашего пэта атаковать.
PetAbandon();
Описание: Бросить вашего пэта.
PetRename(name)
Описание: Переименовать вашего пэта.
PetPassiveMode();
Описание: Переключает вашего пэта в пассивный режим.
PetDefensiveMode()
Описание: Переключает вашего пэта в защитный режим.
PetAggressiveMode()
Описание: Переключает вашего пэта в агрессивный режим.
PetWait()
Описание: Останавливает вашего пэта в пассивный режим.
PetFollow()
Описание: Заставляет вашего пэта следовать за вами.
SendChatMessage(msg, mode, language, channel);
Пример: SendChatMessage(msg, "WHISPER", this.language, lastTell);
Описание: Отправляет сообщение mode:"SAY", "YELL", "PARTY", "AFK", "DND", language: "COMMON", "DRACONIC", "ORCISH" ...
RandomRoll(low,high);
Пример: RandomRoll("1","100");
Описание: Выдаёт случайное число, удобно при розыгрыше сундуков.
PlaySound(filename);
Пример: PlaySound("BAGMENUBUTTONPRES");
Описание: Проигрывает звуковой файл.
Screenshot();
Описание: Делает скриншот.
ForceLogout()
Описание: Усиленный дисконнект.
Logout()
Описание: Дисконнект.
Quit()
Описание: Выход из игры
UnitName(string)
Пример: target = UnitName("target");
Описание: Возвращает имя игрока
GetFriendInfo(friendid)
Пример: name, level, class, area, connected = GetFriendInfo(friendIndex);
Описание: Возвращает информацию о друге.
UnitXP(target)
Пример: local currXP = UnitXP("player");
Описание: Возвращает опыт игрока
UnitXPMax(target)
Пример: local nextXP = UnitXPMax("player");
Описание: Показывает максимальный опыт игрока.
GetUnitMoney(target)
Пример: if ( UnitMoney("player") >= moneyCost ) then
Описание: Показывает количество денег игрока.
UnitExists(unitname)
Пример: if ( UnitExists(unit) and UnitIsPlayer(unit) ) then
Описание: Возвращает true если персонаж существует.
UnitIsPlayer(unitname)
Пример: if ( UnitExists(unit) and UnitIsPlayer(unit) ) then
Описание: Возвращает true если персонаж является игроком.
PetCanBeAbandoned()
Описание: Возвращает true если пэт может быть брошен.
UnitIsUnit(unitnamea, unitnameB)
Пример: UnitIsUnit("target", "pet")
Описание: Возвращает true если unitnamea является unitnameB
UnitReaction("target", "player")
Пример: UnitReaction("target", "player")
Описание: Возвращает тип поведения: neutral hostile, friendly.
GuildInfo()
Описание: Показывает инфо о гильдии
GetPartyMember(index[or id])
Пример: GetPartyMember(3)
Описание: Возвращает имя члена партии.
[b]UnitIsPartyLeader(unitname)
Пример: UnitIsPartyLeader("target")
Описание: Возвращает true если персонаж лидер группы.
GetLootMethod()
Пример: lootMethod, lootMaster = GetLootMethod();
Описание: Возвращает тип и мастера(если есть) лута
UnitInParty(unitname)
Пример: UnitInParty("target")
Описание: Возвращает true если персонаж входит в группу.
GetPlayerMapPosition(playerid);
Пример: playerX, playerY = GetPlayerMapPosition("player");
Описание: Возвращает ваши координаты.
GetCorpseMapPosition();
Пример: corpseX, corpseY = GetCorpseMapPosition();
Описание: Возвращает координаты вашего тела.
LeaveChannelByName(channelname)
LeaveChannelByName("Trade");
Leaves the channel with the specified name.
ListChannelByName(channelname)
ListChannelByName("trad")
Lists all of the channels that match the specified regular expression.
ListChannels()
ListChannels();
Lists all of the channel.
SetChannelPassword(username, password)
SetChannelPassword("Xiphoris","cantkeepassecret")
Changes the password of the current channel if that is a legal action.
ChannelModerator(channel,player)
ChannelModerator("uimods","Kelthan");
Sets the specified player as the channel moderator.
ChannelUnmoderator(channel, player)
ChannelUnmoderator("uimods", "xiphoric");
Takes the specified user away from the moderator status.
ChannelMute(channel, player)
ChannelMute("uimods","zileas");
Turns off the specified player's ability to speak in a channel.
ChannelUnmute(channel,player)
ChannelUnmute("uimods", "marco");
Unmutes the specified user from the channel.
ChannelInvite(channel,player)
ChannelInvite("cutestelves","glorfindel");
Invites the specified user to the chatroom.
ChannelKick(channel,player)
ChannelKick("bigllamas", "Strong_Bad_Is_Geh");
Kicks the specified user from the channel.
ChannelBan(channel,player)
ChannelBan("uimods", "alexyoshi")
Bans a player from the specified channel.
ChannelUnban(channel, player)
ChannelUnban("uimods", "kat");
Unbans a player from a channel.
ChannelToggleAnnouncements(channel);
ChannelToggleAnnouncements(channel);
Sets the channel to display announcements
источник: wow-game.ru