少年修仙传客户端代码仓库
client_Wu Xijin
2019-02-02 9b9f329a71e7783fed555bd9911418e4653bbace
3335 重构窗口管理
9个文件已删除
81个文件已修改
900 ■■■■■ 已修改文件
Core/NetworkPackage/DTCFile/ClientPack.meta 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/H04_Scene/DTC0431_tagTimeTick.cs 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/HAD_SaleActivity.meta 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/HAE_Truck.meta 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/HAF_Merge.meta 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/HB0_Event.meta 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/ServerPack/HAD_SaleActivity.meta 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/ServerPack/HAE_Truck.meta 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/ServerPack/HAF_Merge.meta 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/ServerPack/HB0_Event.meta 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Fight/Stage/Dungeon/DungeonStage.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Activity/ActivityModel.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/BlastFurnace/BlastFurnaceModel.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/BossShow/BossShowModel.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Chat/ChatBubblePreviewWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Chat/ChatCenter.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Chat/ChatSendComponent.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Chat/FairyChatWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/ClientVersion/VersionUtility.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Compose/New/ComposeSelectItemCell.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/CrossServerOneVsOne/CrossServerOneVsOneModel.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/CrossServerOneVsOne/CrossServerOneVsOneRewardModel.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/CrossServerOneVsOne/CrossServerOneVsOneWin.cs 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/DailyQuest/DailyQuestWin.cs 36 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dogz/DogzWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dogz/SelectCell.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/AncientKingBehaviour.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/DungeonAssistModel.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/DungeonAssistWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/DungeonFightWin.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/DungeonLiquidCell.cs 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FairyAu/FairyAuTaskWin.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FairyAu/FairyFeastTransmitShow.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FairyAu/FairyGrabBossModel.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FairyAu/FairyMemberWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FairyAu/FairyModel.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FairyAu/KingFairyModel.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FindPrecious/FindPreciousFrameWin.cs 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FriendSystem/New/FriendsModel.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/GatheringSoul/GatherSoulHoleBehaviour.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/JadeDynastyKnapSack/JadeDynastyEquipGetPathsWin.cs 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/JadeDynastyKnapSack/JadeDynastyEquipModel.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/KnapSack/Logic/BoxGetItemWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/KnapSack/Logic/PlayerPackModels.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/KnapSack/New/KnapSackEventMgr.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/KnapSack/New/KnapSackWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainInterfacePanel/ChatFrame.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainInterfacePanel/CoinTaskWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainInterfacePanel/DialogueDuidanceWin.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainInterfacePanel/EffectToFaBaoWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainInterfacePanel/FlyingShoesTask.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainInterfacePanel/InformationTipsWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainInterfacePanel/LowSettingTip.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainInterfacePanel/MainInterfaceWin.cs 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainInterfacePanel/PlayerMainDate.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainInterfacePanel/SideMission.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainInterfacePanel/StoryTask.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainInterfacePanel/TaskBoxBGMWin.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainInterfacePanel/TaskWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/NewBieGuidance/NewBieCenter.cs 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/NewBieGuidance/NewBieWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/OpenServerActivity/AchievementActivityWin.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/OpenServerActivity/FestivalAchievementCell.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/OpenServerActivity/MysticalPurchaseWin.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/OpenServerActivity/OSAchieveCell.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Pet/PetWin.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/PlayerDead/PlayerDeadModel.cs 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Realm/RealmBossShow.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Role/MagicianModel.cs 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Role/RoleModel.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Rune/RunePackCell.cs 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Store/StoreModel.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Strengthening/GemFlauntCell.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/SystemSetting/SystemSetWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/TaiChi/TaiChiModel.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Team/TeamFrameWin.cs 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/FairyTreasureCollectPanelPattern3.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/FairyTreasureCollectPanelPattern5.cs 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/TreasureBaseWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/TreasureLevelUpWin.cs 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Vip/FirstTimeRechargeModel.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Vip/FirstTimeRechargeWin.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Vip/VipExperienceWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Vip/VipModel.cs 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Vip/VipWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Voice/VoiceRecorder.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Welfare/AwardExchangeWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Welfare/LevelGiftWin.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/WindowBase/Windows.cs 435 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/WorldMap/WorldMapWin.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ClientPack.meta
File was deleted
Core/NetworkPackage/DTCFile/ServerPack/H04_Scene/DTC0431_tagTimeTick.cs
@@ -19,8 +19,8 @@
            {
                case HeavenBattleModel.HEAVEBATTLE_MAPID:
                    ModelCenter.Instance.GetModel<HeavenBattleModel>().SetBattleStart();
                    WindowCenter.Instance.CloseImmediately<DungeonBeginCoolDownWin>();
                    WindowCenter.Instance.CloseImmediately<DungeonEndCoolDownWin>();
                    WindowCenter.Instance.Close<DungeonBeginCoolDownWin>();
                    WindowCenter.Instance.Close<DungeonEndCoolDownWin>();
                    if (!WindowCenter.Instance.IsOpen<BattlePrepareCoolDownWin>())
                    {
                        WindowCenter.Instance.Open<BattlePrepareCoolDownWin>();
@@ -37,8 +37,8 @@
        switch (mapId)
        {
            case CrossServerOneVsOneModel.CrossServerDataMapId:
                WindowCenter.Instance.CloseImmediately<DungeonEndCoolDownWin>();
                WindowCenter.Instance.CloseImmediately<DungeonBeginCoolDownWin>();
                WindowCenter.Instance.Close<DungeonEndCoolDownWin>();
                WindowCenter.Instance.Close<DungeonBeginCoolDownWin>();
                break;
        }
    }
Core/NetworkPackage/DTCFile/ServerPack/HAD_SaleActivity.meta
File was deleted
Core/NetworkPackage/DTCFile/ServerPack/HAE_Truck.meta
File was deleted
Core/NetworkPackage/DTCFile/ServerPack/HAF_Merge.meta
File was deleted
Core/NetworkPackage/DTCFile/ServerPack/HB0_Event.meta
File was deleted
Core/NetworkPackage/ServerPack/HAD_SaleActivity.meta
File was deleted
Core/NetworkPackage/ServerPack/HAE_Truck.meta
File was deleted
Core/NetworkPackage/ServerPack/HAF_Merge.meta
File was deleted
Core/NetworkPackage/ServerPack/HB0_Event.meta
File was deleted
Fight/Stage/Dungeon/DungeonStage.cs
@@ -239,7 +239,7 @@
                SnxxzGame.Instance.StartCoroutine(Co_EnterDungeon(mapId));
                break;
            case 31170:
                WindowCenter.Instance.CloseImmediately<DungeonStageTimeWin>();
                WindowCenter.Instance.Close<DungeonStageTimeWin>();
                break;
            case GatherSoulDungeonModel.DUNGEON_MAPID:
                WindowCenter.Instance.Open<GatherSoulDungeonStageTimeWin>();
System/Activity/ActivityModel.cs
@@ -88,7 +88,7 @@
            activityNotifies.Clear();
            if (WindowCenter.Instance.IsOpen<ActivityNotifyWin>())
            {
                WindowCenter.Instance.CloseImmediately<ActivityNotifyWin>();
                WindowCenter.Instance.Close<ActivityNotifyWin>();
            }
        }
        private bool mainStage = false;
@@ -139,7 +139,7 @@
                    activityNotifies.Clear();
                    if (WindowCenter.Instance.IsOpen<ActivityNotifyWin>())
                    {
                        WindowCenter.Instance.CloseImmediately<ActivityNotifyWin>();
                        WindowCenter.Instance.Close<ActivityNotifyWin>();
                    }
                }
            }
System/BlastFurnace/BlastFurnaceModel.cs
@@ -256,7 +256,7 @@
        {
            if (WindowCenter.Instance.IsOpen<MakerDrugSuccessWin>())
            {
                WindowCenter.Instance.CloseImmediately<MakerDrugSuccessWin>();
                WindowCenter.Instance.Close<MakerDrugSuccessWin>();
            }
        }
    }
System/BossShow/BossShowModel.cs
@@ -82,8 +82,8 @@
                if (WindowCenter.Instance.IsOpen<TreasureBaseWin>())
                {
                    WindowJumpMgr.Instance.ClearJumpData();
                    WindowCenter.Instance.CloseImmediately<TreasureBaseWin>();
                    WindowCenter.Instance.CloseImmediately<TreasureSelectWin>();
                    WindowCenter.Instance.Close<TreasureBaseWin>();
                    WindowCenter.Instance.Close<TreasureSelectWin>();
                    WindowCenter.Instance.Open<MainInterfaceWin>();
                }
@@ -387,7 +387,7 @@
            }
            else if (!_show && WindowCenter.Instance.IsOpen<BossShowDialogueWin>())
            {
                WindowCenter.Instance.CloseImmediately<BossShowDialogueWin>();
                WindowCenter.Instance.Close<BossShowDialogueWin>();
            }
        }
System/Chat/ChatBubblePreviewWin.cs
@@ -78,7 +78,7 @@
                CloseImmediately();
                if (WindowCenter.Instance.IsOpen<ChatExtentWin>())
                {
                    WindowCenter.Instance.CloseImmediately<ChatExtentWin>();
                    WindowCenter.Instance.Close<ChatExtentWin>();
                }
                WindowJumpMgr.Instance.WindowJumpTo((JumpUIType)config.Jump);
            }
System/Chat/ChatCenter.cs
@@ -776,7 +776,7 @@
            {
                if (WindowCenter.Instance.IsOpen<ChatFloatWin>())
                {
                    WindowCenter.Instance.CloseImmediately<ChatFloatWin>();
                    WindowCenter.Instance.Close<ChatFloatWin>();
                }
            }
        }
System/Chat/ChatSendComponent.cs
@@ -232,7 +232,7 @@
            }
            else
            {
                WindowCenter.Instance.CloseImmediately<ChatExtentWin>();
                WindowCenter.Instance.Close<ChatExtentWin>();
                if (parent != null)
                {
                    parent.transform.localPosition = parent.transform.localPosition.SetY(0);
System/Chat/FairyChatWin.cs
@@ -77,7 +77,7 @@
                MessageWin.Inst.ShowFixedTip(Language.Get("L1136", limit));
                return;
            }
            WindowCenter.Instance.CloseImmediately<SocialWin>();
            WindowCenter.Instance.Close<SocialWin>();
            WindowJumpMgr.Instance.WindowJumpTo(JumpUIType.UnionFunc3);
        }
