Die einfachste Möglichkeit wäre vermutlich ein solches Makro:
|
Quellcode
|
1
2
3
|
#showtooltip
/cast Spell Name hier einfügen
/raid %t ist im Ei
|
Das hat halt das Problem, dass du das auch dann im Raidchat schreibst, wenn der Zauber nicht durchging (z.B. wegen Cooldown). Aber damit das besser funktioniert reicht das Limit von 255 Zeichen in Makros kaum aus. Ansonsten könnte man solche Sachen machen:
|
Quellcode
|
1
2
3
4
5
6
7
|
local id=SPELL_ID_HERE
local f=CreateFrame("frame",nil,UIParent)
f:RegisterEvent("COMBAT_LOG_EVENT_UNFILTERED")
f:SetScript("OnEvent",function(self,event,...)
if(select(2,...)~="SPELL_CAST_SUCCESS" or select(4,...)~=GetUnitName("player") or select(9,...)~=id) then return end
if GetNumRaidMembers()>0 then SendChatMessage(format("Casted %s on %s.",select(1,GetSpellName(id)),select(7,...)),"RAID") end
end)
|
Wenn man das Frame in einer globalen Variable speichert und auf 2 Makros aufteilt und noch etwas mehr komprimiert (also auch nur eine kurze Chatnachricht, ohne ausführlichen Spellnamen oder ähnliches) könnte das sogar klappen:
Marko 1:
|
Quellcode
|
1
2
|
wait4ei = CreateFrame("frame",nil,UIParent)
wait4ei:RegisterEvent("COMBAT_LOG_EVENT_UNFILTERED")
|
Makro 2 (hier SPELL_ID ersetzen):
|
Quellcode
|
1
|
wait4ei:SetScript("OnEvent",function(s,e,...) if(select(2,...)=="SPELL_CAST_SUCCESS" and select(4,...)==GetUnitName("player") and select(9,...)==SPELL_ID) then SendChatMessage(format("%s ist im Ei.",select(7,...)),"RAID") end end)
|
Aber wenn jemand solche Funktionalität haben will, ohne solche Probleme, dann kann ich kgPanels empfehlen, da kann man sich eben solchen Code wunderbar an Frames anhängen ohne sich Gedanken um die Anzahl der Zeichen zu machen.
Edit: Ganz vergessen zu erwähnen: Das erste Makro castet natürlich den Spell und sagt dazu was, also nutzt man das dann auch um den Spell zu casten. Die andere Möglichkeit nutzt man vorher (also z.B. direkt nachm Login / nach einem Reload vom Interface) und castet dann den Spell einfach ohne sich weiter Gedanken um diese Makros zu machen.
Außerdem: Die sind alle ungetestet, also könnten da durchaus Fehler drin sein.