Одно время я просто пользовалась таким макросом:
/э стягивает полотенце с %t.
Где /э - это переход в чат эмоций, "стягивает полотенце с " - это слова, которые прописываются в вышеназванном чате, а "%t" - это выделенная цель. Если у вас не выделена ни одна цель, то в чате появится нечто вроде "Маггия стягивает полотенце с <неизвестно>."
Несовершенство этого макроса в том, что он не учитывает склонение имён собственных. То есть, если вы хотите совершить действие с игроком, ник которого склоняется, получится сообщение с ошибкой, например "Маггия стягивает полотенце с Штука" (Штука доволен будет :)) Но тут уже вам решать, устраивает вас такой макрос, или нет.
Если вдруг вас не устраивает макрос, можно попробовать воспользоваться скриптом, любезно предоставленным мне Кантиссой (Спасибо Антон =*):
/script local name = UnitName("target") if (name) then genitive, dative, accusative, instrumental, prepositional = DeclineName(name, UnitSex("target"), 1)
SendChatMessage("стягивает полотенце с "..genitive, "EMOTE", nil) end
Где прописав "script local name" мы оперируем с Именами.
"UnitName" = чьё имя будет нами истязаться в разнообразных макросах :) "target" - не всякое имя, а только имя нашей цели.
"genitive, dative, accusative, instrumental, prepositional" -падежи. Для тех, кто не помнит/не знает, что это вообще такое, таблица:
__________________________________________
0 - именительный номинатив (nominative) кто? что?
1 - родительный генитив (genitive) кого? чего?
2 - дательный датив (dative) кому? чему?
3 - винительный аккузатив (accusative) кого? что?
4 - творительный аблатив (instrumentative) кем? чем?
5 - предложный препозитив (preposition) о ком? о чём?
___________________________________________
DeclineName(name, UnitSex("target"), 1) - цифра 1 в конце этой фразы означает родительный падеж. Если в вашем макросе должен учитываться другой падеж, измените цифру, на нужную вам.
Внутри SendChatMessage можете ставить любое своё предложение, хвала вашим бурным всплескам креатива. Не забывайте о пробелах!
"EMOTE" - в какой чат вы хотите отправить ваше сообщение? Выбирайте сами.
Примерный макрос каста иннервейта на цель:
/script local name = UnitName("target") if (name) then genitive, dative, accusative, instrumental, prepositional = DeclineName (name, UnitSex("target"), 1)
"sendchatmessage("Кидаю Озарение на ".. Accusative .."!!!", "yell", nil, name)".
Будет виден в чате /yell, то есть /крик. Ну и не забудьте добавить в макрос /cast Озарение
Как-то так, по просьбам трудящихся и Совы. Ваша Няша и Элементаль.