System/ClientVersion/VersionUtility.cs
@@ -280,7 +280,7 @@
        if (_ok)
        {
            step = Step.Completed;
            WindowCenter.Instance.CloseImmediately<VersionUpdateWin>();
            WindowCenter.Instance.Close<VersionUpdateWin>();
            SDKUtility.Instance.InstallAPK(GetApkLocalUrl());
        }
        else
System/Compose/New/ComposeSelectItemCell.cs
@@ -109,7 +109,7 @@
                    break;
            }
            selectModel.UpdateSelectItem(itemModel.itemInfo.ItemPlace);
            WindowCenter.Instance.CloseImmediately<SelectItemWin>();
            WindowCenter.Instance.Close<SelectItemWin>();
        }
    }
}
System/CrossServerOneVsOne/CrossServerOneVsOneModel.cs
@@ -225,7 +225,7 @@
            {
                if(WindowCenter.Instance.IsOpen<CrossServerOneVsOneRoundWin>())
                {
                    WindowCenter.Instance.CloseImmediately<CrossServerOneVsOneRoundWin>();
                    WindowCenter.Instance.Close<CrossServerOneVsOneRoundWin>();
                }
                if (!WindowCenter.Instance.IsOpen<CrossServerOneVsOneStartFightWin>())
System/CrossServerOneVsOne/CrossServerOneVsOneRewardModel.cs
@@ -152,7 +152,7 @@
        {
            if (WindowCenter.Instance.IsOpen<CrossServerOneVsOneRoundWin>())
            {
                WindowCenter.Instance.CloseImmediately<CrossServerOneVsOneRoundWin>();
                WindowCenter.Instance.Close<CrossServerOneVsOneRoundWin>();
            }
            WindowCenter.Instance.Open<CrossServerSettlementWin>();
        }
System/CrossServerOneVsOne/CrossServerOneVsOneWin.cs
@@ -215,10 +215,10 @@
        private void CloseSubWindows()
        {
            WindowCenter.Instance.CloseImmediately<CrossServerOneVsOneArenaWin>();
            WindowCenter.Instance.CloseImmediately<CrossServerOneVsOneHonorStoreWin>();
            WindowCenter.Instance.CloseImmediately<SeasonRewardWin>();
            WindowCenter.Instance.CloseImmediately<SegmentRewardWin>();
            WindowCenter.Instance.Close<CrossServerOneVsOneArenaWin>();
            WindowCenter.Instance.Close<CrossServerOneVsOneHonorStoreWin>();
            WindowCenter.Instance.Close<SeasonRewardWin>();
            WindowCenter.Instance.Close<SegmentRewardWin>();
            arena_SelectImg.SetActive(false);
            rankAward_SelectImg.SetActive(false);
            seasonAward_SelectImg.SetActive(false);
System/DailyQuest/DailyQuestWin.cs
@@ -238,23 +238,23 @@
                    GotoHeavenBattleDungeon(_id);
                    break;
                case DailyQuestType.Prayer:
                    WindowCenter.Instance.CloseImmediately<DailyQuestWin>();
                    WindowCenter.Instance.Close<DailyQuestWin>();
                    WindowCenter.Instance.Open<WelfareWin>(false, 1);
                    WindowCenter.Instance.Close<MainInterfaceWin>();
                    break;
                case DailyQuestType.WorldBoss:
                    WindowCenter.Instance.CloseImmediately<DailyQuestWin>();
                    WindowCenter.Instance.Close<DailyQuestWin>();
                    WindowCenter.Instance.Open<FindPreciousFrameWin>();
                    break;
                case DailyQuestType.DemonJar:
                    WindowCenter.Instance.CloseImmediately<DailyQuestWin>();
                    WindowCenter.Instance.Close<DailyQuestWin>();
                    WindowCenter.Instance.Open<LootPreciousFrameWin>();
                    break;
                case DailyQuestType.FairyTask:
                    WindowJumpMgr.Instance.WindowJumpTo(JumpUIType.UnionTask);
                    break;
                case DailyQuestType.FairyLeague:
                    WindowCenter.Instance.CloseImmediately<DailyQuestWin>();
                    WindowCenter.Instance.Close<DailyQuestWin>();
                    WindowCenter.Instance.Open<UnionPanel>(false, 4);
                    break;
                case DailyQuestType.FairyFeast:
@@ -268,23 +268,23 @@
                    break;
                case DailyQuestType.RuneTowerSweep:
                    RuneTowerWin.guideSweep = true;
                    WindowCenter.Instance.CloseImmediately<DailyQuestWin>();
                    WindowCenter.Instance.Close<DailyQuestWin>();
                    WindowCenter.Instance.Open<TowerWin>(false,0);
                    break;
                case DailyQuestType.BossHome:
                    WindowCenter.Instance.CloseImmediately<DailyQuestWin>();
                    WindowCenter.Instance.Close<DailyQuestWin>();
                    WindowCenter.Instance.Open<FindPreciousFrameWin>(false, 1);
                    break;
                case DailyQuestType.PersonalBoss:
                    WindowCenter.Instance.CloseImmediately<DailyQuestWin>();
                    WindowCenter.Instance.Close<DailyQuestWin>();
                    WindowCenter.Instance.Open<FindPreciousFrameWin>(false, 2);
                    break;
                case DailyQuestType.ElderGodArea:
                    WindowCenter.Instance.CloseImmediately<DailyQuestWin>();
                    WindowCenter.Instance.Close<DailyQuestWin>();
                    WindowCenter.Instance.Open<FindPreciousFrameWin>(false, 3);
                    break;
                case DailyQuestType.RuneTower:
                    WindowCenter.Instance.CloseImmediately<DailyQuestWin>();
                    WindowCenter.Instance.Close<DailyQuestWin>();
                    WindowCenter.Instance.Open<TowerWin>(false, 0);
                    break;
                case DailyQuestType.TreasureCollectSoul:
@@ -298,29 +298,29 @@
                    WindowCenter.Instance.Open<DungeonAssistWin>();
                    break;
                case DailyQuestType.FairyGrabBoss:
                    WindowCenter.Instance.CloseImmediately<DailyQuestWin>();
                    WindowCenter.Instance.Close<DailyQuestWin>();
                    WindowCenter.Instance.Open<LootPreciousFrameWin>(false, 1);
                    break;
                case DailyQuestType.KillMonster:
                    var point = mapModel.GetRecommendHangPoint();
                    var mapEventConfig = Config.Instance.Get<MapEventPointConfig>(point);
                    mapModel.wannaLookLocalMap = mapEventConfig.MapID;
                    WindowCenter.Instance.CloseImmediately<DailyQuestWin>();
                    WindowCenter.Instance.Close<DailyQuestWin>();
                    WindowCenter.Instance.Open<LocalMapWin>();
                    break;
                case DailyQuestType.GatherSoulDungeon:
                    GotoNormalDungeon(_id, 0);
                    break;
                case DailyQuestType.CrossServerPk:
                    WindowCenter.Instance.CloseImmediately<DailyQuestWin>();
                    WindowCenter.Instance.Close<DailyQuestWin>();
                    WindowCenter.Instance.Open<CrossServerWin>();
                    break;
                case DailyQuestType.JadeDynastyBoss:
                    WindowCenter.Instance.CloseImmediately<DailyQuestWin>();
                    WindowCenter.Instance.Close<DailyQuestWin>();
                    WindowCenter.Instance.Open<LootPreciousFrameWin>(false, 3);
                    break;
                case DailyQuestType.JadeDynastyTower:
                    WindowCenter.Instance.CloseImmediately<DailyQuestWin>();
                    WindowCenter.Instance.Close<DailyQuestWin>();
                    WindowCenter.Instance.Open<TowerWin>(false, 1);
                    break;
                default:
@@ -465,7 +465,7 @@
        private void GotoBlastStove()
        {
            WindowCenter.Instance.CloseImmediately<DailyQuestWin>();
            WindowCenter.Instance.Close<DailyQuestWin>();
            WindowCenter.Instance.Open<BlastFurnaceWin>();
        }
@@ -479,7 +479,7 @@
            else
            {
                taskModel.DailyBountyMove();
                WindowCenter.Instance.CloseImmediately<DailyQuestWin>();
                WindowCenter.Instance.Close<DailyQuestWin>();
                WindowCenter.Instance.Open<MainInterfaceWin>();
            }
        }
@@ -494,7 +494,7 @@
            else
            {
                taskModel.DailyFairyTaskMove();
                WindowCenter.Instance.CloseImmediately<DailyQuestWin>();
                WindowCenter.Instance.Close<DailyQuestWin>();
                WindowCenter.Instance.Open<MainInterfaceWin>();
            }
        }
@@ -555,7 +555,7 @@
                }
            }
            WindowCenter.Instance.CloseImmediately<DailyQuestWin>();
            WindowCenter.Instance.Close<DailyQuestWin>();
            if (gotoTreasureId == 0)
            {
System/Dogz/DogzWin.cs
@@ -98,7 +98,7 @@
            funcBtnGroup.TriggerByOrder(order);
            if(WindowCenter.Instance.IsOpen<DogzPackWin>())
            {
                WindowCenter.Instance.CloseImmediately<DogzPackWin>();
                WindowCenter.Instance.Close<DogzPackWin>();
            }
        }
