Ayant eu assez d’annoncer manuellement le pop d’un rare sur le canal général (via « %T up @ » + clic d’un module Titan Panel pour les coordonnées), j’en ai fait une macro que voici :
/stopmacro [@target,noharm]
/run uT = "TARGET";
/run uP = "PLAYER";
/run uGender = UnitSex(uT);
/run sGender = "";
/run if(uGender == 3) then sGender = "e" end;
/run iHPPerc = string.format("%.0f", UnitHealth(uT) / UnitHealthMax(uT) * 100);
/run sMapName = "";
/run sPosName = GetMinimapZoneText();
/run sWarMode = " — WarMode ";
/run sDeathLine = {" est mort".. sGender ..", R·I·P.", " a vu ses points de vie réduits à zéro.", " gît inanimé".. sGender .." au sol…", " n'est plus de ce monde…", " a rendu son dernier souffle."};
/run if UnitIsDead(uT) then sRT = "{rt8}" else sRT = "{rt".. math.random(1,7) .."}" end
/run sRTName = sRT .." ".. UnitName(uT) .." ".. sRT;
/run oMap = C_Map.GetBestMapForUnit(uP);
/run oPos = C_Map.GetPlayerMapPosition(oMap, uP);
/run if IsModifierKeyDown() then sMapName = C_Map.GetMapInfo(oMap).name .." : " end;
/run if C_PvP.IsWarModeActive(uP) then sWarMode = sWarMode .."ON" else sWarMode = sWarMode .."OFF" end;
/run if oPos == nil then else sPosX = string.format("%.1f", oPos.x * 100); sPosY = string.format("%.1f", oPos.y * 100); sPosName = sMapName .. sPosName .." ".. sPosX ..", ".. sPosY end;
/run C_Map.SetUserWaypoint(UiMapPoint.CreateFromCoordinates(oMap, oPos.x, oPos.y));
/run if IsModifierKeyDown() then if UnitIsDead(uT) then SendChatMessage(sRTName .. sDeathLine[random(#sDeathLine)], "GUILD") else SendChatMessage(sRTName .." up @ ".. sPosName .." — (HP : ".. iHPPerc .."%)".. sWarMode .." › ".. C_Map.GetUserWaypointHyperlink(), "GUILD") end else if UnitIsDead(uT) then SendChatMessage(sRTName .. sDeathLine[random(#sDeathLine)], "CHANNEL", nil, 1) else SendChatMessage(sRTName .." up @ ".. sPosName .." — (HP : ".. iHPPerc .."%)".. sWarMode .." › ".. C_Map.GetUserWaypointHyperlink(), "CHANNEL", nil, 1) end end;
/run C_Map.ClearUserWaypoint();
Si une touche de modificateur est utilisée lors du click (ALT, SHIFT ou CTRL), alors le message ira en canal GUILDE (avec en plus l’information de la zone), sinon sur le Général.
Avec la venue de Shadowlands, un marqueur de position WoW sera également intégré après le message.
il faudra un addon pour étendre la limite des 255 caractères d’une macro, M6 ou similaire.
https://www.townlong-yak.com/addons/m6
PS : merci de ne pas faire de spam avec
edit : mise à jour pour la partie Warmode, où UnitIsWarModeActive()
a été remplacée par C_PvP.IsWarModeActive()
à la v9.0.1
et ajout du marqueur de position.
edit Mai 2022 : mise à jour pour n’utiliser l’icône de crâne que pour l’annonce de mort + textes random pour la mort.