少年修仙传客户端代码仓库
client_Wu Xijin
2019-02-03 54bc622f5930f6e135ad72d871716f98af0840ab
3335 重构窗口管理
18个文件已修改
155 ■■■■■ 已修改文件
Core/Camera/CameraSwitch.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/GameEngine/Model/Player/PlayerDatas.cs 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Fight/Stage/StageLoadProcessor.cs 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/AssetVersion/InGameDownLoad.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Chat/ChatCenter.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/TargetBriefInfoWin.cs 64 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FairyAu/FairyGrabBossModel.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FindPrecious/FindPreciousModel.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainInterfacePanel/FeatureNoticeModel.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainInterfacePanel/PlayerTaskDatas.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainInterfacePanel/TipPanel.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Sound/SoundPlayer.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/TreasureModel.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Vip/FirstTimeRechargeModel.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Vip/VipModel.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/WindowBase/Windows.cs 32 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/WorldMap/MapUtility.cs 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
UI/Core/CanvasAddition.cs 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/Camera/CameraSwitch.cs
@@ -25,7 +25,7 @@
    private void OnWindowOpen(Window _window)
    {
        cameraActive = !WindowCenter.Instance.ExitAnyFullScreenOrMaskWin();
        cameraActive = !WindowCenter.Instance.ExistAnyFullScreenOrMaskWin();
        if (!cameraActive)
        {
@@ -40,7 +40,7 @@
    private void OnWindowClose(Window _window)
    {
        cameraActive = !WindowCenter.Instance.ExitAnyFullScreenOrMaskWin();
        cameraActive = !WindowCenter.Instance.ExistAnyFullScreenOrMaskWin();
        if (!cameraActive)
        {
Core/GameEngine/Model/Player/PlayerDatas.cs
@@ -601,8 +601,6 @@
                        }
                        extersion.pkState = 0;
                        var sendInfo = new CA108_tagCMRefreshMainServerRole();
                        GameNetSystem.Instance.SendInfo(sendInfo);
                        baseData.MapID = baseData.mainServerMapIdRecord;
                        baseData.dungeonLineId = 0;
                        ModelCenter.Instance.GetModel<DungeonModel>().ResetBufData();
Fight/Stage/StageLoadProcessor.cs
@@ -371,6 +371,12 @@
            stage.mapId = mapId;
            StageLoad.Instance.currentStage = stage;
            if (command.isClientLoadMap && command.serverType == ServerType.CrossSever)
            {
                var sendInfo = new CA108_tagCMRefreshMainServerRole();
                GameNetSystem.Instance.SendInfo(sendInfo);
            }
        }
        public override void Update()
System/AssetVersion/InGameDownLoad.cs
@@ -548,7 +548,7 @@
            return false;
        }
        if (WindowCenter.Instance.ExitAnyFullScreenOrMaskWin())
        if (WindowCenter.Instance.ExistAnyFullScreenOrMaskWin())
        {
            return false;
        }
System/Chat/ChatCenter.cs
@@ -764,7 +764,7 @@
        private void CheckChatFloatOpen()
        {
            if (WindowCenter.Instance.ExitAnyFullScreenOrMaskWin() && !WindowCenter.Instance.IsOpen<LoadingWin>()
            if (WindowCenter.Instance.ExistAnyFullScreenOrMaskWin() && !WindowCenter.Instance.IsOpen<LoadingWin>()
                && StageLoad.Instance.currentStage is DungeonStage && !WindowCenter.Instance.IsOpen<TreasureBaseWin>())
            {
                if (!WindowCenter.Instance.IsOpen<ChatFloatWin>())
@@ -811,7 +811,7 @@
                return;
            }
            if (!WindowCenter.Instance.IsOpen<MainInterfaceWin>()
                || WindowCenter.Instance.ExitAnyFullScreenOrMaskWin()
                || WindowCenter.Instance.ExistAnyFullScreenOrMaskWin()
                || StageLoad.Instance.isLoading
                || NewBieCenter.Instance.inGuiding)
            {
System/Dungeon/TargetBriefInfoWin.cs
@@ -37,14 +37,21 @@
        if (_show)
        {
            var boss = GAMgr.Instance.GetBySID(_instanceId) as GActorNpcFight;
            bossInfo = new MonsterInfo()
            if (boss != null)
            {
                instanceId = _instanceId,
                npcId = _npcId,
                hp = boss != null ? boss.ActorInfo.RealHp : 0,
                maxHp = boss != null ? boss.ActorInfo.RealMaxHp : 0,
                level = boss != null ? boss.ActorInfo.LV : 0
            };
                bossInfo = new MonsterInfo()
                {
                    instanceId = _instanceId,
                    npcId = _npcId,
                    hp = boss.ActorInfo.RealHp,
                    maxHp = boss.ActorInfo.RealMaxHp,
                    level = boss.ActorInfo.LV
                };
            }
            else
            {
                bossInfo = default(MonsterInfo);
            }
            playerInfo = default(PlayerInfo);
        }
@@ -82,13 +89,22 @@
        }
        playerInfo = default(PlayerInfo);
        bossInfo = new MonsterInfo()
        var boss = GAMgr.Instance.GetBySID(_instanceId) as GActorNpcFight;
        if (boss != null)
        {
            instanceId = _instanceId,
            npcId = bossInfo.npcId,
            hp = _hp,
            maxHp = _maxHp
        };
            bossInfo = new MonsterInfo()
            {
                instanceId = _instanceId,
                npcId = _npcId,
                hp = boss.ActorInfo.RealHp,
                maxHp = boss.ActorInfo.RealMaxHp,
                level = boss.ActorInfo.LV
            };
        }
        else
        {
            bossInfo = default(MonsterInfo);
        }
        var mapId = PlayerDatas.Instance.baseData.MapID;
        var dataMapId = MapUtility.GetDataMapId(mapId);
@@ -160,15 +176,19 @@
        }
        bossInfo = default(MonsterInfo);
        playerInfo = new PlayerInfo()
        var player = GAMgr.Instance.GetBySID(_instanceId) as GActorPlayerBase;
        if (player != null)
        {
            instanceId = _instanceId,
            hp = _hp,
            maxHp = _maxHp,
            job = playerInfo.job,
            level = playerInfo.level,
            name = playerInfo.name
        };
            playerInfo = new PlayerInfo()
            {
                instanceId = _instanceId,
                job = player.ActorInfo.Job,
                name = player.ActorInfo.PlayerName,
                level = player.ActorInfo.LV,
                hp = player.ActorInfo.RealHp,
                maxHp = player.ActorInfo.RealMaxHp
            };
        }
        if (!WindowCenter.Instance.IsOpen<TargetBriefInfoWin>())
        {
@@ -333,7 +353,7 @@
            if (TargetBriefInfo.playerInfo != playerInfo)
            {
                if (playerInfo.instanceId == 0)
                if (TargetBriefInfo.playerInfo.instanceId == 0)
                {
                    ShowPlayerLifeBar(TargetBriefInfo.playerInfo, false);
                }
System/FairyAu/FairyGrabBossModel.cs
@@ -960,7 +960,7 @@
            {
                return false;
            }
            if (WindowCenter.Instance.ExitAnyFullScreenOrMaskWin())
            if (WindowCenter.Instance.ExistAnyFullScreenOrMaskWin())
            {
                return false;
            }
System/FindPrecious/FindPreciousModel.cs
@@ -661,7 +661,7 @@
                return false;
            }
            if (WindowCenter.Instance.ExitAnyFullScreenOrMaskWin())
            if (WindowCenter.Instance.ExistAnyFullScreenOrMaskWin())
            {
                return false;
            }
System/MainInterfacePanel/FeatureNoticeModel.cs
@@ -182,7 +182,7 @@
        var treasureModel = ModelCenter.Instance.GetModel<TreasureModel>();
        var IsLoading = StageLoad.Instance.isLoading;
        if (NewBieCenter.Instance.inGuiding || treasureModel.newGotShowing || inDungeon || !IsOpenMaininterface
            || treasureModel.treasureStageUpShow || WindowCenter.Instance.ExitAnyFullScreenOrMaskWin() ||
            || treasureModel.treasureStageUpShow || WindowCenter.Instance.ExistAnyFullScreenOrMaskWin() ||
            IsOpenOffLineOnHook || IsLoading)
        {
            yield break;
System/MainInterfacePanel/PlayerTaskDatas.cs
@@ -358,7 +358,7 @@
                if (NPCid == config.NpcID[i])
                {
                    if (!WindowCenter.Instance.IsOpen<DialogueDuidanceWin>() && IsOpenMain
                        && !treasureStageUpShow && !WindowCenter.Instance.ExitAnyFullScreenOrMaskWin())
                        && !treasureStageUpShow && !WindowCenter.Instance.ExistAnyFullScreenOrMaskWin())
                    {
                        WindowCenter.Instance.Close<MainInterfaceWin>();
                        WindowCenter.Instance.Open<DialogueDuidanceWin>();
System/MainInterfacePanel/TipPanel.cs
@@ -62,7 +62,7 @@
        {
            yield return null;
            if (WindowCenter.Instance.IsOpen<MainInterfaceWin>() && !NewBieCenter.Instance.inGuiding
                && !WindowCenter.Instance.ExitAnyFullScreenOrMaskWin() && !StageLoad.Instance.isLoading
                && !WindowCenter.Instance.ExistAnyFullScreenOrMaskWin() && !StageLoad.Instance.isLoading
                && !treasureModel.newGotShowing)
            {
                IsOPenTip();
@@ -73,7 +73,7 @@
        {
            yield return WaitingForSecondConst.WaitMS500;
            if (WindowCenter.Instance.IsOpen<MainInterfaceWin>() && !NewBieCenter.Instance.inGuiding
                && !WindowCenter.Instance.ExitAnyFullScreenOrMaskWin() && !StageLoad.Instance.isLoading
                && !WindowCenter.Instance.ExistAnyFullScreenOrMaskWin() && !StageLoad.Instance.isLoading
                && StageLoad.Instance.currentStage is DungeonStage && !treasureModel.newGotShowing)
            {
                IsOPenTip();
System/Sound/SoundPlayer.cs
@@ -222,7 +222,7 @@
        if (clip != null)
        {
            _source.volume = SystemSetting.Instance.GetSoundEffect() *
                (WindowCenter.Instance.ExitAnyFullScreenOrMaskWin() ? GeneralDefine.audioScaleWhenFullScreenOn : 1f);
                (WindowCenter.Instance.ExistAnyFullScreenOrMaskWin() ? GeneralDefine.audioScaleWhenFullScreenOn : 1f);
            _source.PlayOneShot(clip);
        }
System/Treasure/TreasureModel.cs
@@ -303,7 +303,7 @@
        {
            if (serverInited)
            {
                if (WindowCenter.Instance.IsOpen<MainInterfaceWin>() && !WindowCenter.Instance.ExitAnyFullScreenOrMaskWin())
                if (WindowCenter.Instance.IsOpen<MainInterfaceWin>() && !WindowCenter.Instance.ExistAnyFullScreenOrMaskWin())
                {
                    if (!WindowCenter.Instance.IsOpen<TreasureRegulusPopWin>())
                    {
@@ -1110,7 +1110,7 @@
            }
            if (!PreFightMission.Instance.IsFinished() || newGotTreasureId == 0
                || NewBieCenter.Instance.inGuiding || !WindowCenter.Instance.IsOpen<MainInterfaceWin>()
                || WindowCenter.Instance.ExitAnyFullScreenOrMaskWinLEqual(WindowType.Base)
                || WindowCenter.Instance.ExistAnyFullScreenOrMaskWinLEqual(WindowType.Base)
                || WindowCenter.Instance.IsOpen<TreasureNewGotWin>())
            {
                return;
System/Vip/FirstTimeRechargeModel.cs
@@ -150,7 +150,7 @@
        private void windowBeforeOpenEvent(Window obj)
        {
            if ((!WindowCenter.Instance.IsOpen<MainInterfaceWin>() && WindowCenter.Instance.ExitAnyFullScreenOrMaskWin()) || obj is ChatWin)
            if ((!WindowCenter.Instance.IsOpen<MainInterfaceWin>() && WindowCenter.Instance.ExistAnyFullScreenOrMaskWin()) || obj is ChatWin)
            {
                if (WindowCenter.Instance.IsOpen("FirstTimeRechargeWin"))
                {
@@ -204,7 +204,7 @@
            int second = (int)ts.TotalSeconds;
            if (CumulativeTime != 0 && PlayerDatas.Instance.baseData.LV <= FirstGoldTimeOut && PlayerDatas.Instance.baseData.coinPointTotal <= 0 && second > 0 /*&& !inDungeon*/ && CumulativeTime - second > 0)
            {
                if (WindowCenter.Instance.IsOpen<MainInterfaceWin>() && !WindowCenter.Instance.ExitAnyFullScreenOrMaskWin()&& !WindowCenter.Instance.IsOpen<ChatWin>())
                if (WindowCenter.Instance.IsOpen<MainInterfaceWin>() && !WindowCenter.Instance.ExistAnyFullScreenOrMaskWin()&& !WindowCenter.Instance.IsOpen<ChatWin>())
                {
                    if (!WindowCenter.Instance.IsOpen("FirstTimeRechargeWin"))
                    {
System/Vip/VipModel.cs
@@ -584,7 +584,7 @@
                return;
            }
            if (!WindowCenter.Instance.IsOpen<MainInterfaceWin>()
                || WindowCenter.Instance.ExitAnyFullScreenOrMaskWin()
                || WindowCenter.Instance.ExistAnyFullScreenOrMaskWin()
                || NewBieCenter.Instance.inGuiding
                || WindowCenter.Instance.IsOpen<VipExperienceWin>())
            {
@@ -989,7 +989,7 @@
            if (!NewBieCenter.Instance.inGuiding && WindowCenter.Instance.IsOpen<MainInterfaceWin>() && !waitingJump)
            {
                if (PlayerDatas.Instance.baseData.coinPointTotal > 0 && !firstChargeRewardGet
                                && firstRechargeOpen && !WindowCenter.Instance.ExitAnyFullScreenOrMaskWin())
                                && firstRechargeOpen && !WindowCenter.Instance.ExistAnyFullScreenOrMaskWin())
                {
                    firstRechargeOpen = false;
                    WindowCenter.Instance.Close<MainInterfaceWin>();
System/WindowBase/Windows.cs
@@ -428,9 +428,9 @@
            }
        }
        public bool ExitAnyFullScreenOrMaskWin()
        public bool ExistAnyFullScreenOrMaskWin()
        {
            bool exist = false;
            var exist = false;
            foreach (var window in windows.Values)
            {
                if (window.windowInfo.needMask || window.windowInfo.fullScreen)
@@ -451,9 +451,9 @@
        /// </summary>
        /// <param name="windowType"></param>
        /// <returns></returns>
        public bool ExitAnyFullScreenOrMaskWinLEqual(WindowType windowType)
        public bool ExistAnyFullScreenOrMaskWinLEqual(WindowType windowType)
        {
            bool exist = false;
            var exist = false;
            foreach (var window in windows.Values)
            {
                if ((window.windowInfo.needMask || window.windowInfo.fullScreen) && window.windowInfo.windowType >= windowType)
@@ -551,6 +551,7 @@
            }
        }
        float checkTimer = 0f;
        private void LateUpdate()
        {
            while (closeCommands.Count > 0)
@@ -594,6 +595,29 @@
            }
            checkTimer += Time.deltaTime;
            if (checkTimer > 2f)
            {
                checkTimer = 0f;
                if (!StageLoad.Instance.isLoading)
                {
                    var exceptOpen = StageLoad.Instance.stageType == Stage.E_StageType.Dungeon
                        && !ExistAnyFullScreenOrMaskWinLEqual(WindowType.Base);
                    if (exceptOpen != IsOpen("MainInterfaceWin"))
                    {
                        if (exceptOpen)
                        {
                            Open("MainInterfaceWin", true);
                        }
                        else
                        {
                            Close("MainInterfaceWin");
                        }
                    }
                }
            }
        }
        private void ExecuteFirstOpen(OpenCommand command)
System/WorldMap/MapUtility.cs
@@ -85,4 +85,11 @@
        return config.MapFBType != (int)MapType.OpenCountry;
    }
    public static bool IsCrossServerMap(int mapId)
    {
        var dataMapId = GetDataMapId(mapId);
        return dataMapId == CrossServerOneVsOneModel.CrossServerDataMapId
           || dataMapId == CrossServerBossModel.DATA_MAPID;
    }
}
UI/Core/CanvasAddition.cs
@@ -49,10 +49,10 @@
                culling = false;
                break;
            case CullingFullScreenType.Any:
                culling = WindowCenter.Instance.ExitAnyFullScreenOrMaskWin();
                culling = WindowCenter.Instance.ExistAnyFullScreenOrMaskWin();
                break;
            default:
                culling = WindowCenter.Instance.ExitAnyFullScreenOrMaskWinLEqual((WindowType)m_Culling);
                culling = WindowCenter.Instance.ExistAnyFullScreenOrMaskWinLEqual((WindowType)m_Culling);
                break;
        }
@@ -68,10 +68,10 @@
                culling = false;
                break;
            case CullingFullScreenType.Any:
                culling = WindowCenter.Instance.ExitAnyFullScreenOrMaskWin();
                culling = WindowCenter.Instance.ExistAnyFullScreenOrMaskWin();
                break;
            default:
                culling = WindowCenter.Instance.ExitAnyFullScreenOrMaskWinLEqual((WindowType)m_Culling);
                culling = WindowCenter.Instance.ExistAnyFullScreenOrMaskWinLEqual((WindowType)m_Culling);
                break;
        }