Wowpedia

We have moved to Warcraft Wiki. Click here for information and the new URL.

READ MORE

Wowpedia
Advertisement

Retrieves the cooldown data of the spell specified.

start, duration, enabled, modRate = GetSpellCooldown("spellName" or spellID or slotID, "bookType")

Arguments

spellName
String - name of the spell to query.

or

spellID
Number - ID of the spell to query.

or

slotID
Number - index of a spell book slot to query, integers ascending from 1.
bookType
String - spell book category, e.g. BOOKTYPE_SPELL ("spell") or BOOKTYPE_PET ("pet").

Returns

startTime
number - The time when the cooldown started (as returned by GetTime()); zero if no cooldown; current time if (enabled == 0).
duration
number - Cooldown duration in seconds, 0 if spell is ready to be cast.
enabled
number - 0 if the spell is active (Stealth, Shadowmeld, Presence of Mind, etc) and the cooldown will begin as soon as the spell is used/cancelled; 1 otherwise.
modRate
number - The rate at which the cooldown widget's animation should be updated.

Example

The following snippet checks the state of Spell nature enchantarmor [Presence of Mind] cooldown. On English clients, you could also use "Presence of Mind" in place of 12043, which is the spell's ID.

local start, duration, enabled, modRate = GetSpellCooldown(12043)
if enabled == 0 then
 print("Presence of Mind is currently active, use it and wait " .. duration .. " seconds for the next one.")
elseif ( start > 0 and duration > 0) then
 local cdLeft = start + duration - GetTime()
 print("Presence of Mind is cooling down, wait " .. cdLeft .. " seconds for the next one.")
else
 print("Presence of Mind is ready.")
end

Notes

  • To check the Global Cooldown, you can use the spell ID 61304. This is a dummy spell specifically for the GCD.
  • The enabled return value allows addons to easily check if the player has used a buff-providing spell (such as Presence of Mind or Nature's Swiftness) without searching through the player's buffs.
  • Values returned by this function are not updated immediately when UNIT_SPELLCAST_SUCCEEDED event is raised.

Patch changes

Advertisement