WoW API: CreateMacro
Jump to navigation
Jump to search
← WoW API < CreateMacro
Creates a new macro command/button.
CreateMacro(name, icon, body, local, perCharacter)
Arguments
- (name, icon, body, local, perCharacter)
- name
- String - The name of the macro to be displayed in the UI. The current UI imposes a 16-character limit.
- icon
- Numeric - A 1-based iconTextureId (index of icon textures as displayed in "Change Name/Icon" UI). Check the current number if icon textures available by calling GetNumMacroIcons().
- body
- String - The macro commands to be executed.
- local
- Numeric - Purpose unknown, always 1.
- perCharcter
- Numeric - 0 will create a "per account" saved macro, 1 will save it as "per character"
Returns
- macroId
- Numeric - The 1-based index of the newly-created macro, as displayed in the "Create Macros" UI.
Example
local macroId = CreateMacro("MyMacro", 12, "/script CastSpellById(1);", 1, 1);
Notes
It is possible to do some WrongThings(tm) here:
- It is possible to create more macros than the UI can display. Call GetNumMacros() to ensure there are no more than 17 macros (18 is the current UI limit per account/per character) before calling CreateMacro().
- It is possible to create macros with duplicate names. You should enumerate the current macros using GetNumMacros() and GetMacroIconInfo(macroId) to ensure that your new macro name doesn't already exist.
This function may not be called in combat anymore, as of 2.0.