System/Dogz/SelectCell.cs
@@ -39,13 +39,13 @@
            }
            selectBtn.RemoveAllListeners();
            selectBtn.AddListener(()=>
            selectBtn.AddListener((UnityEngine.Events.UnityAction)(()=>
            {
                List<int> indexlist = new List<int>();
                indexlist.Add(model.itemInfo.ItemPlace);
                dogzModel.SendPutOnEquip(indexlist);
                WindowCenter.Instance.CloseImmediately<SelectDogzItemWin>();
            });
                WindowCenter.Instance.Close<SelectDogzItemWin>();
            }));
        }
    }
}
System/Dungeon/AncientKingBehaviour.cs
@@ -43,7 +43,7 @@
        {
            if (WindowCenter.Instance.IsOpen<DungeonAncientKingWin>())
            {
                WindowCenter.Instance.CloseImmediately<DungeonAncientKingWin>();
                WindowCenter.Instance.Close<DungeonAncientKingWin>();
            }
            else
            {
System/Dungeon/DungeonAssistModel.cs
@@ -502,7 +502,7 @@
                {
                    if (WindowCenter.Instance.IsOpen<DungeonAssistPlayerWin>())
                    {
                        WindowCenter.Instance.CloseImmediately<DungeonAssistPlayerWin>();
                        WindowCenter.Instance.Close<DungeonAssistPlayerWin>();
                    }
                }
                else
System/Dungeon/DungeonAssistWin.cs
@@ -188,7 +188,7 @@
            WindowJumpMgr.Instance.ClearJumpData();
            if (WindowCenter.Instance.IsOpen<DailyQuestWin>())
            {
                WindowCenter.Instance.CloseImmediately<DailyQuestWin>();
                WindowCenter.Instance.Close<DailyQuestWin>();
            }
            CloseClick();
        }
System/Dungeon/DungeonFightWin.cs
@@ -351,7 +351,7 @@
                                    ConfirmCancel.ShowRuneTowerPopConfirm(
                                        Language.Get("Mail101"),
                                        Language.Get("RuneTower25", config.Fightpower),
                                        (bool ok) =>
(Action<bool>)((bool ok) =>
                                        {
                                            if (ok)
                                            {
@@ -365,7 +365,7 @@
                                            {
                                                model.ExitCurrentDungeon();
                                            }
                                        }
                                        })
                                        );
                                }
                            }
@@ -451,7 +451,7 @@
        {
            if (WindowCenter.Instance.IsOpen<DungeonAncientAchieveWin>())
            {
                WindowCenter.Instance.CloseImmediately<DungeonAncientAchieveWin>();
                WindowCenter.Instance.Close<DungeonAncientAchieveWin>();
            }
            else
            {
System/Dungeon/DungeonLiquidCell.cs
@@ -188,18 +188,18 @@
        ItemConfig _useItemCfg = Config.Instance.Get<ItemConfig>(itemModel.itemId);
        if (buffid != 0 && buffid != _useItemCfg.AddSkill1)
        {
            ConfirmCancel.ShowPopConfirm(Language.Get("Mail101"), Language.Get("FairyLand_Func22"), (bool isOk) =>
            ConfirmCancel.ShowPopConfirm(Language.Get("Mail101"), Language.Get("FairyLand_Func22"), (System.Action<bool>)((bool isOk) =>
            {
                if (isOk)
                {
                    WindowCenter.Instance.CloseImmediately<DungeonUseLiquidWin>();
                    WindowCenter.Instance.Close<DungeonUseLiquidWin>();
                    PackSendQuestMgr.Instance.SendMakeUseQuest(itemModel.itemInfo.ItemPlace);
                }
            });
            }));
        }
        else
        {
            WindowCenter.Instance.CloseImmediately<DungeonUseLiquidWin>();
            WindowCenter.Instance.Close<DungeonUseLiquidWin>();
            PackSendQuestMgr.Instance.SendMakeUseQuest(itemModel.itemInfo.ItemPlace);
        }
    }
System/FairyAu/FairyAuTaskWin.cs
@@ -209,8 +209,8 @@
                SysNotifyMgr.Instance.ShowTip("CrossMap10");
                return;
            }
            WindowCenter.Instance.CloseImmediately<UnionPanel>();
            WindowCenter.Instance.CloseImmediately<FairyAuTaskWin>();
            WindowCenter.Instance.Close<UnionPanel>();
            WindowCenter.Instance.Close<FairyAuTaskWin>();
            WindowCenter.Instance.Open<MainInterfaceWin>();
            ObjectiveText.ExcuteHref();
            TaskAllocation.Instance.TaskTime =TimeUtility.ServerNow;
@@ -218,7 +218,7 @@
        void CloseButton()//关闭按钮
        {
            WindowCenter.Instance.CloseImmediately<FairyAuTaskWin>();
            WindowCenter.Instance.Close<FairyAuTaskWin>();
        }
        void CompleteTaskDeletion()//删除完成的任务
        {
System/FairyAu/FairyFeastTransmitShow.cs
@@ -295,7 +295,7 @@
            IsOpen = false;
            model.TransmitComplete();
            OpenUI();
            WindowCenter.Instance.CloseImmediately<FairyFeastTransmitShowWin>();
            WindowCenter.Instance.Close<FairyFeastTransmitShowWin>();
            CameraController.Instance.CameraObject.gameObject.SetActive(true);
            StageLoad.Instance.onStartStageLoadingEvent -= OnStartStageLoadingEvent;
            transform.localPosition = new Vector3(0, 4000, 5000);
System/FairyAu/FairyGrabBossModel.cs
@@ -347,7 +347,7 @@
            grabBossHintOpen = false;
            if (WindowCenter.Instance.IsOpen<FairyGrabBossHintWin>())
            {
                WindowCenter.Instance.CloseImmediately<FairyGrabBossHintWin>();
                WindowCenter.Instance.Close<FairyGrabBossHintWin>();
            }
            if (bossGrabHintEvent != null)
            {
@@ -661,14 +661,14 @@
                    ConfirmCancel.ShowPopConfirm(
                        Language.Get("Mail101"),
                        tip,
                        (bool _ok) =>
(Action<bool>)((bool _ok) =>
                        {
                            if (_ok)
                            {
                                WindowCenter.Instance.Close<PetWin>();
                                MapTransferUtility.Instance.MoveToNPC(selectBoss);
                            }
                        }
                        })
                        );
                    break;
                case 5:
System/FairyAu/FairyMemberWin.cs
@@ -98,7 +98,7 @@
            {
                case PlayerDetails.DetailType.PrivateChat:
                    {
                        WindowCenter.Instance.CloseImmediately<UnionPanel>();
                        WindowCenter.Instance.Close<UnionPanel>();
                        WindowCenter.Instance.Open<MainInterfaceWin>();
                    }
                    break;
System/FairyAu/FairyModel.cs
@@ -432,7 +432,7 @@
            fairyRequestDict.Clear();
            if (WindowCenter.Instance.IsOpen<FairyInviteWin>())
            {
                WindowCenter.Instance.CloseImmediately<FairyInviteWin>();
                WindowCenter.Instance.Close<FairyInviteWin>();
            }
            if (UpdateFairyRequestEvent != null)
            {
@@ -449,7 +449,7 @@
                GameNetSystem.Instance.SendInfo(_pak);
                if (WindowCenter.Instance.IsOpen<FairyInviteWin>())
                {
                    WindowCenter.Instance.CloseImmediately<FairyInviteWin>();
                    WindowCenter.Instance.Close<FairyInviteWin>();
                }
            }
        }
System/FairyAu/KingFairyModel.cs
@@ -190,7 +190,7 @@
            GameNetSystem.Instance.SendInfo(_pak);
            if (WindowCenter.Instance.IsOpen<KingFairyAllotWin>())
            {
                WindowCenter.Instance.CloseImmediately<KingFairyAllotWin>();
                WindowCenter.Instance.Close<KingFairyAllotWin>();
            }
        }
        #endregion
System/FindPrecious/FindPreciousFrameWin.cs
@@ -113,11 +113,11 @@
        private void CloseSubWindows()
        {
            WindowCenter.Instance.CloseImmediately<WorldBossWin>();
            WindowCenter.Instance.CloseImmediately<BossHomeWin>();
            WindowCenter.Instance.CloseImmediately<PersonalBossWin>();
            WindowCenter.Instance.CloseImmediately<ElderGodAreaWin>();
            WindowCenter.Instance.CloseImmediately<PreciousDropRecordWin>();
            WindowCenter.Instance.Close<WorldBossWin>();
            WindowCenter.Instance.Close<BossHomeWin>();
            WindowCenter.Instance.Close<PersonalBossWin>();
            WindowCenter.Instance.Close<ElderGodAreaWin>();
            WindowCenter.Instance.Close<PreciousDropRecordWin>();
        }
        private void ShowLastFunction()
System/FriendSystem/New/FriendsModel.cs
@@ -942,7 +942,7 @@
                if (WindowCenter.Instance.IsOpen<SocialWin>())
                {
                    WindowJumpMgr.Instance.ClearJumpData();
                    WindowCenter.Instance.CloseImmediately<SocialWin>();
                    WindowCenter.Instance.Close<SocialWin>();
                }
                WindowCenter.Instance.Open<ChatWin>();
            }
System/GatheringSoul/GatherSoulHoleBehaviour.cs
@@ -166,7 +166,7 @@
                    break;
                case ItemWinBtnType.putOff:
                    {
                        WindowCenter.Instance.CloseImmediately<GatherSoulTipWin>();
                        WindowCenter.Instance.Close<GatherSoulTipWin>();
                        GatherSoulItem item;
                        if (model.TryGetItem(hole, out item))
                        {
@@ -175,12 +175,12 @@
                    }
                    break;
                case ItemWinBtnType.LevelUp:
                    WindowCenter.Instance.CloseImmediately<GatherSoulTipWin>();
                    WindowCenter.Instance.Close<GatherSoulTipWin>();
                    GatherSoulLevelUpWin.selectHole = hole;
                    WindowCenter.Instance.Open<GatherSoulLevelUpWin>();
                    break;
                case ItemWinBtnType.Replace:
                    WindowCenter.Instance.CloseImmediately<GatherSoulTipWin>();
                    WindowCenter.Instance.Close<GatherSoulTipWin>();
                    GatherSoulEquipListWin.selectHole = hole;
                    WindowCenter.Instance.Open<GatherSoulEquipListWin>();
                    break;
System/JadeDynastyKnapSack/JadeDynastyEquipGetPathsWin.cs
@@ -134,20 +134,20 @@
                    if (pathConfig == null) return;
                    pathText.text = pathConfig.name;
                    pathBtn.AddListener(()=>
                    pathBtn.AddListener((UnityEngine.Events.UnityAction)(()=>
                    {
                        WindowCenter.Instance.CloseImmediately<JadeDynastyEquipGetPathsWin>();
                        WindowCenter.Instance.Close<JadeDynastyEquipGetPathsWin>();
                        WindowJumpMgr.Instance.WindowJumpTo((JumpUIType)pathConfig.OpenpanelId);
                    });
                    }));
                }
                else
                {
                    pathText.text = Language.Get("JadeDynastyEquip2",towerLayer);
                    pathBtn.AddListener(() =>
                    pathBtn.AddListener((UnityEngine.Events.UnityAction)(() =>
                    {
                        WindowCenter.Instance.CloseImmediately<JadeDynastyEquipGetPathsWin>();
                        WindowCenter.Instance.Close<JadeDynastyEquipGetPathsWin>();
                        WindowJumpMgr.Instance.WindowJumpTo(JumpUIType.JadeDynastyTower288);
                    });
                    }));
                }
            }
        } 
