diff options
Diffstat (limited to 'OpenSim/Region/ScriptEngine')
-rw-r--r-- | OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | 18 | ||||
-rw-r--r-- | OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LSL_Constants.cs | 1 |
2 files changed, 9 insertions, 10 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs index 50e4804..5aef892 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | |||
@@ -1377,12 +1377,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1377 | } | 1377 | } |
1378 | 1378 | ||
1379 | if ((status & ScriptBaseClass.STATUS_BLOCK_GRAB) == ScriptBaseClass.STATUS_BLOCK_GRAB) | 1379 | if ((status & ScriptBaseClass.STATUS_BLOCK_GRAB) == ScriptBaseClass.STATUS_BLOCK_GRAB) |
1380 | { | 1380 | m_host.BlockGrab = value != 0; |
1381 | if (value != 0) | 1381 | |
1382 | m_host.SetBlockGrab(true); | 1382 | if ((status & ScriptBaseClass.STATUS_BLOCK_GRAB_OBJECT) == ScriptBaseClass.STATUS_BLOCK_GRAB_OBJECT) |
1383 | else | 1383 | m_host.ParentGroup.BlockGrabOverride = value != 0; |
1384 | m_host.SetBlockGrab(false); | ||
1385 | } | ||
1386 | 1384 | ||
1387 | if ((status & ScriptBaseClass.STATUS_DIE_AT_EDGE) == ScriptBaseClass.STATUS_DIE_AT_EDGE) | 1385 | if ((status & ScriptBaseClass.STATUS_DIE_AT_EDGE) == ScriptBaseClass.STATUS_DIE_AT_EDGE) |
1388 | { | 1386 | { |
@@ -1443,10 +1441,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1443 | return 0; | 1441 | return 0; |
1444 | 1442 | ||
1445 | case ScriptBaseClass.STATUS_BLOCK_GRAB: | 1443 | case ScriptBaseClass.STATUS_BLOCK_GRAB: |
1446 | if (m_host.GetBlockGrab()) | 1444 | return m_host.BlockGrab ? 1 : 0; |
1447 | return 1; | 1445 | |
1448 | else | 1446 | case ScriptBaseClass.STATUS_BLOCK_GRAB_OBJECT: |
1449 | return 0; | 1447 | return m_host.ParentGroup.BlockGrabOverride ? 1 : 0; |
1450 | 1448 | ||
1451 | case ScriptBaseClass.STATUS_DIE_AT_EDGE: | 1449 | case ScriptBaseClass.STATUS_DIE_AT_EDGE: |
1452 | if (m_host.GetDieAtEdge()) | 1450 | if (m_host.GetDieAtEdge()) |
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LSL_Constants.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LSL_Constants.cs index 7d80dcb..a96cd16 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LSL_Constants.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LSL_Constants.cs | |||
@@ -48,6 +48,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.ScriptBase | |||
48 | public const int STATUS_DIE_AT_EDGE = 128; | 48 | public const int STATUS_DIE_AT_EDGE = 128; |
49 | public const int STATUS_RETURN_AT_EDGE = 256; | 49 | public const int STATUS_RETURN_AT_EDGE = 256; |
50 | public const int STATUS_CAST_SHADOWS = 512; | 50 | public const int STATUS_CAST_SHADOWS = 512; |
51 | public const int STATUS_BLOCK_GRAB_OBJECT = 1024; | ||
51 | 52 | ||
52 | public const int AGENT = 1; | 53 | public const int AGENT = 1; |
53 | public const int AGENT_BY_LEGACY_NAME = 1; | 54 | public const int AGENT_BY_LEGACY_NAME = 1; |