WoW API: GetShapeshiftForm

From AddOn Studio
Revision as of 21:50, 15 August 2009 by WoWWiki>Sdphantom (Clarified arguement use)
Jump to navigation Jump to search

WoW API < GetShapeshiftForm

index = GetShapeshiftForm(flag);

Parameters

Arguments

flag
Boolean (Optional) - True if return value is to be compared to a macro's conditional statement. This makes it always return zero for Presences and Auras. False or nil returns an index based on which button to highlight on the shapeshift/stance bar left to right starting at 1.

Returns

index
Number - one of following:
Any class
  • 0 = humanoid form
Death Knight (only when arg1 is nil)
  • 1 = Blood Presence
  • 2 = Frost Presence
  • 3 = Unholy Presence
Druid
  • 1 = Bear/Dire Bear Form
  • 2 = Aquatic Form
  • 3 = Cat Form
  • 4 = Travel Form
  • 5 = Moonkin/Tree Form (Unless feral. If no moonkin/tree form present, (swift) flight form is form 5)
  • 6 = Flight Form
Paladin (only when arg1 is nil)
  • 1 = Devotion Aura
  • 2 = Retribution Aura
  • 3 = Concentration Aura
  • 4 = Shadow Resistance Aura
  • 5 = Frost Resistance Aura
  • 6 = Fire Resistance Aura
  • 7 = Crusader Aura
  • ? = Sanctity Aura (Retribution Talent, unknown where it fits.)
Priest
  • 1 = Shadowform
Rogue
  • 1 = Stealth (3.1 - If the player has not learned the Shadow Dance talent, 1 is returned while in Stealth)
  • 2 = Stealth (3.1 - If the player has learned the Shadow Dance talent, 2 is returned while in Stealth instead of 1)
  • 3 = Shadow Dance (3.1 - This is used while Shadow Dance is active)
Note: This seems to have changed again in 3.2. It seems now that 1 is always stealth, and 3 is Shadow Dance. I have not done thorough testing to prove this though, so I'm leaving the 3.1 info.
Shaman
  • 1 = Ghost Wolf
Warrior
  • 1 = Battle Stance
  • 2 = Defensive Stance
  • 3 = Berserker Stance

Example

local nStance = GetShapeshiftForm();

Notes

For some classes the return value is nil during the loading process. You need to wait until UPDATE_SHAPESHIFT_FORMS fires to get correct return values.