System/JadeDynastyKnapSack/JadeDynastyEquipModel.cs
@@ -271,7 +271,7 @@
                int itemIndex = model.itemInfo.ItemPlace;
                jumpIndex = itemIndex / 5;
                WindowCenter.Instance.CloseImmediately<MainInterfaceWin>();
                WindowCenter.Instance.Close<MainInterfaceWin>();
                WindowCenter.Instance.Open<JadeDynastyKnapSackWin>(false,0);
            }
        }
System/KnapSack/Logic/BoxGetItemWin.cs
@@ -59,7 +59,7 @@
        protected override void OnPreOpen()
        {
            startPos = getItemParent.anchoredPosition3D;
            WindowCenter.Instance.CloseImmediately<NewItemGetWin>();
            WindowCenter.Instance.Close<NewItemGetWin>();
            //playerPack.ItemCntReduceAct += RefreshUI;
            getItem.SetActive(false);
            BoxModel.RefreshGetItemAct += RefreshGetIem;
System/KnapSack/Logic/PlayerPackModels.cs
@@ -429,7 +429,7 @@
                case 221:
                    if (WindowCenter.Instance.IsOpen<KnapSackWin>())
                    {
                        WindowCenter.Instance.CloseImmediately<KnapSackWin>();
                        WindowCenter.Instance.Close<KnapSackWin>();
                    }
                    break;
            }
System/KnapSack/New/KnapSackEventMgr.cs
@@ -78,7 +78,7 @@
        }
        else if (WindowCenter.Instance.IsOpen<KingFairyChestWin>())
        {
            WindowCenter.Instance.CloseImmediately<KingFairyChestWin>();
            WindowCenter.Instance.Close<KingFairyChestWin>();
        }
    }
System/KnapSack/New/KnapSackWin.cs
@@ -235,7 +235,7 @@
            {
                WindowCenter.Instance.Close(window);
            }
            WindowCenter.Instance.CloseImmediately<BagWin>();
            WindowCenter.Instance.Close<BagWin>();
        }
        private void OnHidePanel()
System/MainInterfacePanel/ChatFrame.cs
@@ -304,7 +304,7 @@
                AutoImg.SetActive(true);
                if (WindowCenter.Instance.IsOpen<ExperienceOpenWin>())
                {
                    WindowCenter.Instance.CloseImmediately<ExperienceOpenWin>();
                    WindowCenter.Instance.Close<ExperienceOpenWin>();
                }
            }
@@ -315,7 +315,7 @@
            //MainRedDot.Instance.redPointFriendChat.state = RedPointState.None;
            //ChatCtrl.Inst.presentChatType = ChatInfoType.Friend;
            //WindowCenter.Instance.Open<ChatWin>();
            WindowCenter.Instance.CloseImmediately<MainInterfaceWin>();
            WindowCenter.Instance.Close<MainInterfaceWin>();
            WindowCenter.Instance.Open<SocialWin>();
        }
@@ -442,7 +442,7 @@
                {
                    if (WindowCenter.Instance.IsOpen<ExperienceOpenWin>())
                    {
                        WindowCenter.Instance.CloseImmediately<ExperienceOpenWin>();
                        WindowCenter.Instance.Close<ExperienceOpenWin>();
                    }
                    _hero.Behaviour.StopHandupAI(true);
System/MainInterfacePanel/CoinTaskWin.cs
@@ -293,7 +293,7 @@
            }
            _Text_TaskTarget.ExcuteHref();
            TaskAllocation.Instance.TaskTime = TimeUtility.ServerNow;
            WindowCenter.Instance.CloseImmediately<TaskWin>();
            WindowCenter.Instance.Close<TaskWin>();
            WindowCenter.Instance.Open<MainInterfaceWin>();
        }
System/MainInterfacePanel/DialogueDuidanceWin.cs
@@ -109,11 +109,11 @@
        {
            if (WindowCenter.Instance.IsOpen<DungeonFightWin>())
            {
                WindowCenter.Instance.CloseImmediately<DungeonFightWin>();
                WindowCenter.Instance.Close<DungeonFightWin>();
            }
            if (WindowCenter.Instance.IsOpen<DungeonMissionDetailsWin>())
            {
                WindowCenter.Instance.CloseImmediately<DungeonMissionDetailsWin>();
                WindowCenter.Instance.Close<DungeonMissionDetailsWin>();
            }
        }
System/MainInterfacePanel/EffectToFaBaoWin.cs
@@ -106,7 +106,7 @@
        private void OnComplet()
        {
            WindowCenter.Instance.CloseImmediately<EffectToFaBaoWin>();
            WindowCenter.Instance.Close<EffectToFaBaoWin>();
            if (EffectToFaBaoEvent != null)
            {
                EffectToFaBaoEvent();
System/MainInterfacePanel/FlyingShoesTask.cs
@@ -618,7 +618,7 @@
                int FairyNumber = TaskAllocation.Instance.FairyAuNumber();
                if (FairyNumber == 10 && !WindowCenter.Instance.IsOpen<FairyWearWin>())
                {
                    WindowCenter.Instance.CloseImmediately<MainInterfaceWin>();
                    WindowCenter.Instance.Close<MainInterfaceWin>();
                    WindowCenter.Instance.Open<FairyAuTaskWin>();
                }
            }
System/MainInterfacePanel/InformationTipsWin.cs
@@ -80,7 +80,7 @@
            taskmodel.RequestGetTaskAward("Double");
            Close();
            SelectionManager.Release(SelectionManager.E_Type.Green);
            WindowCenter.Instance.CloseImmediately<TaskBoxBGMWin>();
            WindowCenter.Instance.Close<TaskBoxBGMWin>();
            WindowCenter.Instance.Open<MainInterfaceWin>();
        }
System/MainInterfacePanel/LowSettingTip.cs
@@ -158,7 +158,7 @@
        void RankingListButton()//排行榜
        {
            WindowCenter.Instance.Open<RankPanel>();
            WindowCenter.Instance.CloseImmediately<MainInterfaceWin>();
            WindowCenter.Instance.Close<MainInterfaceWin>();
        }
System/MainInterfacePanel/MainInterfaceWin.cs
@@ -434,7 +434,7 @@
            GlobalTimeEvent.Instance.secondEvent -= secondEvent;
            if (WindowCenter.Instance.IsOpen<FunctionForecastWin>())
            {
                WindowCenter.Instance.CloseImmediately<FunctionForecastWin>();
                WindowCenter.Instance.Close<FunctionForecastWin>();
            }
            GA_NpcCollect.OnArrive -= OnArriveCollectNPC;
            GA_NpcCollect.OnLeave -= OnLeaveCollectNpc;
@@ -662,7 +662,7 @@
                onMainModel.MoveBool = false;
                if (WindowCenter.Instance.IsOpen("PathfindingIconWin"))
                {
                    WindowCenter.Instance.CloseImmediately<PathfindingIconWin>();
                    WindowCenter.Instance.Close<PathfindingIconWin>();
                }
            }
@@ -759,21 +759,21 @@
            {
                if (festivalRedpackModel.systemRedpoint.state == RedPointState.GetReward)
                {
                    WindowCenter.Instance.CloseImmediately<MainInterfaceWin>();
                    WindowCenter.Instance.Close<MainInterfaceWin>();
                    festivalRedpackModel.jumpType = 1;
                    festivalRedpackModel.autoOpen = true;
                    WindowCenter.Instance.Open<OpenServerActivityWin>(false, 19);
                }
                else if (festivalRedpackModel.receiveRedpoint.state == RedPointState.GetReward)
                {
                    WindowCenter.Instance.CloseImmediately<MainInterfaceWin>();
                    WindowCenter.Instance.Close<MainInterfaceWin>();
                    festivalRedpackModel.jumpType = 3;
                    festivalRedpackModel.autoOpen = true;
                    WindowCenter.Instance.Open<OpenServerActivityWin>(false, 19);
                }
                else if (OSEnvelopeModel.m_OpenServerGetRedpin.state == RedPointState.GetReward)
                {
                    WindowCenter.Instance.CloseImmediately<MainInterfaceWin>();
                    WindowCenter.Instance.Close<MainInterfaceWin>();
                    ModelCenter.Instance.GetModel<OSRedEnvelopeModel>().JumpType = 2;
                    ModelCenter.Instance.GetModel<OSRedEnvelopeModel>().autoOpen = true;
                    WindowCenter.Instance.Open<OpenServerActivityWin>(false, 2);
@@ -789,13 +789,13 @@
        {
            if (festivalRedpackModel.taskRedpoint.state == RedPointState.Simple)
            {
                WindowCenter.Instance.CloseImmediately<MainInterfaceWin>();
                WindowCenter.Instance.Close<MainInterfaceWin>();
                festivalRedpackModel.jumpType = 2;
                WindowCenter.Instance.Open<OpenServerActivityWin>(false, 19);
            }
            else if (OSEnvelopeModel.m_RedAchieveRedpoint.state == RedPointState.Simple)
            {
                WindowCenter.Instance.CloseImmediately<MainInterfaceWin>();
                WindowCenter.Instance.Close<MainInterfaceWin>();
                ModelCenter.Instance.GetModel<OSRedEnvelopeModel>().JumpType = 1;
                WindowCenter.Instance.Open<OpenServerActivityWin>(false, 2);
            }
@@ -1416,7 +1416,7 @@
                m_InGamePusher.gameObject.SetActive(true);
                if (WindowCenter.Instance.IsOpen<FightingPKWin>())
                {
                    WindowCenter.Instance.CloseImmediately<FightingPKWin>();
                    WindowCenter.Instance.Close<FightingPKWin>();
                }
                OnRedBagGet();
            }
System/MainInterfacePanel/PlayerMainDate.cs
@@ -402,7 +402,7 @@
                {
                    if (WindowCenter.Instance.IsOpen<PowerAddWin>())
                    {
                        WindowCenter.Instance.CloseImmediately<PowerAddWin>();
                        WindowCenter.Instance.Close<PowerAddWin>();
                    }
                    WindowCenter.Instance.Open<PowerAddWin>();
                }
@@ -431,7 +431,7 @@
        StrengthegingAddFight = 0;
        if (WindowCenter.Instance.IsOpen<PowerAddWin>())
        {
            WindowCenter.Instance.CloseImmediately<PowerAddWin>();
            WindowCenter.Instance.Close<PowerAddWin>();
        }
        WindowCenter.Instance.Open<PowerAddWin>();
    }
@@ -441,7 +441,7 @@
        ProwNumAdd = power;
        if (WindowCenter.Instance.IsOpen<PowerAddWin>())
        {
            WindowCenter.Instance.CloseImmediately<PowerAddWin>();
            WindowCenter.Instance.Close<PowerAddWin>();
           
        }
        if (prowNum != 0)
System/MainInterfacePanel/SideMission.cs
@@ -87,7 +87,7 @@
                _Text_TaskTarget.ExcuteHref();
            }
            WindowCenter.Instance.CloseImmediately<TaskWin>();
            WindowCenter.Instance.Close<TaskWin>();
            WindowCenter.Instance.Open<MainInterfaceWin>();
        }
        void OnCreateGridLineCell(ScrollerController gridCtrl)//任务预制体创建
