→ WoW API
Edit macro command/button.
EditMacro(index or macroName, name, icon, body, local, perCharacter)
This function may only be called when out of combat.
- (index or macroName, name, icon, body, local, perCharacter)
- index or macroName
- Number or string - the index or name of the macro to be edited. Index ranges from 1 to 36 for account wide macros and 37 to 54 for character specific.
- String - The name of the macro to be displayed in the UI. The current UI imposes a 16-character limit. The name remains unchanged if nil.
- Numeric - A 1-based iconTextureId (index of icon textures as displayed in "Change Name/Icon" UI). Check the current number of icon textures available by calling GetNumMacroIcons(). The icon remains unchanged if nil.
- String - The macro commands to be executed. If this string is longer than 255 characters, only the first 255 will be saved.
- Numeric - Purpose unknown, always 1.
- Archaic. Now purposeless, since character and account macros are given unique IDs.
- Numeric - The new index of the macro, as displayed in the "Create Macros" UI. Same as argument "index" unless the macro name is changed, as they are sorted alphabetically.
macroId = EditMacro(1, "MyMacro", 12, "/script CastSpellById(1);", 1, 1);
- If this function is called from within the macro that is edited, the rest of the macro (from the final character's position of the /run command onward) will run the new version.