aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs')
-rw-r--r--OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs16
1 files changed, 12 insertions, 4 deletions
diff --git a/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs b/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs
index 3dff98f..09cd4af 100644
--- a/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs
+++ b/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs
@@ -692,6 +692,9 @@ namespace OpenSim.Region.ScriptEngine.Common
692 public void llSetStatus(int status, int value) 692 public void llSetStatus(int status, int value)
693 { 693 {
694 m_host.AddScriptLPS(1); 694 m_host.AddScriptLPS(1);
695
696 int statusrotationaxis = 0;
697
695 if ((status & BuiltIn_Commands_BaseClass.STATUS_PHYSICS) == BuiltIn_Commands_BaseClass.STATUS_PHYSICS) 698 if ((status & BuiltIn_Commands_BaseClass.STATUS_PHYSICS) == BuiltIn_Commands_BaseClass.STATUS_PHYSICS)
696 { 699 {
697 if (value == 1) 700 if (value == 1)
@@ -713,15 +716,16 @@ namespace OpenSim.Region.ScriptEngine.Common
713 } 716 }
714 if ((status & BuiltIn_Commands_BaseClass.STATUS_ROTATE_X) == BuiltIn_Commands_BaseClass.STATUS_ROTATE_X) 717 if ((status & BuiltIn_Commands_BaseClass.STATUS_ROTATE_X) == BuiltIn_Commands_BaseClass.STATUS_ROTATE_X)
715 { 718 {
716 NotImplemented("llSetStatus - STATUS_ROTATE_X"); 719 statusrotationaxis |= BuiltIn_Commands_BaseClass.STATUS_ROTATE_X;
720
717 } 721 }
718 if ((status & BuiltIn_Commands_BaseClass.STATUS_ROTATE_Y) == BuiltIn_Commands_BaseClass.STATUS_ROTATE_Y) 722 if ((status & BuiltIn_Commands_BaseClass.STATUS_ROTATE_Y) == BuiltIn_Commands_BaseClass.STATUS_ROTATE_Y)
719 { 723 {
720 NotImplemented("llSetStatus - STATUS_ROTATE_Y"); 724 statusrotationaxis |= BuiltIn_Commands_BaseClass.STATUS_ROTATE_Y;
721 } 725 }
722 if ((status & BuiltIn_Commands_BaseClass.STATUS_ROTATE_Z) == BuiltIn_Commands_BaseClass.STATUS_ROTATE_Z) 726 if ((status & BuiltIn_Commands_BaseClass.STATUS_ROTATE_Z) == BuiltIn_Commands_BaseClass.STATUS_ROTATE_Z)
723 { 727 {
724 NotImplemented("llSetStatus - STATUS_ROTATE_Z"); 728 statusrotationaxis |= BuiltIn_Commands_BaseClass.STATUS_ROTATE_Z;
725 } 729 }
726 if ((status & BuiltIn_Commands_BaseClass.STATUS_BLOCK_GRAB) == BuiltIn_Commands_BaseClass.STATUS_BLOCK_GRAB) 730 if ((status & BuiltIn_Commands_BaseClass.STATUS_BLOCK_GRAB) == BuiltIn_Commands_BaseClass.STATUS_BLOCK_GRAB)
727 { 731 {
@@ -739,7 +743,11 @@ namespace OpenSim.Region.ScriptEngine.Common
739 { 743 {
740 NotImplemented("llSetStatus - STATUS_SANDBOX"); 744 NotImplemented("llSetStatus - STATUS_SANDBOX");
741 } 745 }
742 746 if (statusrotationaxis != 0)
747 {
748 m_host.SetAxisRotation(statusrotationaxis, value);
749
750 }
743 return; 751 return;
744 } 752 }
745 753