System/MainInterfacePanel/StoryTask.cs
@@ -198,7 +198,7 @@
                return;
            }
            _Text_TaskTarget.ExcuteHref();
            WindowCenter.Instance.CloseImmediately<TaskWin>();
            WindowCenter.Instance.Close<TaskWin>();
            WindowCenter.Instance.Open<MainInterfaceWin>();
        }
System/MainInterfacePanel/TaskBoxBGMWin.cs
@@ -148,7 +148,7 @@
                    if (!ModelCenter.Instance.GetModel<TeamModel>().teamPrepare.isPreparing)
                    {
                        taskmodel.RequestGetTaskAward("OK");
                        WindowCenter.Instance.CloseImmediately<TaskBoxBGMWin>();
                        WindowCenter.Instance.Close<TaskBoxBGMWin>();
                        WindowCenter.Instance.Open<MainInterfaceWin>();
                    }
                   
@@ -177,7 +177,7 @@
        IEnumerator LateRelease()
        {
            yield return WaitingForSecondConst.WaitMS500;
            WindowCenter.Instance.CloseImmediately<TaskBoxBGMWin>();
            WindowCenter.Instance.Close<TaskBoxBGMWin>();
            WindowCenter.Instance.Open<MainInterfaceWin>();
            yield break;
        }
System/MainInterfacePanel/TaskWin.cs
@@ -136,7 +136,7 @@
        {
            _CoinTaskWin.SetActive(false);
            _StoryTaskWin.SetActive(false);
            WindowCenter.Instance.CloseImmediately<TaskWin>();
            WindowCenter.Instance.Close<TaskWin>();
            WindowCenter.Instance.Open<MainInterfaceWin>();
        }
System/NewBieGuidance/NewBieCenter.cs
@@ -174,7 +174,7 @@
            }
            WindowCenter.Instance.Open<NewBieWin>(true);
            WindowCenter.Instance.CloseImmediately<ChatWin>();
            WindowCenter.Instance.Close<ChatWin>();
            WindowJumpMgr.Instance.ClearJumpData();
@@ -198,7 +198,7 @@
        {
            var guideRecord = currentGuide;
            currentGuide = 0;
            WindowCenter.Instance.CloseImmediately<NewBieWin>();
            WindowCenter.Instance.Close<NewBieWin>();
            if (!completeGuidesBuf.Contains(guideRecord))
            {
@@ -387,7 +387,7 @@
            GameNetSystem.Instance.SendInfo(send);
            currentGuide = 0;
            WindowCenter.Instance.CloseImmediately<NewBieWin>();
            WindowCenter.Instance.Close<NewBieWin>();
            var allGuideKeys = Config.Instance.GetAllKeys<GuideConfig>();
            for (int i = 0; i < allGuideKeys.Count; i++)
@@ -405,7 +405,7 @@
            GameNetSystem.Instance.SendInfo(send);
            currentGuide = 0;
            WindowCenter.Instance.CloseImmediately<NewBieWin>();
            WindowCenter.Instance.Close<NewBieWin>();
            completeGuidesBuf.Clear();
        }
System/NewBieGuidance/NewBieWin.cs
@@ -224,7 +224,7 @@
                yield return null;
            }
            WindowCenter.Instance.CloseImmediately<ChatWin>();
            WindowCenter.Instance.Close<ChatWin>();
            m_RaycasterMask.gameObject.SetActive(false);
            m_NewBieGuide.gameObject.SetActive(true);
System/OpenServerActivity/AchievementActivityWin.cs
@@ -107,11 +107,11 @@
        {
            if (WindowCenter.Instance.IsOpen<OpenServiceAchievementWin>())
            {
                WindowCenter.Instance.CloseImmediately<OpenServiceAchievementWin>();
                WindowCenter.Instance.Close<OpenServiceAchievementWin>();
            }
            if (WindowCenter.Instance.IsOpen<SpringFestivalWin>())
            {
                WindowCenter.Instance.CloseImmediately<SpringFestivalWin>();
                WindowCenter.Instance.Close<SpringFestivalWin>();
            }
        }
System/OpenServerActivity/FestivalAchievementCell.cs
@@ -69,7 +69,7 @@
                }
                if (!_isReach)
                {
                    m_AchiveGoto.onClick.AddListener(() =>
                    m_AchiveGoto.onClick.AddListener((UnityEngine.Events.UnityAction)(() =>
                    {
                        if (!model.IsOpen)
                        {
@@ -77,8 +77,8 @@
                            return;
                        }
                        achieveModel.GotoCompleteAchievement(achievementId);
                        WindowCenter.Instance.CloseImmediately<OpenServerActivityWin>();
                    });
                        WindowCenter.Instance.Close<OpenServerActivityWin>();
                    }));
                }
            }
        }
System/OpenServerActivity/MysticalPurchaseWin.cs
@@ -108,14 +108,14 @@
            if(purchaseModel.isOpenPrompting)
            {
                ConfirmCancel.ToggleConfirmCancel(Language.Get("Mail101"), Language.Get("MysticalPurchase103"),
                Language.Get("ConfirmCancel102"), (bool isOk, bool isToggle) =>
                Language.Get("ConfirmCancel102"), (Action<bool, bool>)((bool isOk, bool isToggle) =>
               {
                  if (isOk)
                  {
                       WindowCenter.Instance.CloseImmediately<OpenServerActivityWin>();
                       WindowCenter.Instance.Close<OpenServerActivityWin>();
                  }
                   purchaseModel.isOpenPrompting = !isToggle;
              });
              }));
                return false;
            }
            return true;
System/OpenServerActivity/OSAchieveCell.cs
@@ -69,7 +69,7 @@
                }
                if (!_isReach)
                {
                    m_AchiveGoto.onClick.AddListener(() =>
                    m_AchiveGoto.onClick.AddListener((UnityEngine.Events.UnityAction)(() =>
                    {
                        if (TimeUtility.OpenDay >= model.openDays)
                        {
@@ -77,8 +77,8 @@
                            return;
                        }
                        achieveModel.GotoCompleteAchievement(_currentAchieve);
                        WindowCenter.Instance.CloseImmediately<OpenServerActivityWin>();
                    });
                        WindowCenter.Instance.Close<OpenServerActivityWin>();
                    }));
                }
            }
        }
System/Pet/PetWin.cs
@@ -26,7 +26,7 @@
        void CloseBtn()
        {
            CloseChild();
            WindowCenter.Instance.CloseImmediately<PetWin>();
            WindowCenter.Instance.Close<PetWin>();
        }
        protected override void BindController()
@@ -126,11 +126,11 @@
        {
            if (WindowCenter.Instance.IsOpen<PetAttributeWin>())
            {
                WindowCenter.Instance.CloseImmediately<PetAttributeWin>();
                WindowCenter.Instance.Close<PetAttributeWin>();
            }
            if (WindowCenter.Instance.IsOpen<MountWin>())
            {
                WindowCenter.Instance.CloseImmediately<MountWin>();
                WindowCenter.Instance.Close<MountWin>();
            }
        }
    }
