okay, i am trying to create a tiny lock pose script, and having a problem getting a script to apply (reapply) an animation that it perceives as already running. (how it 'perceives' this is a mystery to me.) and apparently, i am the only person having this problem, because i have a tiny eagle that applies the same pose 3 times in a stack. (as seen on the debugging animation list).
http://jira.secondlife.com/browse/VWR-9410
so my problem is twofold.
1: if i call llstartanimation for an animation that is already playing, it will not reapply that animation to the top of the animation stack.
this happens whether or not the animation has the same uuid or not (ie: i uploaded it again to get a new uuid for it). i'm at a loss to explain that. it happens whether i am applying the pose from one script or two (in the same object. i didnt try with 2 objects.).
it happens if i play the animation from inventory, then try to apply it via script. it happens if i apply it via script, then play it from inventory.
whatever i do, i just can NOT get the animation to move to the top of the stack.
2: if i call llstopanimation the line above llstartatnimation, the animation is not removed in time to apply it again, and it's still stuck in the bottom of the list.
and
2a: if i put a delay between stop and start, i get the avatar blipping out of the lock, which is quite ugly.
sample testing script. use any 2 distinct priority 4 animations. (or im me for the anims listed below.)
default
{
state_entry()
{ llRequestPermissions(llGetOwner(), PERMISSION_TRIGGER_ANIMATION); llOwnerSay("Turn on Advanced: Character: Animation Info. Note where custom animations are in the list. Click this object to start the test."

on_rez(integer start_param)
{ llRequestPermissions(llGetOwner(), PERMISSION_TRIGGER_ANIMATION); llOwnerSay("Turn on Advanced: Character: Animation Info. Note where custom animations are in the list. Click this object to start the test."

run_time_permissions(integer permissions)
{
if (permissions & PERMISSION_TRIGGER_ANIMATION)
{ llOwnerSay("Applying Animation 1: 68bb48c3-0f80-7efe-4e04-50a283109be0"



}
touch_start(integer tsn)
{ llOwnerSay("Starting Animation Test."







}
is there a trick to this that i am missing? a secret method? something?