llStartObjectAnimation

From Second Life Wiki
Revision as of 00:09, 18 December 2018 by Joanne Furlough (talk | contribs)
Jump to navigation Jump to search

Summary

Function: llStartObjectAnimation( string anim );
0.0 Forced Delay
10.0 Energy

Start animation for the current object.

• string anim name of an animation in the inventory of the current object

Examples

//This script animates the object for as long as it is touched.
default
{
    state_entry()
    {
    }

    // This assumes that an animation called "MyFancyWalk" is present in the inventory of the current object.
    touch_start(integer total_number)
    {
        llSay(0, "Starting animation");
        llStartObjectAnimation("MyFancyWalk");
    }
    
    touch_end(integer total_number)
    {
        llSay(0, "Stopping animation");
        llStopObjectAnimation("MyFancyWalk");
    }
}

Notes

Animated objects work by associating a skeleton with a linkset containing one or more rigged mesh primitives. When animations are played by a script in any of the prims in the linkset, the skeleton will animate and any rigged meshes in the linkset will move accordingly. A script running in any prim of the linkset can start, stop or query animations using the new commands. The typical usage of these functions is to do all object animation scripting in the root prim of the linkset; in this scenario, the animations and scripts would all be part of the inventory of this prim, and so of the object as a whole. However, if scripts and animations are present in multiple prims of a linkset, it is important to understand that animations are started, stopped and tracked independently in each prim.

See Also

Functions

•  llStopObjectAnimation Stop playing an animation in the current object
•  llGetObjectAnimationNames List currently playing animations in the current object

Deep Notes

Signature

function void llStartObjectAnimation( string anim );