System/PlayerDead/PlayerDeadModel.cs
@@ -289,10 +289,10 @@
        TimeDownMgr.Instance.Stop(TimeDownMgr.CoolTimeType.DeadCD);
        TimeDownMgr.Instance.Stop(TimeDownMgr.CoolTimeType.BossAutoReborn);
        TimeDownMgr.Instance.Stop(TimeDownMgr.CoolTimeType.DuplicatesReborn);
        WindowCenter.Instance.CloseImmediately<RebornWin>();
        WindowCenter.Instance.CloseImmediately<ReliveWin>();
        WindowCenter.Instance.CloseImmediately<RebornTiredWin>();
        WindowCenter.Instance.CloseImmediately<ElderGodAreaRebornWin>();
        WindowCenter.Instance.Close<RebornWin>();
        WindowCenter.Instance.Close<ReliveWin>();
        WindowCenter.Instance.Close<RebornTiredWin>();
        WindowCenter.Instance.Close<ElderGodAreaRebornWin>();
        if (CloseRebornWinEvent != null)
        {
System/Realm/RealmBossShow.cs
@@ -67,7 +67,7 @@
        IEnumerator Co_Start()
        {
            yield return WaitingForSecondConst.WaitMS500;
            WindowCenter.Instance.CloseImmediately<RealmBossShowWin>();
            WindowCenter.Instance.Close<RealmBossShowWin>();
            StartBossShow();
        }
@@ -176,7 +176,7 @@
            StageLoad.Instance.onStartStageLoadingEvent -= OnStartStageLoadingEvent;
            CameraController.Instance.CameraObject.gameObject.SetActive(true);
            WindowCenter.Instance.uiRoot.uicamera.enabled = true;
            WindowCenter.Instance.CloseImmediately<RealmBossShowWin>();
            WindowCenter.Instance.Close<RealmBossShowWin>();
            showCamera.enabled = false;
            m_Effect.gameObject.SetActive(false);
            transform.localPosition = new Vector3(0, 4000, 5000);
System/Role/MagicianModel.cs
@@ -481,11 +481,11 @@
                    {
                        if (WindowCenter.Instance.IsOpen<GodWeaponPreviewWin>())
                        {
                            WindowCenter.Instance.CloseImmediately<GodWeaponPreviewWin>();
                            WindowCenter.Instance.Close<GodWeaponPreviewWin>();
                        }
                        if (WindowCenter.Instance.IsOpen<HowToPlayWin>())
                        {
                            WindowCenter.Instance.CloseImmediately<HowToPlayWin>();
                            WindowCenter.Instance.Close<HowToPlayWin>();
                        }
                        ActivateShow.GodWeaponStage(_type, _nowLv, _beforeLv, stage);
                    }
@@ -501,11 +501,11 @@
                {
                    if (WindowCenter.Instance.IsOpen<GodWeaponPreviewWin>())
                    {
                        WindowCenter.Instance.CloseImmediately<GodWeaponPreviewWin>();
                        WindowCenter.Instance.Close<GodWeaponPreviewWin>();
                    }
                    if (WindowCenter.Instance.IsOpen<HowToPlayWin>())
                    {
                        WindowCenter.Instance.CloseImmediately<HowToPlayWin>();
                        WindowCenter.Instance.Close<HowToPlayWin>();
                    }
                    ActivateShow.GodWeaponActivate(_type, _nowLv, _beforeLv);
                }
System/Role/RoleModel.cs
@@ -63,7 +63,7 @@
                    SysNotifyMgr.Instance.ShowTip("RenameSuccess01", playerRename);
                    if(WindowCenter.Instance.IsOpen<RoleRenameWin>())
                    {
                        WindowCenter.Instance.CloseImmediately<RoleRenameWin>();
                        WindowCenter.Instance.Close<RoleRenameWin>();
                    }
                    GameNetSystem.Instance.Reconnect();
                    break;
System/Rune/RunePackCell.cs
@@ -118,20 +118,20 @@
            {
                var otherSameHole = sameHoles[0] == model.sltRuneHole ? sameHoles[1] : sameHoles[0];
                var otherRune = model.GetHoleRune(otherSameHole);
                ConfirmCancel.ShowPopConfirm(Language.Get("Mail101"), Language.Get("SwitchDoublePropertyRune"), (bool isOk) =>
                ConfirmCancel.ShowPopConfirm(Language.Get("Mail101"), Language.Get("SwitchDoublePropertyRune"), (Action<bool>)((bool isOk) =>
                  {
                      if (isOk)
                      {
                          SwitchRune(otherRune.packtype, otherSameHole, _rune.packtype, 0);
                          SwitchRune(_rune.packtype, _rune.index, (int)PackType.rptInterimPack, model.sltRuneHole);
                          WindowCenter.Instance.CloseImmediately<RunePackWin>();
                          WindowCenter.Instance.Close<RunePackWin>();
                      }
                  });
                  }));
            }
            else
            {
                SwitchRune(_rune.packtype, _rune.index, (int)PackType.rptInterimPack, model.sltRuneHole);
                WindowCenter.Instance.CloseImmediately<RunePackWin>();
                WindowCenter.Instance.Close<RunePackWin>();
            }
        }
System/Store/StoreModel.cs
@@ -1709,7 +1709,7 @@
        if(isClearData)
        {
            ClearPushData();
            WindowCenter.Instance.CloseImmediately<PetAndMountPushWin>();
            WindowCenter.Instance.Close<PetAndMountPushWin>();
            return;
        }
@@ -1722,7 +1722,7 @@
        }
        else
        {
            WindowCenter.Instance.CloseImmediately<PetAndMountPushWin>();
            WindowCenter.Instance.Close<PetAndMountPushWin>();
        }
    }
System/Strengthening/GemFlauntCell.cs
@@ -35,9 +35,9 @@
        private void GemFlaunt()
        {
            WindowJumpMgr.Instance.ClearJumpData();
            WindowCenter.Instance.CloseImmediately<EquipReinforceWin>();
            WindowCenter.Instance.CloseImmediately<JadeDynastySelectGemWin>();
            WindowCenter.Instance.CloseImmediately<JadeDynastyKnapSackWin>();
            WindowCenter.Instance.Close<EquipReinforceWin>();
            WindowCenter.Instance.Close<JadeDynastySelectGemWin>();
            WindowCenter.Instance.Close<JadeDynastyKnapSackWin>();
            ChatCtrl.Inst.presentChatType = ChatInfoType.World;
            ChatCtrl.Inst.openFromGem = true;
            ChatCtrl.Inst.flauntGemId = itemId;
System/SystemSetting/SystemSetWin.cs
@@ -278,7 +278,7 @@
                }
            }
            WindowCenter.Instance.CloseImmediately<SettingUpWin>();
            WindowCenter.Instance.Close<SettingUpWin>();
            if (!WindowCenter.Instance.IsOpen<LockedScreenWin>())
            {
System/TaiChi/TaiChiModel.cs
@@ -82,8 +82,8 @@
        var state = dailyQuestModel.GetQuestState(TaiChiDailyTaskID);
        if (state == DailyQuestModel.DailyQuestState.Normal) return;
        WindowCenter.Instance.CloseImmediately<WytjGameWin>();
        WindowCenter.Instance.CloseImmediately<WytjRulesWin>();
        WindowCenter.Instance.Close<WytjGameWin>();
        WindowCenter.Instance.Close<WytjRulesWin>();
    }
    public string taiChiResultNum { get; private set; }
System/Team/TeamFrameWin.cs
@@ -49,12 +49,12 @@
            if (WindowCenter.Instance.IsOpen<MyTeamWin>())
            {
                WindowCenter.Instance.CloseImmediately<MyTeamWin>();
                WindowCenter.Instance.Close<MyTeamWin>();
            }
            if (WindowCenter.Instance.IsOpen<TeamListWin>())
            {
                WindowCenter.Instance.CloseImmediately<TeamListWin>();
                WindowCenter.Instance.Close<TeamListWin>();
            }
        }
@@ -94,7 +94,7 @@
        {
            if (WindowCenter.Instance.IsOpen<MyTeamWin>())
            {
                WindowCenter.Instance.CloseImmediately<MyTeamWin>();
                WindowCenter.Instance.Close<MyTeamWin>();
            }
            WindowCenter.Instance.Open<TeamListWin>(true);
@@ -105,7 +105,7 @@
        {
            if (WindowCenter.Instance.IsOpen<TeamListWin>())
            {
                WindowCenter.Instance.CloseImmediately<TeamListWin>();
                WindowCenter.Instance.Close<TeamListWin>();
            }
            WindowCenter.Instance.Open<MyTeamWin>(true);
System/Treasure/FairyTreasureCollectPanelPattern3.cs
@@ -130,7 +130,7 @@
                        FuncOpen.Instance.ProcessorFuncErrorTip(124);
                        return;
                    }
                    WindowCenter.Instance.CloseImmediately<TreasureBaseWin>();
                    WindowCenter.Instance.Close<TreasureBaseWin>();
                    WindowCenter.Instance.Open<TreasureFindHostWin>();
                    break;
            }
@@ -145,7 +145,7 @@
            }
            if (show)
            {
                WindowCenter.Instance.CloseImmediately<TreasureBaseWin>();
                WindowCenter.Instance.Close<TreasureBaseWin>();
                WindowCenter.Instance.Open<MainInterfaceWin>();
            }
            show = false;
System/Treasure/FairyTreasureCollectPanelPattern5.cs
@@ -253,22 +253,22 @@
        private void BeginFly()
        {
            CameraUtility.ScreenShotCut((Texture2D _tex) =>
            CameraUtility.ScreenShotCut((Action<Texture2D>)((Texture2D _tex) =>
            {
                TreasureStageUpTriggerWin.screenShotCut = _tex;
                WindowJumpMgr.Instance.ClearJumpData();
                WindowCenter.Instance.CloseImmediately<TreasureBaseWin>();
                WindowCenter.Instance.Close<TreasureBaseWin>();
                WindowCenter.Instance.Open<TreasureStageUpTriggerWin>(true);
                WindowCenter.Instance.Open<MainInterfaceWin>();
                if (WindowCenter.Instance.IsOpen<DialogueDuidanceWin>())
                {
                    WindowCenter.Instance.CloseImmediately<DialogueDuidanceWin>();
                    WindowCenter.Instance.Close<DialogueDuidanceWin>();
                }
                if (WindowCenter.Instance.IsOpen<TaskBoxBGMWin>())
                {
                    WindowCenter.Instance.CloseImmediately<TaskBoxBGMWin>();
                    WindowCenter.Instance.Close<TaskBoxBGMWin>();
                }
            });
            }));
        }
        
        private void Display()
@@ -439,7 +439,7 @@
        private void GotoStove()
        {
            WindowCenter.Instance.CloseImmediately<TreasureBaseWin>();
            WindowCenter.Instance.Close<TreasureBaseWin>();
            WindowCenter.Instance.Close<MainInterfaceWin>();
            WindowCenter.Instance.Open<BlastFurnaceWin>();
        }
