OsAvatarStopAnimation

From OpenSimulator

(Difference between revisions)
Jump to: navigation, search
m (some syntax modification (may be major or minor))
 
(4 intermediate revisions by 4 users not shown)
Line 1: Line 1:
 
{{osslfunc
 
{{osslfunc
 
|threat_level=VeryHigh
 
|threat_level=VeryHigh
|function_syntax=void osAvatarStopAnimation(key avatar, string animation)
+
|permissions=false
|ossl_example=
+
|delay=0
|description=This function stops the specified animation if it is playing on the avatar given.  
+
|function_syntax= osAvatarStopAnimation(key avatar, string animation)
 +
|description=This function stops the specified animation if it is playing on the avatar given.
 +
The value avatar is a UUID, and the animation value is either the name of an animation in the task inventory or the UUID of an animation.<br>
 +
If the specified avatar is not logged in or on the same sim as the script, then osAvatarStopAnimation silently fails.
 +
|ossl_example=<source lang="lsl">
 +
// ----------------------------------------------------------------
 +
// Example / Sample Script to show function use.
 +
//
 +
// Script Title:    osAvatarStopAnimation.lsl
 +
// Script Author:  WhiteStar Magic
 +
// Threat Level:    VeryHigh
 +
// Script Source: 
 +
//
 +
// Notes: See Script Source reference for more detailed information
 +
// This sample is full opensource and available to use as you see fit and desire.
 +
// Threat Levels only apply to OSSL & AA Functions
 +
//================================================================
 +
// Inworld Script Line:    osAvatarStopAnimation(key targetuuid, string anim);
 +
//
 +
// NOTE:  anim can be the Name (if contained in prim) or UUID of the animation
 +
//
 +
default
 +
{
 +
    state_entry()
 +
    {
 +
        // Display a message prompting users to touch the object to stop the animation
 +
        llSay(0, "Touch to have Avatar STOP using the contained animation with osAvatarStopAnimation ");
 +
    }
  
The value avatar is a UUID, and the animation value is either the name of an animation in the task inventory or the UUID of an animation.
+
    touch_end(integer num)
 +
    {
 +
        // Get the name of the animation from the prim's inventory
 +
        string anim = llGetInventoryName(INVENTORY_ANIMATION, 0);
  
If the specified avatar is not logged in or on the same sim as the script, then osAvatarStopAnimation silently fails.
+
        // Check if the animation exists
|
+
        if (anim == "")
 +
        {
 +
            llOwnerSay("ERROR: Animation Missing. Please drop an animation in the prim with this script");
 +
            return;
 +
        }
 +
        else
 +
        {
 +
            // Display a message indicating the animation that is being stopped
 +
            llOwnerSay("Now Playing " + anim + " animation");
 +
 
 +
            // Stop the specified animation on the avatar who touched the object
 +
            osAvatarStopAnimation(llDetectedKey(0), anim);
 +
        }
 +
    }
 +
}
 +
</source>
 +
|additional_info=
 
}}
 
}}
 +
== See Also ==
 +
* [[osAvatarPlayAnimation]]
 +
* [[osAvatarStopAnimation]]
 +
* [[OSSL_Script_Library/OSSL_Poseball|OSSL_Poseball script]]

Latest revision as of 02:01, 7 March 2024

osAvatarStopAnimation(key avatar, string animation)
This function stops the specified animation if it is playing on the avatar given.

The value avatar is a UUID, and the animation value is either the name of an animation in the task inventory or the UUID of an animation.
If the specified avatar is not logged in or on the same sim as the script, then osAvatarStopAnimation silently fails.

Threat Level VeryHigh
Permissions Use of this function is always disabled by default
Extra Delay 0 seconds
Example(s)
// ----------------------------------------------------------------
// Example / Sample Script to show function use.
//
// Script Title:    osAvatarStopAnimation.lsl
// Script Author:   WhiteStar Magic
// Threat Level:    VeryHigh
// Script Source:   
//
// Notes: See Script Source reference for more detailed information
// This sample is full opensource and available to use as you see fit and desire.
// Threat Levels only apply to OSSL & AA Functions
//================================================================
// Inworld Script Line:    osAvatarStopAnimation(key targetuuid, string anim);
//
// NOTE:  anim can be the Name (if contained in prim) or UUID of the animation
//
default
{
    state_entry()
    {
        // Display a message prompting users to touch the object to stop the animation
        llSay(0, "Touch to have Avatar STOP using the contained animation with osAvatarStopAnimation ");
    }
 
    touch_end(integer num)
    {
        // Get the name of the animation from the prim's inventory
        string anim = llGetInventoryName(INVENTORY_ANIMATION, 0);
 
        // Check if the animation exists
        if (anim == "") 
        {
            llOwnerSay("ERROR: Animation Missing. Please drop an animation in the prim with this script");
            return;
        }
        else
        {
            // Display a message indicating the animation that is being stopped
            llOwnerSay("Now Playing " + anim + " animation");
 
            // Stop the specified animation on the avatar who touched the object
            osAvatarStopAnimation(llDetectedKey(0), anim);
        }
    }
}


[edit] See Also

Personal tools
General
About This Wiki