aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ScriptEngine/Shared/Instance
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/ScriptEngine/Shared/Instance')
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Instance/ScriptInstance.cs23
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Instance/ScriptSerializer.cs11
2 files changed, 8 insertions, 26 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Instance/ScriptInstance.cs b/OpenSim/Region/ScriptEngine/Shared/Instance/ScriptInstance.cs
index f1abd4b..5793cc9 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Instance/ScriptInstance.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Instance/ScriptInstance.cs
@@ -121,8 +121,6 @@ namespace OpenSim.Region.ScriptEngine.Shared.Instance
121 121
122 public bool Running { get; set; } 122 public bool Running { get; set; }
123 123
124 public bool Run { get; set; }
125
126 public bool Suspended 124 public bool Suspended
127 { 125 {
128 get { return m_Suspended; } 126 get { return m_Suspended; }
@@ -218,7 +216,6 @@ namespace OpenSim.Region.ScriptEngine.Shared.Instance
218 m_postOnRez = postOnRez; 216 m_postOnRez = postOnRez;
219 m_AttachedAvatar = part.ParentGroup.AttachedAvatar; 217 m_AttachedAvatar = part.ParentGroup.AttachedAvatar;
220 m_RegionID = part.ParentGroup.Scene.RegionInfo.RegionID; 218 m_RegionID = part.ParentGroup.Scene.RegionInfo.RegionID;
221 Run = true;
222 219
223 if (part != null) 220 if (part != null)
224 { 221 {
@@ -315,11 +312,11 @@ namespace OpenSim.Region.ScriptEngine.Shared.Instance
315 part.SetScriptEvents(ItemID, 312 part.SetScriptEvents(ItemID,
316 (int)m_Script.GetStateEventFlags(State)); 313 (int)m_Script.GetStateEventFlags(State));
317 314
318 Running = false; 315 if (!Running)
319
320 if (ShuttingDown)
321 m_startOnInit = false; 316 m_startOnInit = false;
322 317
318 Running = false;
319
323 // we get new rez events on sim restart, too 320 // we get new rez events on sim restart, too
324 // but if there is state, then we fire the change 321 // but if there is state, then we fire the change
325 // event 322 // event
@@ -355,15 +352,13 @@ namespace OpenSim.Region.ScriptEngine.Shared.Instance
355 352
356 public void Init() 353 public void Init()
357 { 354 {
358 if (!m_startOnInit) 355 if (ShuttingDown)
359 return; 356 return;
360 357
361 if (m_startedFromSavedState) 358 if (m_startedFromSavedState)
362 { 359 {
363 if (!Run) 360 if (m_startOnInit)
364 return; 361 Start();
365
366 Start();
367 if (m_postOnRez) 362 if (m_postOnRez)
368 { 363 {
369 PostEvent(new EventParams("on_rez", 364 PostEvent(new EventParams("on_rez",
@@ -395,10 +390,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Instance
395 } 390 }
396 else 391 else
397 { 392 {
398 if (!Run) 393 if (m_startOnInit)
399 return; 394 Start();
400
401 Start();
402 PostEvent(new EventParams("state_entry", 395 PostEvent(new EventParams("state_entry",
403 new Object[0], new DetectParams[0])); 396 new Object[0], new DetectParams[0]));
404 if (m_postOnRez) 397 if (m_postOnRez)
diff --git a/OpenSim/Region/ScriptEngine/Shared/Instance/ScriptSerializer.cs b/OpenSim/Region/ScriptEngine/Shared/Instance/ScriptSerializer.cs
index 797bce3..bcdc7bf 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Instance/ScriptSerializer.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Instance/ScriptSerializer.cs
@@ -55,7 +55,6 @@ namespace OpenSim.Region.ScriptEngine.Shared.Instance
55 public static string Serialize(ScriptInstance instance) 55 public static string Serialize(ScriptInstance instance)
56 { 56 {
57 bool running = instance.Running; 57 bool running = instance.Running;
58 bool enabled = instance.Run;
59 58
60 XmlDocument xmldoc = new XmlDocument(); 59 XmlDocument xmldoc = new XmlDocument();
61 60
@@ -78,12 +77,6 @@ namespace OpenSim.Region.ScriptEngine.Shared.Instance
78 77
79 rootElement.AppendChild(run); 78 rootElement.AppendChild(run);
80 79
81 XmlElement run_enable = xmldoc.CreateElement("", "Run", "");
82 run_enable.AppendChild(xmldoc.CreateTextNode(
83 enabled.ToString()));
84
85 rootElement.AppendChild(run_enable);
86
87 Dictionary<string, Object> vars = instance.GetVars(); 80 Dictionary<string, Object> vars = instance.GetVars();
88 81
89 XmlElement variables = xmldoc.CreateElement("", "Variables", ""); 82 XmlElement variables = xmldoc.CreateElement("", "Variables", "");
@@ -232,7 +225,6 @@ namespace OpenSim.Region.ScriptEngine.Shared.Instance
232 { 225 {
233 object varValue; 226 object varValue;
234 XmlNodeList partL = rootNode.ChildNodes; 227 XmlNodeList partL = rootNode.ChildNodes;
235 instance.Run = true;
236 228
237 foreach (XmlNode part in partL) 229 foreach (XmlNode part in partL)
238 { 230 {
@@ -244,9 +236,6 @@ namespace OpenSim.Region.ScriptEngine.Shared.Instance
244 case "Running": 236 case "Running":
245 instance.Running=bool.Parse(part.InnerText); 237 instance.Running=bool.Parse(part.InnerText);
246 break; 238 break;
247 case "Run":
248 instance.Run = bool.Parse(part.InnerText);
249 break;
250 case "Variables": 239 case "Variables":
251 XmlNodeList varL = part.ChildNodes; 240 XmlNodeList varL = part.ChildNodes;
252 foreach (XmlNode var in varL) 241 foreach (XmlNode var in varL)