WoW API: CreateMacro

From AddOn Studio
Revision as of 09:01, 9 July 2006 by WoWWiki>Nimbal (replaced "Template:WoW API" with "wowapi")
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.