diff options
Diffstat (limited to 'OpenSim/Region/ScriptEngine/DotNetEngine')
-rw-r--r-- | OpenSim/Region/ScriptEngine/DotNetEngine/ScriptManager.cs | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/OpenSim/Region/ScriptEngine/DotNetEngine/ScriptManager.cs b/OpenSim/Region/ScriptEngine/DotNetEngine/ScriptManager.cs index 008abd0..2d2a06a 100644 --- a/OpenSim/Region/ScriptEngine/DotNetEngine/ScriptManager.cs +++ b/OpenSim/Region/ScriptEngine/DotNetEngine/ScriptManager.cs | |||
@@ -62,7 +62,7 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine | |||
62 | // PROVIDE SCRIPT WITH ITS INTERFACE TO OpenSim | 62 | // PROVIDE SCRIPT WITH ITS INTERFACE TO OpenSim |
63 | 63 | ||
64 | 64 | ||
65 | public override void _StartScript(uint localID, LLUUID itemID, string Script) | 65 | public override void _StartScript(uint localID, LLUUID itemID, string Script, int startParam, bool postOnRez) |
66 | { | 66 | { |
67 | m_scriptEngine.Log.Debug("[" + m_scriptEngine.ScriptEngineName + "]: ScriptManager StartScript: localID: " + localID + ", itemID: " + itemID); | 67 | m_scriptEngine.Log.Debug("[" + m_scriptEngine.ScriptEngineName + "]: ScriptManager StartScript: localID: " + localID + ", itemID: " + itemID); |
68 | 68 | ||
@@ -114,6 +114,8 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine | |||
114 | //#endif | 114 | //#endif |
115 | 115 | ||
116 | CompiledScript.Source = Script; | 116 | CompiledScript.Source = Script; |
117 | CompiledScript.StartParam = startParam; | ||
118 | |||
117 | // Add it to our script memstruct | 119 | // Add it to our script memstruct |
118 | m_scriptEngine.m_ScriptManager.SetScript(localID, itemID, CompiledScript); | 120 | m_scriptEngine.m_ScriptManager.SetScript(localID, itemID, CompiledScript); |
119 | 121 | ||
@@ -130,6 +132,10 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine | |||
130 | int eventFlags = m_scriptEngine.m_ScriptManager.GetStateEventFlags(localID, itemID); | 132 | int eventFlags = m_scriptEngine.m_ScriptManager.GetStateEventFlags(localID, itemID); |
131 | m_host.SetScriptEvents(itemID, eventFlags); | 133 | m_host.SetScriptEvents(itemID, eventFlags); |
132 | m_scriptEngine.m_EventQueueManager.AddToScriptQueue(localID, itemID, "state_entry", EventQueueManager.llDetectNull, new object[] { }); | 134 | m_scriptEngine.m_EventQueueManager.AddToScriptQueue(localID, itemID, "state_entry", EventQueueManager.llDetectNull, new object[] { }); |
135 | if(postOnRez) | ||
136 | { | ||
137 | m_scriptEngine.m_EventQueueManager.AddToScriptQueue(localID, itemID, "on_rez", EventQueueManager.llDetectNull, new object[] { new LSL_Types.LSLInteger(startParam) }); | ||
138 | } | ||
133 | } | 139 | } |
134 | catch (Exception e) // LEGIT: User Scripting | 140 | catch (Exception e) // LEGIT: User Scripting |
135 | { | 141 | { |