OsAvatarPlayAnimation

From OpenSimulator

(Difference between revisions)
Jump to: navigation, search
m (Default state was accidentally commented out)
Line 5: Line 5:
 
//Example Usage:  
 
//Example Usage:  
 
default {  
 
default {  
    touch_start(integer num) {
+
  touch_start(integer num)  
      string anim = llGetInventoryName(INVENTORY_ANIMATION, 0);
+
  {
      osAvatarPlayAnimation(llDetectedKey(0), anim);
+
    string anim = llGetInventoryName(INVENTORY_ANIMATION, 0);
 +
    osAvatarPlayAnimation(llDetectedKey(0), anim);
 
   }
 
   }
 
 
}  
 
}  
 
</source>
 
</source>
 
|description=This function causes an animation to be played on the specified avatar.  
 
|description=This function causes an animation to be played on the specified avatar.  
  
The variable ''animation'' can be either the name of an animation within the task inventory, or it can be the UUID of an animation.  
+
The variable ''animation'' can be either the name of an animation within the task inventory, or it can be the animation's UUID.
  
'''osAvatarPlayAnimation''' does not perform any security checks or request animation permissions from the targeted avatar,  
+
Instead of the name of an animation in the prim's inventory, you can also use the names of the viewer's [http://wiki.secondlife.com/wiki/Internal_Animations built-in animations].
 +
 
 +
'''osAvatarPlayAnimation''' does not perform any security checks or request animation permissions from the targeted avatar.
 +
 
 +
|additional_info= When using this function in an object that requires the user to sit on the object (like a chair,or a poseball), you will need to stop the sit animation by including the following snippet:
 +
<source lang = "lsl">
 +
changed(integer change)
 +
{
 +
  if (change & CHANGED_LINK)
 +
  {
 +
    key user = llAvatarOnSitTarget();
 +
    osAvatarStopAnimation(user, "sit");
 +
    osAvatarPlayAnimation(user, anim);       
 +
  }
 +
}
 +
</source>
 
|
 
|
 
}}
 
}}
 +
 +
====See Also====
 +
*[[osAvatarStopAnimation]]

Revision as of 02:19, 18 March 2012

void osAvatarPlayAnimation(key avatar, string animation)
This function causes an animation to be played on the specified avatar.

The variable animation can be either the name of an animation within the task inventory, or it can be the animation's UUID.

Instead of the name of an animation in the prim's inventory, you can also use the names of the viewer's built-in animations.

osAvatarPlayAnimation does not perform any security checks or request animation permissions from the targeted avatar.

Threat Level VeryHigh
Permissions No permissions specified
Extra Delay No function delay specified
Example(s)
//Example Usage: 
default { 
  touch_start(integer num) 
  {
    string anim = llGetInventoryName(INVENTORY_ANIMATION, 0);
    osAvatarPlayAnimation(llDetectedKey(0), anim);
  }
}
Notes
When using this function in an object that requires the user to sit on the object (like a chair,or a poseball), you will need to stop the sit animation by including the following snippet:
changed(integer change)
{
  if (change & CHANGED_LINK)
  {
    key user = llAvatarOnSitTarget();
    osAvatarStopAnimation(user, "sit");
    osAvatarPlayAnimation(user, anim);        
  }
}


See Also

Personal tools
General
About This Wiki