System/Treasure/TreasureBaseWin.cs
@@ -130,7 +130,7 @@
        {
            if (WindowCenter.Instance.IsOpen<EffectToFaBaoWin>())
            {
                WindowCenter.Instance.CloseImmediately<EffectToFaBaoWin>();
                WindowCenter.Instance.Close<EffectToFaBaoWin>();
            }
            CloseSubWindows();
            m_DisplayContainer.gameObject.SetActive(true);
System/Treasure/TreasureLevelUpWin.cs
@@ -669,7 +669,7 @@
                {
                    if (mainTaskId != 0)
                    {
                        WindowCenter.Instance.CloseImmediately<TreasureBaseWin>();
                        WindowCenter.Instance.Close<TreasureBaseWin>();
                        WindowCenter.Instance.Open<MainInterfaceWin>();
                        task.AutomaticTripToTask(mainTaskId);
                    }
@@ -771,7 +771,7 @@
            if (WindowCenter.Instance.IsOpen<TreasureStageTipWin>())
            {
                WindowCenter.Instance.CloseImmediately<TreasureStageTipWin>();
                WindowCenter.Instance.Close<TreasureStageTipWin>();
            }
            switch (stage.unlockType)
@@ -794,7 +794,7 @@
                    break;
                case TreasureStageUnlock.Treasure:
                    WindowJumpMgr.Instance.ClearJumpData();
                    WindowCenter.Instance.CloseImmediately<TreasureBaseWin>();
                    WindowCenter.Instance.Close<TreasureBaseWin>();
                    WindowCenter.Instance.Open<MainInterfaceWin>();
                    break;
                case TreasureStageUnlock.TreasureSoul:
@@ -814,23 +814,23 @@
        private void StartScreenShot()
        {
            CameraUtility.ScreenShotCut((Texture2D _tex) =>
            CameraUtility.ScreenShotCut((Action<Texture2D>)((Texture2D _tex) =>
            {
                TreasureStageUpTriggerWin.screenShotCut = _tex;
                WindowJumpMgr.Instance.ClearJumpData();
                WindowCenter.Instance.CloseImmediately<TreasureBaseWin>();
                WindowCenter.Instance.Close<TreasureBaseWin>();
                WindowCenter.Instance.Open<TreasureStageUpTriggerWin>(true);
                WindowCenter.Instance.Open<MainInterfaceWin>();
                if (WindowCenter.Instance.IsOpen<DialogueDuidanceWin>())
                {
                    WindowCenter.Instance.CloseImmediately<DialogueDuidanceWin>();
                    WindowCenter.Instance.Close<DialogueDuidanceWin>();
                }
                if (WindowCenter.Instance.IsOpen<TaskBoxBGMWin>())
                {
                    WindowCenter.Instance.CloseImmediately<TaskBoxBGMWin>();
                    WindowCenter.Instance.Close<TaskBoxBGMWin>();
                }
                m_ContainerSkillShow.gameObject.SetActive(false);
            });
            }));
        }
        private void PlaySkillShow()
System/Vip/FirstTimeRechargeModel.cs
@@ -55,7 +55,7 @@
            {
                if (WindowCenter.Instance.IsOpen("FirstTimeRechargeWin"))
                {
                    WindowCenter.Instance.CloseImmediately<FirstTimeRechargeWin>();
                    WindowCenter.Instance.Close<FirstTimeRechargeWin>();
                }
            }
        }
System/Vip/FirstTimeRechargeWin.cs
@@ -183,12 +183,12 @@
            m_RewardInformationImage.SetActive(false);
            if (WindowCenter.Instance.IsOpen<MainInterfaceWin>() && !NewBieCenter.Instance.inGuiding)
            {
                WindowCenter.Instance.CloseImmediately<MainInterfaceWin>();
                WindowCenter.Instance.Close<MainInterfaceWin>();
            }
            UI3DModelExhibition.Instance.StopShow();
            if (WindowCenter.Instance.IsOpen<FirstTimeRechargeWin>())
            {
                WindowCenter.Instance.CloseImmediately<FirstTimeRechargeWin>();
                WindowCenter.Instance.Close<FirstTimeRechargeWin>();
            }
            if (!NewBieCenter.Instance.inGuiding)
            {
System/Vip/VipExperienceWin.cs
@@ -68,7 +68,7 @@
            {
                if (WindowCenter.Instance.IsOpen<VipExperienceWin>())
                {
                    WindowCenter.Instance.CloseImmediately<VipExperienceWin>();
                    WindowCenter.Instance.Close<VipExperienceWin>();
                }
            }
        }
System/Vip/VipModel.cs
@@ -76,7 +76,7 @@
            m_VipExperienceTime = 0;
            if (WindowCenter.Instance.IsOpen<GotoChargeWin>())
            {
                WindowCenter.Instance.CloseImmediately<GotoChargeWin>();
                WindowCenter.Instance.Close<GotoChargeWin>();
            }
            m_RechargeCountDict.Clear();
            m_ChargeReset = true;
@@ -149,15 +149,15 @@
            m_ChargeReset = true;
            if (WindowCenter.Instance.IsOpen<RechargeBoxWin>())
            {
                WindowCenter.Instance.CloseImmediately<RechargeBoxWin>();
                WindowCenter.Instance.Close<RechargeBoxWin>();
            }
            if (WindowCenter.Instance.IsOpen<SupremeRechargeWin>())
            {
                WindowCenter.Instance.CloseImmediately<SupremeRechargeWin>();
                WindowCenter.Instance.Close<SupremeRechargeWin>();
            }
            if (WindowCenter.Instance.IsOpen<FirstRechargeWin>())
            {
                WindowCenter.Instance.CloseImmediately<FirstRechargeWin>();
                WindowCenter.Instance.Close<FirstRechargeWin>();
                WindowCenter.Instance.Open<MainInterfaceWin>();
            }
        }
System/Vip/VipWin.cs
@@ -169,7 +169,7 @@
            if (win is TreasureNewGotWin)
            {
                WindowJumpMgr.Instance.ClearJumpData();
                WindowCenter.Instance.CloseImmediately<VipRechargeWin>();
                WindowCenter.Instance.Close<VipRechargeWin>();
            }
        }
System/Voice/VoiceRecorder.cs
@@ -78,7 +78,7 @@
        {
            StopCoroutine(cacheCoroutine);
            cacheCoroutine = null;
            WindowCenter.Instance.CloseImmediately<MonitorVoiceWin>();
            WindowCenter.Instance.Close<MonitorVoiceWin>();
            AudioListener.volume = 1f;
        }
    }
@@ -139,7 +139,7 @@
            cacheCoroutine = null;
        }
        WindowCenter.Instance.CloseImmediately<MonitorVoiceWin>();
        WindowCenter.Instance.Close<MonitorVoiceWin>();
        if (Microphone.devices == null || Microphone.devices.Length == 0)
        {
System/Welfare/AwardExchangeWin.cs
@@ -91,7 +91,7 @@
                string wxCode = passward.Substring(0, 2);
                if (wxCode == "wx")
                {
                    WindowCenter.Instance.CloseImmediately<WelfareWin>();
                    WindowCenter.Instance.Close<WelfareWin>();
                }
            }
        }
System/Welfare/LevelGiftWin.cs
@@ -162,12 +162,12 @@
            });
            _cell.vipBtn.RemoveAllListeners();
            _cell.vipBtn.AddListener(() =>
            _cell.vipBtn.AddListener((UnityEngine.Events.UnityAction)(() =>
            {
                WindowJumpMgr.Instance.ClearJumpData();
                WindowCenter.Instance.CloseImmediately<WelfareWin>();
                WindowCenter.Instance.Close<WelfareWin>();
                WindowCenter.Instance.Open<VipRechargeWin>(false, 0);
            });
            }));
        }
        private void PlayerDataRefreshInfoEvent(PlayerDataRefresh _type)
