aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/AsyncCommandManager.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/ScriptEngine/Shared/Api/Implementation/AsyncCommandManager.cs')
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Implementation/AsyncCommandManager.cs20
1 files changed, 20 insertions, 0 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/AsyncCommandManager.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/AsyncCommandManager.cs
index 5b22860..693992a 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/AsyncCommandManager.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/AsyncCommandManager.cs
@@ -304,6 +304,26 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
304 return null; 304 return null;
305 } 305 }
306 306
307 public static void StateChange(IScriptEngine engine, uint localID, UUID itemID)
308 {
309 // Remove a specific script
310
311 // Remove dataserver events
312 m_Dataserver[engine].RemoveEvents(localID, itemID);
313
314 IWorldComm comms = engine.World.RequestModuleInterface<IWorldComm>();
315 if (comms != null)
316 comms.DeleteListener(itemID);
317
318 IXMLRPC xmlrpc = engine.World.RequestModuleInterface<IXMLRPC>();
319 xmlrpc.DeleteChannels(itemID);
320 xmlrpc.CancelSRDRequests(itemID);
321
322 // Remove Sensors
323 m_SensorRepeat[engine].UnSetSenseRepeaterEvents(localID, itemID);
324
325 }
326
307 public static Object[] GetSerializationData(IScriptEngine engine, UUID itemID) 327 public static Object[] GetSerializationData(IScriptEngine engine, UUID itemID)
308 { 328 {
309 List<Object> data = new List<Object>(); 329 List<Object> data = new List<Object>();