WoW API: IsUsableSpell
Jump to navigation
Jump to search
← WoW API < IsUsableSpell
Determines whether a spell can be used by the player character.
usable, nomana = IsUsableSpell("spellName" or spellID or spellIndex[, "bookType"]);
Arguments[edit]
- spellName
- String: name of the spell to check.
- spellIndex
- Number: index of a spell in the player's (or pet's) spellbook.
- spellID
- Number: SpellID of a spell to check.
- bookType
- String: does the spellIndex refer to the player's spellbook (BOOKTYPE_SPELL constant, default), or the pet's spellbook (BOOKTYPE_PET constant).
Returns[edit]
- usable
- Boolean : 1 (true) if the spell is usable, nil otherwise. A spell is not usable if any of the following conditions apply:
- The player hasn't learned the spell
- The player lacks required mana or reagents.
- Reactive conditions haven't been met.
- nomana
- Boolean : 1 (true) if the spell can not be cast due to low mana, nil otherwise.
Example[edit]
usable, nomana = IsUsableSpell("Curse of Elements"); if (not usable) then if (not nomana) then message("The spell cannot be cast"); else message("You do not have enough mana to cast the spell"); end else message("The spell may be cast"); end
usable, nomana = IsUsableSpell(20, BOOKTYPE_SPELL); print(GetSpellName(20, BOOKTYPE_SPELL) .. " is " .. (usable and "" or "not ") .. " usable.");