aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region
diff options
context:
space:
mode:
authorMelanie2013-01-09 09:19:52 +0100
committerMelanie2013-01-09 09:19:52 +0100
commit7d519fde3b7eb53e8edb9a432a0a234b4ccd9096 (patch)
treee9b796ab78c264443ca215f63760599cb4a659cf /OpenSim/Region
parentRevert "Prevent empty Anim Packs" (diff)
parent* ubit pointed out another place where that check needed to be updated and I ... (diff)
downloadopensim-SC_OLD-7d519fde3b7eb53e8edb9a432a0a234b4ccd9096.zip
opensim-SC_OLD-7d519fde3b7eb53e8edb9a432a0a234b4ccd9096.tar.gz
opensim-SC_OLD-7d519fde3b7eb53e8edb9a432a0a234b4ccd9096.tar.bz2
opensim-SC_OLD-7d519fde3b7eb53e8edb9a432a0a234b4ccd9096.tar.xz
Merge branch 'teravuswork' into avination
Diffstat (limited to 'OpenSim/Region')
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs10
1 files changed, 8 insertions, 2 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
index 7ff30ca..7e77b0f 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
@@ -2353,8 +2353,14 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
2353 { 2353 {
2354 m_host.AddScriptLPS(1); 2354 m_host.AddScriptLPS(1);
2355 2355
2356
2357 // Teravus: if (m_host.ParentID == 0) is bug code because the ParentID for the Avatar will cause this to be nonzero for root prim attachments
2358 // which is then treated like a child prim rotation and it's offset gets cumulatively multiplied against.
2359 // to fix the scripted rotations we also have to check to see if the root part localid is the same as the host's localid.
2360 // RootPart != null should shortcircuit
2361
2356 // try to let this work as in SL... 2362 // try to let this work as in SL...
2357 if (m_host.ParentID == 0) 2363 if (m_host.ParentID == 0 || (m_host.ParentGroup != null && m_host == m_host.ParentGroup.RootPart))
2358 { 2364 {
2359 // special case: If we are root, rotate complete SOG to new rotation 2365 // special case: If we are root, rotate complete SOG to new rotation
2360 SetRot(m_host, rot); 2366 SetRot(m_host, rot);
@@ -7911,7 +7917,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
7911 7917
7912 LSL_Rotation q = rules.GetQuaternionItem(idx++); 7918 LSL_Rotation q = rules.GetQuaternionItem(idx++);
7913 // try to let this work as in SL... 7919 // try to let this work as in SL...
7914 if (part.ParentID == 0) 7920 if (part.ParentID == 0 || (part.ParentGroup != null && part == part.ParentGroup.RootPart))
7915 { 7921 {
7916 // special case: If we are root, rotate complete SOG to new rotation 7922 // special case: If we are root, rotate complete SOG to new rotation
7917 SetRot(part, q); 7923 SetRot(part, q);