Mantis 6028 osAvatarStopAnimation not stopping animations via UUID
Corrected to stop animations using the animation UUID similar to llStopAnimation. See http://opensimulator.org/wiki/OsAvatarStopAnimation0.7.3-extended
parent
58dc175ae3
commit
2021a8aedb
|
@ -955,16 +955,20 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
|
|||
ScenePresence target = (ScenePresence)World.Entities[avatarID];
|
||||
if (target != null)
|
||||
{
|
||||
UUID animID = UUID.Zero;
|
||||
lock (m_host.TaskInventory)
|
||||
UUID animID = new UUID();
|
||||
if (!UUID.TryParse(animation, out animID))
|
||||
{
|
||||
foreach (KeyValuePair<UUID, TaskInventoryItem> inv in m_host.TaskInventory)
|
||||
animID = UUID.Zero;
|
||||
lock (m_host.TaskInventory)
|
||||
{
|
||||
if (inv.Value.Name == animation)
|
||||
foreach (KeyValuePair<UUID, TaskInventoryItem> inv in m_host.TaskInventory)
|
||||
{
|
||||
if (inv.Value.Type == (int)AssetType.Animation)
|
||||
animID = inv.Value.AssetID;
|
||||
continue;
|
||||
if (inv.Value.Name == animation)
|
||||
{
|
||||
if (inv.Value.Type == (int)AssetType.Animation)
|
||||
animID = inv.Value.AssetID;
|
||||
continue;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue