WoW:API CastShapeshiftForm: Difference between revisions

From AddOn Studio
Jump to navigation Jump to search
No edit summary
 
m (Move page script moved page API CastShapeshiftForm to API CastShapeshiftForm without leaving a redirect)
 
(11 intermediate revisions by 11 users not shown)
Line 1: Line 1:
<center><b[[>API CastShapeshiftForm</b> - <i>Submitted by [[/User:Naliya|Naliya]]</i></center><br>
{{wowapi}}__NOTOC__
<p>Casts Shapeshift on yourself. So far as I'm aware, this is restricted to Druid class.
{{protectedapi|2.0.1|For alternatives, try [[API_SecureTemplates|Secure Template]] or the new [[Conditional slash commands#/cast|/cast]].}}
</p>
Casts Shapeshift on yourself. This is class dependent - not all classes have special abilities.
<pre>CastShapeshiftForm(#);</pre>


----
  CastShapeshiftForm(index);
<p><b><i>Arguments</i></b><br>
<br>(# in this case relates to the different forms)<br>
*1 = Bear/Dire Bear Form<br>
*2 = Aquatic Form<br>
*3 = Cat Form<br>
*4 = Travel Form
<br>Rumours abound that 0 is caster form, but I can't personally get that to work, so I've omitted it for now.</p>


----
== Parameters ==
<p><b><i>Returns</i></b><br>
<br>
*Nil</p><br>


----
=== Arguments ===
<p><b><i>Example</i></b><br>
;index : relates to the different forms:
<br><pre>CastShapeshiftForm(1);</pre><br>
 
<b><i>Result</i></b><br>
:;Druid
<br>Shapeshifts caster into Bear Form.<br></p>
:*1 = Bear/Dire Bear Form
<br>Note, casting the spell again changes back to caster form. So, for instance;<br>
:*2 = Aquatic Form
<pre>if (GetNumShapeshiftForms()==1) then CastShapeshiftForm(1);end;</pre><br>
:*3 = Cat Form
<b><i>Result</i></b><br>
:*4 = Travel Form
<br>In this case, the script checks if you're in Bear/Dire Bear form, and if so, casts the spell to change you back to Caster form.
:*5 = Moonkin Form
:
:;Rogue
:*1 = Stealth
:
:;Warrior
:*1 = Battle Stance
:*2 = Defensive Stance
:*3 = Beserker Stance
 
 
=== Returns ===
 
:'''nil'''
 
 
== Example ==
  CastShapeshiftForm(1);
 
=== Result ===
Shapeshifts caster into Bear Form.
 
 
== Note ==
Note, casting the spell again changes back to caster form. So, for instance;
  if (GetNumShapeshiftForms()==1) then CastShapeshiftForm(1);end;
In this case, the script checks if you're in Bear/Dire Bear form, and if so, casts the spell to change you back to Caster form.
It has the same restrictions as other casting spells in that the trigger event needs to involve a keystroke or mouse click.
 
 
To use a particular shape in a '''macro''' and avoiding error messages, use:
 
  /script icon, name, active = GetShapeshiftFormInfo('''index''');if (active==1) then CastShapeshiftForm('''index''');end;
 
where '''index''' is the number of the shape as given above.
 
 
 
== Example ==
This Example shows how to return to your human form out of any other form.
  for i=1, GetNumShapeshiftForms() do
    _, name, active = GetShapeshiftFormInfo(i);
    if( active ~= nil ) then
        DEFAULT_CHAT_FRAME:AddMessage("SQS: leaving '"..name.."'");
        CastShapeshiftForm(i)
        break;
    end
  end

Latest revision as of 04:45, 15 August 2023

WoW API < CastShapeshiftForm

Casts Shapeshift on yourself. This is class dependent - not all classes have special abilities.

 CastShapeshiftForm(index);

Parameters[edit]

Arguments[edit]

index
relates to the different forms:
Druid
  • 1 = Bear/Dire Bear Form
  • 2 = Aquatic Form
  • 3 = Cat Form
  • 4 = Travel Form
  • 5 = Moonkin Form
Rogue
  • 1 = Stealth
Warrior
  • 1 = Battle Stance
  • 2 = Defensive Stance
  • 3 = Beserker Stance


Returns[edit]

nil


Example[edit]

 CastShapeshiftForm(1);

Result[edit]

Shapeshifts caster into Bear Form.


Note[edit]

Note, casting the spell again changes back to caster form. So, for instance;

 if (GetNumShapeshiftForms()==1) then CastShapeshiftForm(1);end;

In this case, the script checks if you're in Bear/Dire Bear form, and if so, casts the spell to change you back to Caster form. It has the same restrictions as other casting spells in that the trigger event needs to involve a keystroke or mouse click.


To use a particular shape in a macro and avoiding error messages, use:

 /script icon, name, active = GetShapeshiftFormInfo(index);if (active==1) then CastShapeshiftForm(index);end;

where index is the number of the shape as given above.


Example[edit]

This Example shows how to return to your human form out of any other form.

 for i=1, GetNumShapeshiftForms() do
    _, name, active = GetShapeshiftFormInfo(i);
    if( active ~= nil ) then
       DEFAULT_CHAT_FRAME:AddMessage("SQS: leaving '"..name.."'");
       CastShapeshiftForm(i)
       break;
    end
 end