using System; using XMainClient.UI; using XMainClient.UI.UICommon; using XUtliPoolLib; namespace XMainClient { internal class XWorldStage : XConcreteStage { public XWorldStage() : base(EXStage.World) { } protected override void InstallCamera() { XSingleton.singleton.CreateComponent(XSingleton.singleton.GameCamera, XCameraSoloComponent.uuID); XSingleton.singleton.CreateComponent(XSingleton.singleton.GameCamera, XCameraVAdjustComponent.uuID); XSingleton.singleton.CreateComponent(XSingleton.singleton.GameCamera, XCameraIntellectiveFollow.uuID); XSingleton.singleton.CreateComponent(XSingleton.singleton.GameCamera, XCameraWallComponent.uuID); base.InstallCamera(); } public override void OnEnterStage(EXStage eOld) { base.OnEnterStage(eOld); } public override void OnLeaveStage(EXStage eNew) { base.OnLeaveStage(eNew); } public override void OnEnterScene(uint sceneid, bool transfer) { base.OnEnterScene(sceneid, transfer); XSingleton.singleton.m_uiTool.SetRootPanelUpdateFreq(3); XSingleton.singleton.LoadWorldUI(this._eStage); bool flag = DlgBase.singleton.IsLoaded(); if (flag) { DlgBase.singleton.SetVisible(true, true); } bool flag2 = DlgBase.singleton.IsLoaded(); if (flag2) { DlgBase.singleton.SetVisible(true, true); } XSingleton.singleton.InitAIMgr(); } public override void OnLeaveScene(bool transfer) { XSingleton.singleton.OnLeaveScene(); XSingleton.singleton.OnLeaveScene(); XSingleton.singleton.OnLeaveScene(); XSingleton.singleton.OnLeaveScene(); XSingleton.singleton.UnloadWorldUI(); base.OnLeaveScene(transfer); } } }