Mantis 6028 osAvatarStopAnimation not stopping animations via UUID

Corrected to stop animations using the animation UUID similar to llStopAnimation.
See http://opensimulator.org/wiki/OsAvatarStopAnimation
0.7.4.1
Talun 2012-05-23 00:33:45 +01:00 committed by Justin Clark-Casey (justincc)
parent 67ebe80dd9
commit 120f8145fc
1 changed files with 11 additions and 7 deletions

View File

@ -957,7 +957,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
ScenePresence target = (ScenePresence)World.Entities[avatarID];
if (target != null)
{
UUID animID = UUID.Zero;
UUID animID = new UUID();
if (!UUID.TryParse(animation, out animID))
{
animID = UUID.Zero;
lock (m_host.TaskInventory)
{
foreach (KeyValuePair<UUID, TaskInventoryItem> inv in m_host.TaskInventory)
@ -970,6 +973,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
}
}
}
}
if (animID == UUID.Zero)
target.Animator.RemoveAnimation(animation);