Neuer Befehl für C_Spell.GetSpellName?

Hallo Ihr,

ich bin ein paar Tage wieder dabei und wollte meinen Jäger heute spielen.
Blöd nur, der starb laufend, wenn es eng wurde und ich den Heiltrank gebraucht habe und auf den verlasse ich mich doch.
Der Druck auf mein Heiltrankmakro sagte „LUA-Fehler, das wars“ und löste nicht mehr aus.
Es ist ein ganz einfaches Makro mit 1x Heiltrank und 1x Gesundheitsstein, darunter C_Spell.GetSpellName.

Gibt es wieder einen neuen Namen für C_Spell.GetSpellName?
Das C_ kam doch erst vor einem halben Jahr dazu, meine ich mich zu erinnern?
Die Warcraft-Wikis kennen keinen neuen Befehl, der Fehler muß aber bei mir liegen.

Hilft Euch der Lua-Fehler von unten? Danke für eine Info. lg.

15x [string „local G=C_Spell.GetSpellName SetMacroSpell(…“]:1: Usage: SetMacroSpell(macro, spell [,target])
[C]: in function ‚SetMacroSpell‘
[local G=C_Spell.GetSpellName SetMacroSpell(GetRunningMacro(), G"Algarischer Heiltrank" or G"Gesundheitsstein")]:1: in main chunk
[C]: in function ‚RunScript‘
[Blizzard_ChatFrameBase/Mainline/ChatFrame.lua]:2308: in function ‚?‘
[Blizzard_ChatFrameBase/Mainline/ChatFrame.lua]:5517: in function <Blizzard_ChatFrameBase/Mainline/ChatFrame.lua:5463>
[C]: in function ‚ChatEdit_ParseText‘
[Blizzard_ChatFrameBase/Mainline/ChatFrame.lua]:5169: in function <Blizzard_ChatFrameBase/Mainline/ChatFrame.lua:5168>
[C]: in function ‚ChatEdit_SendText‘
[Blizzard_ChatFrameBase/Mainline/ChatFrame.lua]:3320: in function <Blizzard_ChatFrameBase/Mainline/ChatFrame.lua:3314>
[C]: in function ‚UseAction‘
[Blizzard_FrameXML/Mainline/SecureTemplates.lua]:342: in function ‚handler‘
[Blizzard_FrameXML/Mainline/SecureTemplates.lua]:667: in function <…ddOns/Blizzard_FrameXML/Mainline/SecureTemplates.lua:649>
[Blizzard_FrameXML/Mainline/SecureTemplates.lua]:681: in function <…ddOns/Blizzard_FrameXML/Mainline/SecureTemplates.lua:674>
[Blizzard_FrameXML/Mainline/SecureTemplates.lua]:723: in function <…ddOns/Blizzard_FrameXML/Mainline/SecureTemplates.lua:707>
[C]: ?
[Blizzard_FrameXML/SecureHandlers.lua]:266: in function <Blizzard_FrameXML/SecureHandlers.lua:263>
[C]: ?
[Blizzard_FrameXML/SecureHandlers.lua]:296: in function <Blizzard_FrameXML/SecureHandlers.lua:279>
[tail call]: ?

Locals:
(*temporary) = 18
(*temporary) = nil

Der Fehler sagt, dass Du SetMacroSpell() nicht richtig verwendest.
Also eins der beiden erwarteten Argumente passt nicht.

GetRunningMacro()
oder
G"Algarischer Heiltrank" or G"Gesundheitsstein"

Letzteres habe ich so noch nie gesehen. Was ist das für eine Schreibweise?

Hi, ich habe das Makro vergessen.

Das ist es:
/run local G=C_Spell.GetSpellName SetMacroSpell(GetRunningMacro(), G"Algarischer Heiltrank" or G"Gesundheitsstein")

Ich rufe damit einfach die icons auf, damit kein „?“ im Makro steht, habe ich vor Jahren hier gelernt.

Warum willst Du GetSpellName() ausführen, wenn Du den Spellnamen schon hast?
Ich bin mir auch nicht sicher, ob GetSpellName() überhaupt Item-Namen als Argumente akzeptiert.

Was kommt raus, wenn Du das in die Console eintippst?
/run print("Rückgabewert:", C_Spell.GetSpellName("Algarischer Heiltrank"))
bzw.
/run print("Rückgabewert:", C_Spell.GetSpellName("Gesundheitsstein"))

1 Like

Da steht dann nur Rückgabewert:, sonst nichts.

In Macros wird das gerne genuzt um bei verschiedenen Namen eines Spells bzw. wenn man Verschiedene Zauber jeh nach Skillung nutzen will, den richtigen Namen zu Setzen.

Ist der Zauber erlernt liefert es den Namen zurück. Ist der Zauber nicht erlernt liefert es nichts zurückt. Bei manchen liefert es auch den Korrekten Namen des Aktuellen zustands des Zaubers wen diese sich ändern können.

Funktioniert aber natürlich nicht im Kampf fals nun wer auf kreative Idee kommen sollte :wink:

Bin mir jetzt aber auch nicht sicher ob das mit Items funktioniert.

1 Like

Den Gesundheitsstein habe ich ja meist nicht dabei. Verstehe. Das kann den Fehler bringen. Böse.

Tante Edith meint dazu: Tatsache: Der Fehler kommt ohne „Gesundheitsstein“ im Makro nicht mehr. Vielen Dank.