aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region')
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs17
1 files changed, 13 insertions, 4 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
index 5aef892..7f91de2 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
@@ -11313,17 +11313,26 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
11313 ret.Add(new LSL_Vector(obj.AbsolutePosition.X, obj.AbsolutePosition.Y, obj.AbsolutePosition.Z)); 11313 ret.Add(new LSL_Vector(obj.AbsolutePosition.X, obj.AbsolutePosition.Y, obj.AbsolutePosition.Z));
11314 break; 11314 break;
11315 case ScriptBaseClass.OBJECT_ROT: 11315 case ScriptBaseClass.OBJECT_ROT:
11316 Quaternion rot = Quaternion.Identity;
11317
11318 if (obj.ParentGroup.IsAttachment)
11316 { 11319 {
11317 Quaternion rot = Quaternion.Identity; 11320 ScenePresence sp = World.GetScenePresence(obj.ParentGroup.AttachedAvatar);
11318 11321
11322 if (sp != null)
11323 rot = sp.GetWorldRotation();
11324 }
11325 else
11326 {
11319 if (obj.ParentGroup.RootPart == obj) 11327 if (obj.ParentGroup.RootPart == obj)
11320 rot = obj.ParentGroup.GroupRotation; 11328 rot = obj.ParentGroup.GroupRotation;
11321 else 11329 else
11322 rot = obj.GetWorldRotation(); 11330 rot = obj.GetWorldRotation();
11323
11324 LSL_Rotation objrot = new LSL_Rotation(rot);
11325 ret.Add(objrot);
11326 } 11331 }
11332
11333 LSL_Rotation objrot = new LSL_Rotation(rot);
11334 ret.Add(objrot);
11335
11327 break; 11336 break;
11328 case ScriptBaseClass.OBJECT_VELOCITY: 11337 case ScriptBaseClass.OBJECT_VELOCITY:
11329 ret.Add(new LSL_Vector(obj.Velocity)); 11338 ret.Add(new LSL_Vector(obj.Velocity));