Template:Needs Translation/ 
| 函数名 | 
| Function: list llGetAnimationList( key avatar ) | 
| 参数:key avatar–在同一区域化身的UUID | 
| 返回值:返回一个播放动画的按键列表。 | 
| 注意事项 | 
| 注意事项 没有内部机制来获取正在播放的动画的名称。标准动画可以通过脚本启动和停止,所以返回的列表可能不能准确反映角色的状态。使用llGetAgentInfo和llGetAnimation。有些动作对观看者来说是局部的,不能被脚本检测到。由其他动画触发的动画对查看器来说是本地的,脚本无法检测到。
 | 
| 示例 | 
| 这个示例有点复杂,但是用于这个函数的应用程序并不多。 //Simple Animation Override for Walk
key old_anim = "6ed24bd8-91aa-4b12-ccc7-c97c857ab4e0";
string new_anim="yoga_float";
integer status;
list check;
key owner;
 
default
{
    state_entry()
    {
        owner = llGetOwner();
        llRequestPermissions(owner, PERMISSION_TRIGGER_ANIMATION);
        check = [old_anim];
    }
 
    run_time_permissions(integer p)
    {
        if(p & PERMISSION_TRIGGER_ANIMATION)
        {
            llSetTimerEvent(0.2);
        }
    }
 
    timer()
    {
        if(llGetAgentInfo(owner) & AGENT_WALKING)
        {
            list anims = llGetAnimationList(owner);
            if(~llListFindList(anims, check))
            {
                status = 1;
                llStartAnimation(new_anim);
                llStopAnimation(old_anim);
            }
        }
        else if(status)
        {
            llStopAnimation(new_anim);
            status = 0;
        }
    }
 
    on_rez(integer p)
    {
        llResetScript();
    }
}
 |