diff options
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | 2 | ||||
-rw-r--r-- | OpenSim/Region/ScriptEngine/Shared/Helpers.cs | 14 |
2 files changed, 15 insertions, 1 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs index 4bf3e93..3fbe257 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | |||
@@ -637,7 +637,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
637 | public void llDie() | 637 | public void llDie() |
638 | { | 638 | { |
639 | m_host.AddScriptLPS(1); | 639 | m_host.AddScriptLPS(1); |
640 | World.DeleteSceneObject(m_host.ParentGroup); | 640 | throw new SelfDeleteException(); |
641 | } | 641 | } |
642 | 642 | ||
643 | public double llGround(LSL_Types.Vector3 offset) | 643 | public double llGround(LSL_Types.Vector3 offset) |
diff --git a/OpenSim/Region/ScriptEngine/Shared/Helpers.cs b/OpenSim/Region/ScriptEngine/Shared/Helpers.cs index 28a2173..cd1f2c5 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Helpers.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Helpers.cs | |||
@@ -52,6 +52,20 @@ namespace OpenSim.Region.ScriptEngine.Shared | |||
52 | } | 52 | } |
53 | } | 53 | } |
54 | 54 | ||
55 | [Serializable] | ||
56 | public class SelfDeleteException : Exception | ||
57 | { | ||
58 | public SelfDeleteException() | ||
59 | { | ||
60 | } | ||
61 | |||
62 | protected SelfDeleteException( | ||
63 | SerializationInfo info, | ||
64 | StreamingContext context) | ||
65 | { | ||
66 | } | ||
67 | } | ||
68 | |||
55 | public class DetectParams | 69 | public class DetectParams |
56 | { | 70 | { |
57 | public DetectParams() | 71 | public DetectParams() |