diff options
Diffstat (limited to 'OpenSim/Region/Framework/Scenes/Scene.cs')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/Scene.cs | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs index 0c7b2e8..ae85605 100644 --- a/OpenSim/Region/Framework/Scenes/Scene.cs +++ b/OpenSim/Region/Framework/Scenes/Scene.cs | |||
@@ -2391,14 +2391,16 @@ namespace OpenSim.Region.Framework.Scenes | |||
2391 | m_log.DebugFormat("[SCENE]: Problem adding scene object {0} in {1} ", sog.UUID, RegionInfo.RegionName); | 2391 | m_log.DebugFormat("[SCENE]: Problem adding scene object {0} in {1} ", sog.UUID, RegionInfo.RegionName); |
2392 | return false; | 2392 | return false; |
2393 | } | 2393 | } |
2394 | 2394 | ||
2395 | newObject.RootPart.ParentGroup.CreateScriptInstances(0, false, DefaultScriptEngine, GetStateSource(newObject)); | 2395 | newObject.RootPart.ParentGroup.CreateScriptInstances(0, false, DefaultScriptEngine, 2); |
2396 | 2396 | ||
2397 | newObject.ResumeScripts(); | 2397 | newObject.ResumeScripts(); |
2398 | 2398 | ||
2399 | // Do this as late as possible so that listeners have full access to the incoming object | 2399 | // Do this as late as possible so that listeners have full access to the incoming object |
2400 | EventManager.TriggerOnIncomingSceneObject(newObject); | 2400 | EventManager.TriggerOnIncomingSceneObject(newObject); |
2401 | 2401 | ||
2402 | TriggerChangedTeleport(newObject); | ||
2403 | |||
2402 | return true; | 2404 | return true; |
2403 | } | 2405 | } |
2404 | 2406 | ||
@@ -2525,7 +2527,7 @@ namespace OpenSim.Region.Framework.Scenes | |||
2525 | return true; | 2527 | return true; |
2526 | } | 2528 | } |
2527 | 2529 | ||
2528 | private int GetStateSource(SceneObjectGroup sog) | 2530 | private void TriggerChangedTeleport(SceneObjectGroup sog) |
2529 | { | 2531 | { |
2530 | ScenePresence sp = GetScenePresence(sog.OwnerID); | 2532 | ScenePresence sp = GetScenePresence(sog.OwnerID); |
2531 | 2533 | ||
@@ -2536,12 +2538,13 @@ namespace OpenSim.Region.Framework.Scenes | |||
2536 | if (aCircuit != null && (aCircuit.teleportFlags != (uint)TeleportFlags.Default)) | 2538 | if (aCircuit != null && (aCircuit.teleportFlags != (uint)TeleportFlags.Default)) |
2537 | { | 2539 | { |
2538 | // This will get your attention | 2540 | // This will get your attention |
2539 | //m_log.Error("[XXX] Triggering CHANGED_TELEPORT"); | 2541 | //m_log.Error("[XXX] Triggering "); |
2540 | 2542 | ||
2541 | return 5; // StateSource.Teleporting | 2543 | // Trigger CHANGED_TELEPORT |
2544 | sp.Scene.EventManager.TriggerOnScriptChangedEvent(sog.LocalId, (uint)Changed.TELEPORT); | ||
2542 | } | 2545 | } |
2546 | |||
2543 | } | 2547 | } |
2544 | return 2; // StateSource.PrimCrossing | ||
2545 | } | 2548 | } |
2546 | 2549 | ||
2547 | #endregion | 2550 | #endregion |