diff options
-rw-r--r-- | OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | 14 |
1 files changed, 10 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 070ba57..b75260b 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | |||
@@ -11795,11 +11795,17 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
11795 | ret.Add(new LSL_Vector(opos.X, opos.Y, opos.Z)); | 11795 | ret.Add(new LSL_Vector(opos.X, opos.Y, opos.Z)); |
11796 | break; | 11796 | break; |
11797 | case ScriptBaseClass.OBJECT_ROT: | 11797 | case ScriptBaseClass.OBJECT_ROT: |
11798 | // Quaternion orot = obj.RotationOffset; | 11798 | { |
11799 | // ret.Add(new LSL_Rotation(orot.X, orot.Y, orot.Z, orot.W)); | 11799 | Quaternion rot = Quaternion.Identity; |
11800 | |||
11801 | if (obj.ParentGroup.RootPart == obj) | ||
11802 | rot = obj.ParentGroup.GroupRotation; | ||
11803 | else | ||
11804 | rot = obj.GetWorldRotation(); | ||
11800 | 11805 | ||
11801 | LSL_Rotation objrot = GetPartRot(obj); | 11806 | LSL_Rotation objrot = new LSL_Rotation(rot.X, rot.Y, rot.Z, rot.W); |
11802 | ret.Add(objrot); | 11807 | ret.Add(objrot); |
11808 | } | ||
11803 | break; | 11809 | break; |
11804 | case ScriptBaseClass.OBJECT_VELOCITY: | 11810 | case ScriptBaseClass.OBJECT_VELOCITY: |
11805 | Vector3 ovel = obj.Velocity; | 11811 | Vector3 ovel = obj.Velocity; |