Salut,
Les seuls joker de message sont ceux que tu as listé :
- %t ou %n pour la cible
- %f pour la focalisation
Si tu veux récupérer la race, le genre ou la faction il te faudra passer par des fonctions LUA et créer toi-même le message à insérer dans la discussion.
Un exemple simple, mais un peu technique :
rf=UnitRace("focus")
if rf then
SendChatMessage(
format("Bonjour %s",rf),"SAY")
end
/run rf=UnitRace("focus")if rf then SendChatMessage(format("Bonjour %s",rf),"SAY")end
J’ai utilisé une vérification conditionnelle pour prévoir l’absence de focalisation. Sinon ça aurait fait une erreur Lua.
Pour obtenir ta cible, ton mouseover ou toi-même, tu peux remplacer focus
par target
, mousever
ou player
.
Le même principe s’applique à UnitClass
pour la classe, UnitSex
pour le genre et UnitFactionGroup
pour la faction.
Voici un exemple un peu plus élaboré, j’utilise volontairement la fonction format() qui permet de faire de la substitution, plutôt que de concaténer des valeurs.
p="player"
n,r,c,f=UnitName(p),UnitRace(p),UnitClass(p),UnitFactionGroup(p)
SendChatMessage(
format("Bonjour je m'appelle %s. Je suis un %s %s appartenant à la puissante %s.",n,r,c,f),"SAY")
Bonjour je m’appelle Kazorah. Je suis un Pandaren Moine appartenant à la puissante Alliance.
Version condensée, pour macro :
/run p="player"n,r,c,f=UnitName(p),UnitRace(p),UnitClass(p),UnitFactionGroup(p)if n then SendChatMessage(format("Bonjour je m'appelle %s. Je suis un %s %s appartenant à la puissante %s.",n,r,c,f),"SAY")end
Tu noteras que ça prend beaucoup de place. Donc à toi ensuite d’optimiser. J’ai regroupé des déclarations de variables mais la forme suivante est équivalente en place et en fonctionnement (pour t’aider à comprendre)
n = UnitName(p)
r = UnitRace(p)
c = UnitClass(p)
f = UnitFactionGroup(p)
Les noms n,r,c,f ont été choisir de manière totalement arbitraire pour coller à un truc compréhensible (nom, race, classe, faction).