Erste Hilfe mit Selfcast und Verbandsuche
Macro:
/script for B=0,4 do for S=1,16 do N=GetContainerItemLink(B,S) if N~=nil and string.find(N,'verband') then P='player' E=not UnitIsFriend(P,'target') if E then TargetUnit(P) end UseContainerItem(B,S) if E then TargetLastTarget() end return end end end
Beschreibung:
Das Makro soll 2 Punkte verbinden:
- verbinde den Spieler selbst, wenn kein freundliches Ziel angewählt ist
- suche nach einem Verband irgendwo in den Taschen
Das Makro kramt alle fünf 16er-Taschen durch (funktioniert auch, wenn man weniger oder kleinere Taschen hat). Sobald es dort etwas mit "verband" im Namen (also etwas von "Leinenstoffverband" bis hin zu "Schwerer Runenstoffverband") findet, wird damit das aktuelle Ziel verbunden.
Falls aktuell kein freundliches Ziel gewählt ist, wird zwischendurch auf den Spieler umgeschaltet und hinterher wieder zurück zum vorherigen Ziel (falls kein Ziel gewählt war, ist auch hinterher keins gewählt). Das hat den Effekt von "if SpellIsTargeting() then SpellTargetUnit('player')", was ja beim Verbinden nicht geht.
Dank der Durchsucherei muß man die Verbände nicht mehr an einen bestimmten Platz in der Tasche legen, wie es sonst für manche Makros nötig ist. Falls man verschiedene Verbandssorten dabeihat und die besseren Verbände bevorzugen möchte, muß man jedoch darauf achten, in welcher Reihenfolge das Makro die Taschenplätze durchsucht - denn der erste gefundene Verband wird genommen.
Um das Problem zu lösen, könnte man wohl alle Verbandssorten in der beabsichtigten Reihenfolge auf versteckte Aktionsleisten ziehen, und das Makro dort durchsuchen lassen... Ähnliches geht für Heiltränke, Manatränke usw...