System/WindowBase/Windows.cs
@@ -5,11 +5,46 @@
namespace Snxxz.UI
{
    public class WindowController : SingletonMonobehaviour<WindowController>
    public class WindowCenter : SingletonMonobehaviour<WindowCenter>
    {
        public event Action<Window> windowBeforeOpenEvent;
        public event Action<Window> windowAfterOpenEvent;
        public event Action<Window> windowBeforeCloseEvent;
        public event Action<Window> windowAfterCloseEvent;
        public event Action<Window> jumpWindowCloseEvent;
        List<string> closeAllIgnoreWindows = new List<string>() {
                     "MessageWin", "NewBieWin", "NewItemGetWin", "AttributePromoteShowWin" ,"DungeonBeginCoolDownWin","DungeonFightWin","StatusTipWin"
                     ,"ScrollTipWin","MarqueeWin","ExperienceOpenWin","TrumpetWin","BattlePrepareCoolDownWin","DungeonGradeWin","BattleHintWin",
                     "TreasureDungeonMissionHintWin","FairyGrabBossHintWin","DungeonFairyFeastHintWin","PetAndMountPushWin","UpgradeWin","DungeonFairyLandWin"
                     ,"GatherSoulDungeonHintWin"
                 };
        UIRoot m_UIRoot;
        public UIRoot uiRoot
        {
            get
            {
                if (m_UIRoot == null)
                {
                    var prefab = BuiltInLoader.LoadPrefab("UIRoot");
                    var instance = GameObject.Instantiate(prefab, Vector3.zero, Quaternion.identity);
                    instance.name = "UIRoot";
                    m_UIRoot = instance.GetComponent<UIRoot>();
                    if (Application.isPlaying)
                    {
                        GameObject.DontDestroyOnLoad(instance);
                    }
                }
                return m_UIRoot;
            }
        }
        WindowAsyncLoad m_AnyncLoad;
        public WindowAsyncLoad asyncLoad {
            get {
        public WindowAsyncLoad asyncLoad
        {
            get
            {
                if (m_AnyncLoad == null)
                {
                    var gameObject = new GameObject("WindowAnyncLoad");
@@ -25,6 +60,33 @@
        List<OpenCommand> openCommands = new List<OpenCommand>();
        List<CloseCommand> closeCommands = new List<CloseCommand>();
        public T Get<T>() where T : Window
        {
            T win = null;
            if (TryGetWindow(out win))
            {
                return win;
            }
            else
            {
                DebugEx.LogFormat("没有找到窗口:{0}", typeof(T).Name);
                return null;
            }
        }
        public Window Get(string name)
        {
            if (windows.ContainsKey(name))
            {
                return windows[name];
            }
            else
            {
                return null;
            }
        }
        public void OpenFromLocal<T>() where T : Window
        {
@@ -128,8 +190,23 @@
        public void Close<T>() where T : Window
        {
            var name = typeof(T).Name;
            PushCloseCommand(new CloseCommand()
            {
                name = typeof(T).Name,
            });
        }
        public void Close(string name)
        {
            PushCloseCommand(new CloseCommand()
            {
                name = name,
            });
        }
        private void PushCloseCommand(CloseCommand command)
        {
            var name = command.name;
            var index = openCommands.FindIndex((x) => { return x.name == name; });
            if (index != -1)
            {
@@ -139,12 +216,339 @@
            var exist = closeCommands.Exists((x) => { return x.name == name; });
            if (!exist)
            {
                closeCommands.Add(new CloseCommand()
                closeCommands.Add(command);
            }
        }
        public List<string> GetAll()
        {
            return new List<string>(windows.Keys);
        }
        public void CloseAll(CloseAllIgnoreType ignoreType = CloseAllIgnoreType.System)
        {
            foreach (var window in windows.Values)
            {
                if (window == null)
                {
                    name = name,
                });
                    continue;
                }
                var isIgnore = false;
                switch (ignoreType)
                {
                    case CloseAllIgnoreType.Base:
                        isIgnore = window.windowInfo.windowType <= WindowType.Base;
                        break;
                    case CloseAllIgnoreType.BaseAndCustom:
                        isIgnore = window.windowInfo.windowType <= WindowType.Base || closeAllIgnoreWindows.Contains(window.name);
                        break;
                    case CloseAllIgnoreType.System:
                        isIgnore = window.windowInfo.windowType >= WindowType.System;
                        break;
                    case CloseAllIgnoreType.Custom:
                        isIgnore = closeAllIgnoreWindows.Contains(window.name);
                        break;
                    case CloseAllIgnoreType.SystemAndCustom:
                        isIgnore = window.windowInfo.windowType >= WindowType.System || closeAllIgnoreWindows.Contains(window.name);
                        break;
                }
                if (!isIgnore)
                {
                    if (window.windowState == Window.WindowState.Opened || window.windowState == Window.WindowState.Opening)
                    {
                        window.CloseImmediately();
                    }
                }
            }
            asyncLoad.StopAllTasks();
        }
        public void CloseOthers<T>() where T : Window
        {
            foreach (var name in windows.Keys)
            {
                var window = windows[name];
                if (window is T)
                {
                    continue;
                }
                if (window != null)
                {
                    if (window.windowState == Window.WindowState.Opened || window.windowState == Window.WindowState.Opening)
                    {
                        Close(name);
                    }
                }
            }
            asyncLoad.StopAllTasks();
        }
        public void CloseOthers(List<string> windowNames, CloseAllIgnoreType ignoreType)
        {
            foreach (var name in windows.Keys)
            {
                var window = windows[name];
                if (window == null)
                {
                    continue;
                }
                var isIgnore = false;
                switch (ignoreType)
                {
                    case CloseAllIgnoreType.Base:
                        isIgnore = windowNames.Contains(name) || window.windowInfo.windowType <= WindowType.Base;
                        break;
                    case CloseAllIgnoreType.BaseAndCustom:
                        isIgnore = windowNames.Contains(name) || window.windowInfo.windowType <= WindowType.Base || closeAllIgnoreWindows.Contains(name);
                        break;
                    case CloseAllIgnoreType.System:
                        isIgnore = windowNames.Contains(name) || window.windowInfo.windowType >= WindowType.System;
                        break;
                    case CloseAllIgnoreType.Custom:
                        isIgnore = windowNames.Contains(name) || closeAllIgnoreWindows.Contains(name);
                        break;
                    case CloseAllIgnoreType.SystemAndCustom:
                        isIgnore = windowNames.Contains(name) || window.windowInfo.windowType >= WindowType.System || closeAllIgnoreWindows.Contains(name);
                        break;
                }
                if (!isIgnore)
                {
                    if (window.windowState == Window.WindowState.Opened || window.windowState == Window.WindowState.Opening)
                    {
                        Close(name);
                    }
                }
            }
            asyncLoad.StopAllTasks();
        }
        public void DestoryWinsByStage(WindowStage _windowStage)
        {
            switch (_windowStage)
            {
                case WindowStage.Launch:
                    DestroyWin<DownLoadWin>();
                    DestroyWin<VersionUpdateWin>();
                    DestroyWin<LaunchWin>();
                    break;
                case WindowStage.Login:
                    DestroyWin<LoginWin>();
                    DestroyWin<ServerListWin>();
                    break;
                case WindowStage.SelectRole:
                    DestroyWin<CreateRoleWin>();
                    DestroyWin<SelectRoleWin>();
                    DestroyWin<LaunchBackGroundWin>();
                    break;
                default:
                    break;
            }
            UnLoadAssetBundle(_windowStage);
        }
        public void DestroyWin<T>() where T : Window
        {
            DestroyWin(typeof(T).Name);
        }
        public void DestroyWin(string name)
        {
            if (windows.ContainsKey(name))
            {
                var win = windows[name];
                win.CloseImmediately();
                GameObject.Destroy(win.gameObject);
                MonoBehaviour.Destroy(win);
                windows[name] = null;
                windows.Remove(name);
            }
            else
            {
                DebugEx.LogFormat("{0} 窗口无法获得!", name);
            }
        }
        public void UnLoadAssetBundle(WindowStage windowStage)
        {
            if (!AssetSource.uiFromEditor)
            {
                switch (windowStage)
                {
                    case WindowStage.Launch:
                        break;
                    case WindowStage.Login:
                        AssetBundleUtility.Instance.UnloadAsset("ui/prioritywindow", "LoginWin");
                        AssetBundleUtility.Instance.UnloadAsset("ui/prioritywindow", "ServerListWin");
                        break;
                    case WindowStage.SelectRole:
                        AssetBundleUtility.Instance.UnloadAsset("ui/prioritywindow", "CreateRoleWin");
                        AssetBundleUtility.Instance.UnloadAsset("ui/prioritywindow", "SelectRoleWin");
                        break;
                    default:
                        break;
                }
            }
        }
        public bool IsOpen<T>() where T : Window
        {
            T win = null;
            if (TryGetWindow(out win))
            {
                var open = win.windowState == Window.WindowState.Opened
                               || win.windowState == Window.WindowState.Opening;
                return open;
            }
            else
            {
                return false;
            }
        }
        public bool IsOpen(string name)
        {
            if (windows.ContainsKey(name) && windows[name] != null)
            {
                var window = windows[name];
                return window.windowState == Window.WindowState.Opened || window.windowState == Window.WindowState.Opening;
            }
            else
            {
                return false;
            }
        }
        public bool ExitAnyFullScreenOrMaskWin()
        {
            bool exist = false;
            foreach (var window in windows.Values)
            {
                if (window.windowInfo.needMask || window.windowInfo.fullScreen)
                {
                    if (window.windowState == Window.WindowState.Opened || window.windowState == Window.WindowState.Opening)
                    {
                        exist = true;
                        break;
                    }
                }
            }
            return exist;
        }
        /// <summary>
        /// 是否存在大于或等于这个层级的全屏或有模糊背景的界面
        /// </summary>
        /// <param name="windowType"></param>
        /// <returns></returns>
        public bool ExitAnyFullScreenOrMaskWinLEqual(WindowType windowType)
        {
            bool exist = false;
            foreach (var window in windows.Values)
            {
                if ((window.windowInfo.needMask || window.windowInfo.fullScreen) && window.windowInfo.windowType >= windowType)
                {
                    if (window.windowState == Window.WindowState.Opened || window.windowState == Window.WindowState.Opening)
                    {
                        exist = true;
                        break;
                    }
                }
            }
            return exist;
        }
        internal void NotifyBeforeOpen<T>(T window) where T : Window
        {
            if (windowBeforeOpenEvent != null)
            {
                windowBeforeOpenEvent(window);
            }
        }
        internal void NotifyAfterOpen<T>(T window) where T : Window
        {
            if (windowAfterOpenEvent != null)
            {
                windowAfterOpenEvent(window);
            }
        }
        internal void NotifyBeforeClose<T>(T window) where T : Window
        {
            if (windowBeforeCloseEvent != null)
            {
                windowBeforeCloseEvent(window);
            }
        }
        internal void NotifyAfterClose<T>(T window) where T : Window
        {
            if (windowAfterCloseEvent != null)
            {
                windowAfterCloseEvent(window);
            }
        }
        internal void JumpNotifyAfterClose<T>(T window) where T : Window
        {
            if (jumpWindowCloseEvent != null)
            {
                jumpWindowCloseEvent(window);
            }
        }
        private bool TryGetWindow<T>(out T win) where T : Window
        {
            var name = typeof(T).Name;
            Window window = null;
            if (TryGetWindow(name, out window))
            {
                win = windows[name] as T;
                return win != null;
            }
            else
            {
                win = null;
                return false;
            }
        }
        private bool TryGetWindow(string name, out Window win)
        {
            WindowTrim(name);
            if (windows.ContainsKey(name))
            {
                win = windows[name];
                return win != null;
            }
            else
            {
                win = null;
                return false;
            }
        }
        private void WindowTrim(string name)
        {
            if (windows.ContainsKey(name))
            {
                if (windows[name] == null || windows[name].gameObject == null)
                {
                    windows.Remove(name);
                }
            }
        }
        private void LateUpdate()
@@ -288,6 +692,23 @@
            public string name;
        }
        public enum WindowStage
        {
            Launch,
            Login,
            SelectRole,
            Other,
        }
        public enum CloseAllIgnoreType
        {
            Base = 1,
            System = 2,
            Custom = 3,
            BaseAndCustom = 4,
            SystemAndCustom = 5,
        }
    }
}
System/WorldMap/WorldMapWin.cs
@@ -45,8 +45,8 @@
        protected override void OnAfterOpen()
        {
            WindowCenter.Instance.CloseImmediately<MainInterfaceWin>();
            WindowCenter.Instance.CloseImmediately<KnapSackWin>();
            WindowCenter.Instance.Close<MainInterfaceWin>();
            WindowCenter.Instance.Close<KnapSackWin>();
        }
        protected override void OnPreClose()