public void RemoveRegion(Scene scene) { ISyncMessagePosterService syncMessage = scene.RequestModuleInterface <ISyncMessagePosterService>(); if (syncMessage != null) { syncMessage.Post(SyncMessageHelper.LogoutRegionAgents(scene.RegionInfo.RegionHandle), scene.RegionInfo.RegionHandle); } scene.EventManager.OnNewClient -= OnNewClient; scene.EventManager.OnClosingClient -= OnClosingClient; m_scenes.Remove(scene); }
public void RemoveRegion(IScene scene) { if (!scene.CloseQuietly) { ISyncMessagePosterService syncMessage = scene.RequestModuleInterface <ISyncMessagePosterService> (); if (syncMessage != null) { syncMessage.PostToServer(SyncMessageHelper.LogoutRegionAgents(scene.RegionInfo.RegionID)); } } scene.EventManager.OnNewClient -= OnNewClient; scene.EventManager.OnClosingClient -= OnClosingClient; m_scene = null; }