From d263a044b1ebb13477b2b391637ccc2da4368838 Mon Sep 17 00:00:00 2001 From: Teravus Ovares Date: Sun, 25 Nov 2007 04:52:14 +0000 Subject: * Added the ability to restart your individual sims from within them using the estate tools. * The sims properly restart, however they don't yet notify the existing avatars that they are up. To see the sim again, you'll need to log-out and back in until I can figure out how to get the proper data to the sims and to the avatar so they reconnect again. --- OpenSim/Region/Environment/Scenes/SceneBase.cs | 34 ++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) (limited to 'OpenSim/Region/Environment/Scenes/SceneBase.cs') diff --git a/OpenSim/Region/Environment/Scenes/SceneBase.cs b/OpenSim/Region/Environment/Scenes/SceneBase.cs index 1bb7d10..4359374 100644 --- a/OpenSim/Region/Environment/Scenes/SceneBase.cs +++ b/OpenSim/Region/Environment/Scenes/SceneBase.cs @@ -27,6 +27,7 @@ */ using System; using System.Collections.Generic; +using System.Timers; using libsecondlife; using OpenSim.Framework; using OpenSim.Framework.Communications.Cache; @@ -37,6 +38,13 @@ namespace OpenSim.Region.Environment.Scenes { public abstract class SceneBase : IScene { + #region Events + + public event restart OnRestart; + public event regionup OnRegionUp; + + #endregion + #region Fields private readonly ClientManager m_clientManager = new ClientManager(); @@ -48,6 +56,7 @@ namespace OpenSim.Region.Environment.Scenes protected ulong m_regionHandle; protected string m_regionName; protected RegionInfo m_regInfo; + protected RegionStatus m_regStatus; public TerrainEngine Terrain; @@ -69,6 +78,12 @@ namespace OpenSim.Region.Environment.Scenes set { m_assetCache = value; } } + public RegionStatus Region_Status + { + get { return m_regStatus; } + set { m_regStatus = value; } + } + #endregion #region Update Methods @@ -78,6 +93,8 @@ namespace OpenSim.Region.Environment.Scenes /// public abstract void Update(); + + #endregion #region Terrain Methods @@ -130,6 +147,23 @@ namespace OpenSim.Region.Environment.Scenes get { return m_nextLocalId++; } } + #region admin stuff + + /// + /// Region Restart - Seconds till restart. + /// + /// + public virtual void Restart(int seconds) + { + MainLog.Instance.Error("REGION", "passing Restart Message up the namespace"); + OnRestart(RegionInfo); + } + + + public abstract void OtherRegionUp(RegionInfo thisRegion); + + + #endregion #region Shutdown /// -- cgit v1.1