少年修仙传客户端代码仓库
client_linchunjie
2018-11-13 0886965aa6b5dc837143a75d9095422fff4b398d
4709 【1.3】【前端】法宝界面拆分
18个文件已修改
6个文件已添加
879 ■■■■■ 已修改文件
System/Achievement/AchievementModel.cs 30 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/BossShow/BossShowModel.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Chat/ChatCenter.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainInterfacePanel/CoinTaskTipModel.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainInterfacePanel/FlyingShoesTask.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainInterfacePanel/PlayerTaskDatas.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainInterfacePanel/PowerAddWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/DemonTreasureWin.cs 70 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/DemonTreasureWin.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/FairyTreasureCollectPanel.cs 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/FairyTreasureCollectPanelPattern3.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/FairyTreasureCollectPanelPattern5.cs 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/FairyTreasureWin.cs 70 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/FairyTreasureWin.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/TreasureBaseWin.cs 288 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/TreasureBaseWin.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/TreasureCollectBriefInfoBehaviour.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/TreasureDemonBehaviour.cs 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/TreasureExhibitionBehaviour.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/TreasureLevelUpWin.cs 315 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/TreasureSelectWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/UI3DTreasureSelectStage.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/WindowJump/WindowJumpMgr.cs 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/WorldMap/LocalMapTreasure.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Achievement/AchievementModel.cs
@@ -179,7 +179,7 @@
                switch (config.Type)
                {
                    case 3:
                        WindowCenter.Instance.Close<TreasureLevelUpWin>();
                        WindowCenter.Instance.Close<TreasureBaseWin>();
                        WindowCenter.Instance.Open<MainInterfaceWin>();
                        var hasTask = taskmodel.GetQuestState(config.Condition[0]) != -1;
@@ -234,7 +234,7 @@
                                else
                                {
                                    taskmodel.DailyBountyMove();
                                    WindowCenter.Instance.Close<TreasureLevelUpWin>();
                                    WindowCenter.Instance.Close<TreasureBaseWin>();
                                    WindowCenter.Instance.Open<MainInterfaceWin>();
                                }
                            }
@@ -243,7 +243,7 @@
                    case 1:
                        if (PlayerDatas.Instance.baseData.LV < GeneralDefine.achievementEarlierStageLevel)
                        {
                            WindowCenter.Instance.Close<TreasureLevelUpWin>();
                            WindowCenter.Instance.Close<TreasureBaseWin>();
                            WindowCenter.Instance.Open<MainInterfaceWin>();
                            taskmodel.AutomaticTripToTask(taskmodel.currentMission);
                        }
@@ -257,7 +257,7 @@
                        break;
                    case 4:
                    case 86:
                        WindowCenter.Instance.Close<TreasureLevelUpWin>();
                        WindowCenter.Instance.Close<TreasureBaseWin>();
                        var mapModel = ModelCenter.Instance.GetModel<MapModel>();
                        var pointId = mapModel.GetRecommendHangPoint();
                        var mapEventConfig = Config.Instance.Get<MapEventPointConfig>(pointId);
@@ -265,12 +265,12 @@
                        WindowCenter.Instance.Open<LocalMapWin>();
                        break;
                    case 36:
                        WindowCenter.Instance.Close<TreasureLevelUpWin>();
                        WindowCenter.Instance.Close<TreasureBaseWin>();
                        WindowCenter.Instance.Open<MainInterfaceWin>();
                        MapTransferUtility.Instance.MoveToNPC(config.Condition[0]);
                        break;
                    case 37:
                        WindowCenter.Instance.Close<TreasureLevelUpWin>();
                        WindowCenter.Instance.Close<TreasureBaseWin>();
                        WindowCenter.Instance.Open<MainInterfaceWin>();
                        MapTransferUtility.Instance.MoveToLocalMapPosition(config.Condition2.Vector3Parse());
                        break;
@@ -292,7 +292,7 @@
                        {
                            if (PlayerDatas.Instance.baseData.LV < GeneralDefine.achievementEarlierStageLevel)
                            {
                                WindowCenter.Instance.Close<TreasureLevelUpWin>();
                                WindowCenter.Instance.Close<TreasureBaseWin>();
                                WindowCenter.Instance.Open<MainInterfaceWin>();
                                taskmodel.AutomaticTripToTask(taskmodel.currentMission);
                            }
@@ -333,7 +333,7 @@
                        else
                        {
                            AchievementGoto.guideAchievementId = _achievementId;
                            WindowCenter.Instance.Close<TreasureLevelUpWin>();
                            WindowCenter.Instance.Close<TreasureBaseWin>();
                            playerPack.SetLookIndex(guid82);
                            WindowCenter.Instance.Close<MainInterfaceWin>();
@@ -358,7 +358,7 @@
                        {
                            AchievementGoto.guideAchievementId = _achievementId;
                            playerPack.SetLookIndex(guid83);
                            WindowCenter.Instance.Close<TreasureLevelUpWin>();
                            WindowCenter.Instance.Close<TreasureBaseWin>();
                            WindowCenter.Instance.Close<MainInterfaceWin>();
                            WindowCenter.Instance.Open<KnapSackWin>();
                        }
@@ -379,7 +379,7 @@
                        }
                        else
                        {
                            WindowCenter.Instance.Close<TreasureLevelUpWin>();
                            WindowCenter.Instance.Close<TreasureBaseWin>();
                            playerPack.SetLookIndex(guid84);
                            WindowCenter.Instance.Close<MainInterfaceWin>();
@@ -402,7 +402,7 @@
                        }
                        else
                        {
                            WindowCenter.Instance.Close<TreasureLevelUpWin>();
                            WindowCenter.Instance.Close<TreasureBaseWin>();
                            playerPack.SetLookIndex(guid85);
                            WindowCenter.Instance.Close<MainInterfaceWin>();
@@ -417,7 +417,7 @@
                        }
                        else
                        {
                            WindowCenter.Instance.Close<TreasureLevelUpWin>();
                            WindowCenter.Instance.Close<TreasureBaseWin>();
                            playerPack.SetLookIndex(guid90);
                            WindowCenter.Instance.Close<MainInterfaceWin>();
@@ -425,7 +425,7 @@
                        }
                        break;
                    case 109:
                        WindowCenter.Instance.Close<TreasureLevelUpWin>();
                        WindowCenter.Instance.Close<TreasureBaseWin>();
                        var skillId = SkillConfig.FindSkillByJob(config.Condition, PlayerDatas.Instance.baseData.Job);
                        if (skillId != 0)
@@ -483,7 +483,7 @@
                                }
                                treasureModel.currentCategory = TreasureCategory.Human;
                                treasureModel.selectedTreasure = treasureId;
                                if (!WindowCenter.Instance.IsOpen<TreasureLevelUpWin>())
                                if (!WindowCenter.Instance.IsOpen<TreasureBaseWin>())
                                {
                                    WindowJumpMgr.Instance.WindowJumpTo(JumpUIType.TreasureCollectSoul);
                                }
@@ -491,7 +491,7 @@
                        }
                        break;
                    default:
                        WindowCenter.Instance.Close<TreasureLevelUpWin>();
                        WindowCenter.Instance.Close<TreasureBaseWin>();
                        WindowCenter.Instance.Open<MainInterfaceWin>();
                        break;
System/BossShow/BossShowModel.cs
@@ -80,10 +80,10 @@
                ActiveBossShowCam(true);
                CameraController.Instance.CameraObject.enabled = false;
                if (WindowCenter.Instance.IsOpen<TreasureLevelUpWin>())
                if (WindowCenter.Instance.IsOpen<TreasureBaseWin>())
                {
                    WindowJumpMgr.Instance.ClearJumpData();
                    WindowCenter.Instance.CloseImmediately<TreasureLevelUpWin>();
                    WindowCenter.Instance.CloseImmediately<TreasureBaseWin>();
                    WindowCenter.Instance.CloseImmediately<TreasureSelectWin>();
                    WindowCenter.Instance.Open<MainInterfaceWin>();
                }
System/Chat/ChatCenter.cs
@@ -779,7 +779,7 @@
        private void CheckChatFloatOpen()
        {
            if (WindowCenter.Instance.ExitAnyFullScreenOrMaskWin() && !WindowCenter.Instance.IsOpen<LoadingWin>()
                && StageManager.Instance.CurrentStage is DungeonStage && !WindowCenter.Instance.IsOpen<TreasureLevelUpWin>())
                && StageManager.Instance.CurrentStage is DungeonStage && !WindowCenter.Instance.IsOpen<TreasureBaseWin>())
            {
                if (!WindowCenter.Instance.IsOpen<ChatFloatWin>())
                {
System/MainInterfacePanel/CoinTaskTipModel.cs
@@ -114,7 +114,7 @@
    private IEnumerator PopupPanel()
    {
        yield return WaitingForSecondConst.WaitMS1500;
        if (NewBieCenter.Instance.inGuiding || ModelCenter.Instance.GetModel<TreasureModel>().newGotShowing || WindowCenter.Instance.IsOpen<TreasureLevelUpWin>())
        if (NewBieCenter.Instance.inGuiding || ModelCenter.Instance.GetModel<TreasureModel>().newGotShowing || WindowCenter.Instance.IsOpen<TreasureBaseWin>())
        {
            yield break;
        }
@@ -136,7 +136,7 @@
    private IEnumerator FairyAuTaskPanel()
    {
        yield return WaitingForSecondConst.WaitMS1500;
        if (NewBieCenter.Instance.inGuiding || ModelCenter.Instance.GetModel<TreasureModel>().newGotShowing || WindowCenter.Instance.IsOpen<TreasureLevelUpWin>())
        if (NewBieCenter.Instance.inGuiding || ModelCenter.Instance.GetModel<TreasureModel>().newGotShowing || WindowCenter.Instance.IsOpen<TreasureBaseWin>())
        {
            yield break;
        }
System/MainInterfacePanel/FlyingShoesTask.cs
@@ -189,7 +189,7 @@
                        {
                            treasureModel.selectedTreasure = _treasureId;
                            treasureModel.openFromTaskId = Task_ID;
                            WindowCenter.Instance.Open<TreasureLevelUpWin>();
                            WindowCenter.Instance.Open<TreasureBaseWin>();
                        }
                        return;
                    }
@@ -211,7 +211,7 @@
                        {
                            treasureModel.selectedTreasure = _treasureId;
                            treasureModel.openFromTaskId = Task_ID;
                            WindowCenter.Instance.Open<TreasureLevelUpWin>();
                            WindowCenter.Instance.Open<TreasureBaseWin>();
                        }
                    }
                    break;
System/MainInterfacePanel/PlayerTaskDatas.cs
@@ -1295,7 +1295,7 @@
            yield break;
        }
        if (WindowCenter.Instance.IsOpen<TreasureLevelUpWin>())
        if (WindowCenter.Instance.IsOpen<TreasureBaseWin>())
        {
            yield break;
        }
System/MainInterfacePanel/PowerAddWin.cs
@@ -121,7 +121,7 @@
        void CheckPosition()
        {
            var type = WindowType.None;
            if (WindowCenter.Instance.IsOpen<TreasureLevelUpWin>())
            if (WindowCenter.Instance.IsOpen<TreasureBaseWin>())
            {
                type = WindowType.TreasureLevelUp;
            }
System/Treasure/DemonTreasureWin.cs
New file
@@ -0,0 +1,70 @@
//--------------------------------------------------------
//    [Author]:           第二世界
//    [  Date ]:           Tuesday, November 13, 2018
//--------------------------------------------------------
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
namespace Snxxz.UI {
    public class DemonTreasureWin : Window
    {
        [SerializeField] TreasureDemonBehaviour m_TreasureDemonBehaviour;
        TreasureModel model
        {
            get { return ModelCenter.Instance.GetModel<TreasureModel>(); }
        }
        #region Built-in
        protected override void BindController()
        {
        }
        protected override void AddListeners()
        {
        }
        protected override void OnPreOpen()
        {
            UI3DTreasureSelectStage.Instance.SetStartState();
        }
        protected override void OnActived()
        {
            base.OnActived();
            model.treasureSelectedEvent += TreasureSelectedEvent;
            m_TreasureDemonBehaviour.Display(model.selectedTreasure, true);
        }
        protected override void OnAfterOpen()
        {
        }
        protected override void OnPreClose()
        {
            model.treasureSelectedEvent -= TreasureSelectedEvent;
            model.SetTreasureUnlockShow(TreasureCategory.Demon, 0);
        }
        protected override void OnAfterClose()
        {
        }
        #endregion
        private void TreasureSelectedEvent(int obj)
        {
            m_TreasureDemonBehaviour.Display(model.selectedTreasure, false);
        }
    }
}
System/Treasure/DemonTreasureWin.cs.meta
New file
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 9a3ed68d5cc690a458ae6f67f431841b
timeCreated: 1542095044
licenseType: Pro
MonoImporter:
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
System/Treasure/FairyTreasureCollectPanel.cs
@@ -12,8 +12,10 @@
{
    public class FairyTreasureCollectPanel : MonoBehaviour
    {
        [SerializeField] Image m_TreasureNameIcon;
        [SerializeField] PositionTween m_NameTween;
        [SerializeField] TreasureContainer[] m_TreasureContainers;
        public void Display(int _treasureId, bool _tween = false)
        {
@@ -33,6 +35,20 @@
                }
            }
            var config = Config.Instance.Get<TreasureConfig>(_treasureId);
            if (config != null)
            {
                m_TreasureNameIcon.SetSprite(config.TreasureNameIcon);
            }
            if (_tween)
            {
                m_NameTween.Play();
            }
            else
            {
                m_NameTween.SetEndState();
            }
        }
        public void Dispose()
System/Treasure/FairyTreasureCollectPanelPattern3.cs
@@ -130,7 +130,7 @@
                        FuncOpen.Instance.ProcessorFuncErrorTip(124);
                        return;
                    }
                    WindowCenter.Instance.CloseImmediately<TreasureLevelUpWin>();
                    WindowCenter.Instance.CloseImmediately<TreasureBaseWin>();
                    WindowCenter.Instance.Open<TreasureFindHostWin>();
                    break;
            }
@@ -145,7 +145,7 @@
            }
            if (show)
            {
                WindowCenter.Instance.CloseImmediately<TreasureLevelUpWin>();
                WindowCenter.Instance.CloseImmediately<TreasureBaseWin>();
                WindowCenter.Instance.Open<MainInterfaceWin>();
            }
            show = false;
System/Treasure/FairyTreasureCollectPanelPattern5.cs
@@ -182,7 +182,7 @@
        private void DisplayFurnacesHole()
        {
            m_ContainerHoles.gameObject.SetActive(treasure.state == TreasureState.Collected);
            if (treasure.state == TreasureState.Collected)
            if (treasure.state == TreasureState.Collected && treasure.stage == 0)
            {
                var _list = model.GetFurnacesAchievements();
                for (int i = 0; i < m_FurnacesIcons.Length; i++)
@@ -218,7 +218,7 @@
                    m_FurnacesIcons[i].gameObject.SetActive(achievement != null && achievement.completed);
                }
            }
            else
            if (treasure.state == TreasureState.Collected && treasure.stage >= 1)
            {
                for (int i = 0; i < m_FurnacesIcons.Length; i++)
                {
@@ -257,7 +257,7 @@
            {
                TreasureStageUpTriggerWin.screenShotCut = _tex;
                WindowJumpMgr.Instance.ClearJumpData();
                WindowCenter.Instance.CloseImmediately<TreasureLevelUpWin>();
                WindowCenter.Instance.CloseImmediately<TreasureBaseWin>();
                WindowCenter.Instance.Open<TreasureStageUpTriggerWin>(true);
                WindowCenter.Instance.Open<MainInterfaceWin>();
                if (WindowCenter.Instance.IsOpen<DialogueDuidanceWin>())
@@ -439,7 +439,7 @@
        private void GotoStove()
        {
            WindowCenter.Instance.CloseImmediately<TreasureLevelUpWin>();
            WindowCenter.Instance.CloseImmediately<TreasureBaseWin>();
            WindowCenter.Instance.Close<MainInterfaceWin>();
            WindowCenter.Instance.Open<BlastFurnaceWin>();
        }
System/Treasure/FairyTreasureWin.cs
New file
@@ -0,0 +1,70 @@
//--------------------------------------------------------
//    [Author]:           第二世界
//    [  Date ]:           Tuesday, November 13, 2018
//--------------------------------------------------------
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
namespace Snxxz.UI {
    public class FairyTreasureWin : Window
    {
        [SerializeField] FairyTreasureCollectPanel m_TreasureFairyBehaviour;
        TreasureModel model
        {
            get { return ModelCenter.Instance.GetModel<TreasureModel>(); }
        }
        #region Built-in
        protected override void BindController()
        {
        }
        protected override void AddListeners()
        {
        }
        protected override void OnPreOpen()
        {
            UI3DTreasureSelectStage.Instance.SetStartState();
        }
        protected override void OnActived()
        {
            base.OnActived();
            model.treasureSelectedEvent += TreasureSelectedEvent;
            m_TreasureFairyBehaviour.Dispose();
            m_TreasureFairyBehaviour.Display(model.selectedTreasure, true);
        }
        protected override void OnAfterOpen()
        {
        }
        protected override void OnPreClose()
        {
            m_TreasureFairyBehaviour.Dispose();
            model.treasureSelectedEvent -= TreasureSelectedEvent;
        }
        protected override void OnAfterClose()
        {
        }
        #endregion
        private void TreasureSelectedEvent(int obj)
        {
            m_TreasureFairyBehaviour.Dispose();
            m_TreasureFairyBehaviour.Display(model.selectedTreasure, false);
        }
    }
}
System/Treasure/FairyTreasureWin.cs.meta
New file
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: e51dda432d4101d459487613d8918b7e
timeCreated: 1542095817
licenseType: Pro
MonoImporter:
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
System/Treasure/TreasureBaseWin.cs
New file
@@ -0,0 +1,288 @@
//--------------------------------------------------------
//    [Author]:           第二世界
//    [  Date ]:           Tuesday, November 13, 2018
//--------------------------------------------------------
using System;
using System.Collections;
using System.Collections.Generic;
using TableConfig;
using UnityEngine;
using UnityEngine.UI;
namespace Snxxz.UI
{
    public class TreasureBaseWin : Window
    {
        [SerializeField] RectTransform m_DisplayContainer;
        [SerializeField] Image m_TreasureTitle;
        [SerializeField] DragSelectComponent m_DragSelect;
        [SerializeField] Button m_Left;
        [SerializeField] Button m_Right;
        [SerializeField] Button m_Back;
        public static event Func<int, bool> allowSelectTreasure;
        public static event Func<int> allowBack;
        public static event Action<int> prepareSelectTreasure;
        public static event Action prepareBack;
        bool backToSelectWindow = false;
        TreasureModel model
        {
            get { return ModelCenter.Instance.GetModel<TreasureModel>(); }
        }
        #region Built-in
        protected override void BindController()
        {
        }
        protected override void AddListeners()
        {
            m_Left.onClick.AddListener(Left);
            m_Right.onClick.AddListener(Right);
            m_Back.onClick.AddListener(Back);
        }
        protected override void OnPreOpen()
        {
            backToSelectWindow = false;
            m_DisplayContainer.gameObject.SetActive(false);
            if (UI3DTreasureSelectStage.Instance.IsOpen)
            {
                if (UI3DTreasureSelectStage.Instance.jumpTreasure != 0)
                {
                    model.selectedTreasure = UI3DTreasureSelectStage.Instance.jumpTreasure;
                }
                else
                {
                    model.selectedTreasure = UI3DTreasureSelectStage.Instance.selectTreasure;
                }
            }
        }
        protected override void OnAfterOpen()
        {
            UI3DTreasureSelectStage.Instance.OnCameraCloserComplete += OnCameraCloserComplete;
            UI3DTreasureSelectStage.Instance.OnCameraBackComplete += OnCameraBackComplete;
            m_DragSelect.onDragComplete += OnDragComplete;
            model.treasureSelectedEvent += TreasureSelectedEvent;
            CameraManager.uiCamera.enabled = true;
            if (!UI3DTreasureSelectStage.Instance.IsOpen)
            {
                UI3DTreasureSelectStage.Instance.Open(true, model.currentCategory);
                var _list = model.GetTreasureCategory(model.currentCategory);
                var _index = _list.FindIndex((x) =>
                {
                    return x == model.selectedTreasure;
                });
                UI3DTreasureSelectStage.Instance.GotoImmediatly(_index);
                OnCameraCloserComplete();
            }
            else if (UI3DTreasureSelectStage.Instance.CloserComplete)
            {
                OnCameraCloserComplete();
            }
        }
        protected override void OnPreClose()
        {
            CloseSubWindows();
            UI3DTreasureSelectStage.Instance.OnCameraCloserComplete -= OnCameraCloserComplete;
            UI3DTreasureSelectStage.Instance.OnCameraBackComplete -= OnCameraBackComplete;
            m_DragSelect.onDragComplete -= OnDragComplete;
            model.treasureSelectedEvent -= TreasureSelectedEvent;
            if (!backToSelectWindow)
            {
                UI3DTreasureSelectStage.Instance.Close();
            }
        }
        protected override void OnAfterClose()
        {
        }
        #endregion
        private void TreasureSelectedEvent(int treasureId)
        {
            DisplaySelects();
            var list = model.GetTreasureCategory(model.currentCategory);
            var index = list.FindIndex((x) =>
            {
                return x == treasureId;
            });
            if (index != -1)
            {
                UI3DTreasureSelectStage.Instance.GotoImmediatly(index);
            }
        }
        private void OnCameraCloserComplete()
        {
            if (WindowCenter.Instance.IsOpen<EffectToFaBaoWin>())
            {
                WindowCenter.Instance.CloseImmediately<EffectToFaBaoWin>();
            }
            CloseSubWindows();
            m_DisplayContainer.gameObject.SetActive(true);
            switch (model.currentCategory)
            {
                case TreasureCategory.Human:
                    m_TreasureTitle.SetSprite("XT_FB_45");
                    m_Left.image.SetSprite("XT_FB_33");
                    m_Right.image.SetSprite("XT_FB_34");
                    WindowCenter.Instance.Open<TreasureLevelUpWin>();
                    break;
                case TreasureCategory.Demon:
                    m_TreasureTitle.SetSprite("XT_FB_46");
                    m_Left.image.SetSprite("XT_FB_35");
                    m_Right.image.SetSprite("XT_FB_36");
                    WindowCenter.Instance.Open<DemonTreasureWin>();
                    break;
                case TreasureCategory.Fairy:
                    m_TreasureTitle.SetSprite("XT_FB_47");
                    m_Left.image.SetSprite("XT_FB_33");
                    m_Right.image.SetSprite("XT_FB_34");
                    WindowCenter.Instance.Open<FairyTreasureWin>();
                    break;
            }
            DisplaySelects();
        }
        private void DisplaySelects()
        {
            var leftRifht = Config.Instance.Get<TreasureConfig>(model.selectedTreasure + 1);
            m_Right.gameObject.SetActive(leftRifht != null);
            leftRifht = Config.Instance.Get<TreasureConfig>(model.selectedTreasure - 1);
            m_Left.gameObject.SetActive(leftRifht != null);
        }
        private void OnCameraBackComplete()
        {
            backToSelectWindow = true;
            CloseImmediately();
        }
        private void OnDragComplete(int result)
        {
            if (result > 0)
            {
                Right();
            }
            else if (result < 0)
            {
                Left();
            }
        }
        private void Left()
        {
            var selectTreasure = model.selectedTreasure - 1;
            if (!AllowSelectTreasure(selectTreasure))
            {
                return;
            }
            if (prepareSelectTreasure != null)
            {
                prepareSelectTreasure(selectTreasure);
            }
            model.selectedTreasure = selectTreasure;
        }
        private void Right()
        {
            var selectTreasure = model.selectedTreasure + 1;
            if (!AllowSelectTreasure(selectTreasure))
            {
                return;
            }
            if (prepareSelectTreasure != null)
            {
                prepareSelectTreasure(selectTreasure);
            }
            model.selectedTreasure = selectTreasure;
        }
        private void Back()
        {
            var returnCode = 0;
            if (allowBack != null)
            {
                returnCode = allowBack();
            }
            if (returnCode != 0)
            {
                return;
            }
            if (PlayerDatas.Instance.baseData.LV < model.treasureBackLvLimit
                            && !WindowJumpMgr.Instance.IsJumpState)
            {
                StartBack();
                return;
            }
            if (!WindowJumpMgr.Instance.IsJumpState && model.openFromTreasureList)
            {
                StartBack();
                return;
            }
            if (!WindowJumpMgr.Instance.IsJumpState && model.exitRecord >= 4)
            {
                StartBack();
                model.exitRecord = 0;
                return;
            }
            model.openFromTreasureList = false;
            CloseImmediately();
            if (!WindowJumpMgr.Instance.IsJumpState)
            {
                model.exitRecord++;
                WindowCenter.Instance.Open<MainInterfaceWin>();
            }
        }
        void StartBack()
        {
            if (prepareBack != null)
            {
                prepareBack();
            }
            model.openFromTreasureList = false;
            CloseSubWindows();
            m_DisplayContainer.gameObject.SetActive(false);
            WindowCenter.Instance.Open<TreasureSelectWin>(true);
            UI3DTreasureSelectStage.Instance.StartBack();
        }
        private bool AllowSelectTreasure(int treasureId)
        {
            Treasure treasure;
            if (!model.TryGetTreasure(treasureId, out treasure))
            {
                return false;
            }
            if (allowSelectTreasure != null && !allowSelectTreasure(treasureId))
            {
                return false;
            }
            return true;
        }
        private void CloseSubWindows()
        {
            var childrens = WindowConfig.Get().FindChildWindows("TreasureBaseWin");
            foreach (var window in childrens)
            {
                WindowCenter.Instance.Close(window);
            }
        }
    }
}
System/Treasure/TreasureBaseWin.cs.meta
New file
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 8caae764204324b49a5cdc5ee43c33c4
timeCreated: 1542077271
licenseType: Pro
MonoImporter:
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
System/Treasure/TreasureCollectBriefInfoBehaviour.cs
@@ -384,7 +384,7 @@
                model.selectedTreasure = displayTreasureId;
                model.currentCategory = (TreasureCategory)config.Category;
                model.openFromTreasureCollect = true;
                WindowCenter.Instance.Open<TreasureLevelUpWin>();
                WindowCenter.Instance.Open<TreasureBaseWin>();
            }
        }
System/Treasure/TreasureDemonBehaviour.cs
@@ -9,6 +9,7 @@
{
    public class TreasureDemonBehaviour : MonoBehaviour
    {
        [SerializeField] Image m_TreasureNameIcon;
        [SerializeField] Text m_TreasureDescription;
        [SerializeField] RectTransform m_ContainerFightPower;
        [SerializeField] Text m_FightPower;
@@ -24,6 +25,7 @@
        [SerializeField] PositionTween m_DescriptionTween;
        [SerializeField] PositionTween m_SkillTween;
        [SerializeField] PositionTween m_NameTween;
        TreasureModel m_Model;
        TreasureModel model
@@ -74,11 +76,13 @@
                m_SkillTween.SetStartState();
                m_DescriptionTween.Play();
                m_SkillTween.Play();
                m_NameTween.Play();
            }
            else
            {
                m_DescriptionTween.SetEndState();
                m_SkillTween.SetEndState();
                m_NameTween.SetEndState();
            }
            var config = Config.Instance.Get<TreasureConfig>(_id);
@@ -91,6 +95,7 @@
            m_GetBtn.gameObject.SetActive(m_Treasure.state == TreasureState.Collecting);
            m_RecommondPower.gameObject.SetActive(m_Treasure.state != TreasureState.Collected);
            m_ContainerFightPower.gameObject.SetActive(m_Treasure.state == TreasureState.Collected);
            m_TreasureNameIcon.SetSprite(config.TreasureNameIcon);
            if (m_Treasure.state == TreasureState.Locked)
            {
System/Treasure/TreasureExhibitionBehaviour.cs
@@ -58,7 +58,7 @@
            {
                return;
            }
            if (_window is TreasureSelectWin || _window is TreasureLevelUpWin)
            if (_window is TreasureSelectWin || _window is TreasureBaseWin)
            {
                if (!m_NewTreasureEffect.IsPlaying)
                {
System/Treasure/TreasureLevelUpWin.cs
@@ -17,8 +17,6 @@
    {
        [SerializeField] TreasureAnimation m_TreasureAnimation;
        [SerializeField] RectTransform m_DisplayContainer;
        [SerializeField] Image m_TreasureTitle;
        [SerializeField] DragSelectComponent m_DragSelect;
        [SerializeField] RectTransform m_ContainerUnGet;
        [SerializeField] RectTransform m_ContainerLockDetail;
@@ -54,16 +52,6 @@
        [SerializeField] RectTransform m_ContainerPotential;
        [SerializeField] TreasurePotentialPanel m_TreasurePotential;
        [SerializeField] TreasureDemonBehaviour m_TreasureDemonBehaviour;
        [SerializeField] FairyTreasureCollectPanel m_TreasureFairyBehaviour;
        [SerializeField] RectTransform m_ContainerSelect;
        [SerializeField] Image m_LeftRedpoint;
        [SerializeField] Image m_RightRedpoint;
        [SerializeField] Button m_LeftBtn;
        [SerializeField] Button m_RightBtn;
        [SerializeField] Button m_BackBtn;
        TreasureModel m_Model;
        TreasureModel model
        {
@@ -95,9 +83,7 @@
        Treasure m_Treasure;
        bool m_CorrectClose = false;
        bool m_OnLevelUpStage = false;
        bool m_Init = false;
        bool m_NewBieGuide = false;
        int mainTaskId = 0;
@@ -118,44 +104,29 @@
        protected override void AddListeners()
        {
            m_BackBtn.onClick.AddListener(OnBack);
            m_GetTreasureBtn.onClick.AddListener(OnGetTreasure);
            m_LevelUpBtn.onClick.AddListener(OnLevelUp);
            m_LeftBtn.onClick.AddListener(OnLeftBtn);
            m_RightBtn.onClick.AddListener(OnRightBtn);
            m_Controller.OnRefreshCell += OnRefreshCell;
        }
        protected override void OnPreOpen()
        {
            m_Init = false;
            if (UI3DTreasureSelectStage.Instance.IsOpen)
            {
                if (UI3DTreasureSelectStage.Instance.jumpTreasure != 0)
                {
                    model.selectedTreasure = UI3DTreasureSelectStage.Instance.jumpTreasure;
                }
                else
                {
                    model.selectedTreasure = UI3DTreasureSelectStage.Instance.selectTreasure;
                }
            }
            m_DisplayContainer.gameObject.SetActive(false);
            m_DisplayContainer.gameObject.SetActive(true);
            m_ContainerSkillShow.gameObject.SetActive(false);
            m_ContainerTip.gameObject.SetActive(false);
            m_CorrectClose = false;
            m_OnLevelUpStage = false;
            m_NewBieGuide = false;
            model.treasureStepUpShow = false;
            m_TreasureAnimation.stepComplete = true;
            beforePlayerLv = PlayerDatas.Instance.baseData.LV;
            model.SetTreasureUnlockShow(TreasureCategory.Human, 0);
        }
        protected override void OnAfterOpen()
        protected override void OnActived()
        {
            UI3DTreasureSelectStage.Instance.OnCameraCloserComplete += OnCameraCloserComplete;
            UI3DTreasureSelectStage.Instance.OnCameraBackComplete += OnCameraBackComplete;
            base.OnActived();
            PlayerTaskDatas.CardLevelChange += CardLevelChange;
            model.treasureLevelProgressUpdateEvent += TreasureLevelProgressUpdateEvent;
            model.treasureSelectedEvent += TreasureSelectedEvent;
@@ -169,39 +140,23 @@
            m_Slider.slider.onValueChanged.AddListener(OnSliderValueUpdate);
            NewBieCenter.Instance.guideCompletedEvent += GuideCompletedEvent;
            FuncOpen.Instance.OnFuncStateChangeEvent += OnFuncStateChangeEvent;
            model.skillLevelUpRedpointUpdate += SkillLevelUpRedpointUpdate;
            m_DragSelect.onDragComplete += onDragComplete;
            CameraManager.uiCamera.enabled = true;
            if (!UI3DTreasureSelectStage.Instance.IsOpen)
            {
                UI3DTreasureSelectStage.Instance.Open(true, model.currentCategory);
                var _list = model.GetTreasureCategory(model.currentCategory);
                var _index = _list.FindIndex((x) =>
                {
                    return x == model.selectedTreasure;
                });
                UI3DTreasureSelectStage.Instance.GotoImmediatly(_index);
                OnCameraCloserComplete();
            }
            else if (UI3DTreasureSelectStage.Instance.CloserComplete && !m_Init)
            {
                OnCameraCloserComplete();
            }
            model.treasureStateChangeEvent += TreasureStateChangeEvent;
            TreasureBaseWin.allowSelectTreasure += AllowSelectTreasure;
            TreasureBaseWin.prepareSelectTreasure += PrepareSelectTreasure;
            TreasureBaseWin.allowBack += AllowBack;
            TreasureBaseWin.prepareBack += PrepareBack;
            mainTaskId = 0;
            Display();
        }
        protected override void OnActived()
        protected override void OnAfterOpen()
        {
            base.OnActived();
        }
        protected override void OnPreClose()
        {
            UI3DTreasureSelectStage.Instance.OnCameraCloserComplete -= OnCameraCloserComplete;
            UI3DTreasureSelectStage.Instance.OnCameraBackComplete -= OnCameraBackComplete;
            model.treasureLevelProgressUpdateEvent -= TreasureLevelProgressUpdateEvent;
            PlayerTaskDatas.CardLevelChange -= CardLevelChange;
            model.treasureSelectedEvent -= TreasureSelectedEvent;
@@ -215,19 +170,16 @@
            NewBieCenter.Instance.guideCompletedEvent -= GuideCompletedEvent;
            model.treasureStateChangeEvent -= TreasureStateChangeEvent;
            FuncOpen.Instance.OnFuncStateChangeEvent -= OnFuncStateChangeEvent;
            m_DragSelect.onDragComplete -= onDragComplete;
            model.skillLevelUpRedpointUpdate -= SkillLevelUpRedpointUpdate;
            TreasureBaseWin.allowSelectTreasure -= AllowSelectTreasure;
            TreasureBaseWin.prepareSelectTreasure -= PrepareSelectTreasure;
            TreasureBaseWin.allowBack -= AllowBack;
            TreasureBaseWin.prepareBack -= PrepareBack;
            m_Slider.slider.onValueChanged.RemoveAllListeners();
            m_TreasurePotential.Dispose();
            m_AchievementScroll.Dispose();
            m_TreasureFairyBehaviour.Dispose();
            if (FunctionalGuideCenter.Instance.ExistUnderwayGuide(65))
            {
                FunctionalGuideCenter.Instance.RemoveGuide(65);
            }
            if (!m_CorrectClose)
            {
                UI3DTreasureSelectStage.Instance.Close();
            }
            if (m_TreasureAnimation.step == TreasureAnimation.TreasureShowStep.FirstUnLock)
            {
@@ -260,32 +212,11 @@
            if (_id == model.selectedTreasure && _treasure != null
                && _treasure.state == TreasureState.Collecting && model.serverInited)
            {
                UpdateStage();
                if (WindowCenter.Instance.IsOpen<EffectToFaBaoWin>())
                {
                    WindowCenter.Instance.CloseImmediately<EffectToFaBaoWin>();
                }
                Display();
            }
        }
        private void OnCameraCloserComplete()
        {
            m_Init = true;
            m_DisplayContainer.gameObject.SetActive(true);
            UpdateStage();
            if (WindowCenter.Instance.IsOpen<EffectToFaBaoWin>())
            {
                WindowCenter.Instance.CloseImmediately<EffectToFaBaoWin>();
            }
        }
        private void OnCameraBackComplete()
        {
            m_CorrectClose = true;
            CloseImmediately();
        }
        private void UpdateStage(int _state = 0)
        private void Display(int _state = 0)
        {
            m_TreasureAnimation.selectTreasureId = model.selectedTreasure;
            model.TryGetTreasure(model.selectedTreasure, out m_Treasure);
@@ -294,71 +225,9 @@
            model.cacheGotAchievements.Clear();
            var _config = Config.Instance.Get<TreasureConfig>(m_Treasure.id);
            m_TreasureProperty.treasureNameTween.SetEndState();
            switch (model.currentCategory)
            {
                case TreasureCategory.Human:
                    beforePlayerLv = PlayerDatas.Instance.baseData.LV;
                    m_TreasureDemonBehaviour.gameObject.SetActive(false);
                    m_TreasureFairyBehaviour.gameObject.SetActive(false);
                    model.treasureStepUpShow = false;
                    SelectHumanTreasure(_state);
                    m_TreasureTitle.SetSprite("XT_FB_45");
                    m_LeftBtn.image.SetSprite("XT_FB_33");
                    m_RightBtn.image.SetSprite("XT_FB_34");
                    break;
                case TreasureCategory.Demon:
                    HideHuman();
                    m_TreasureAnimation.SetDisplayEnd();
                    m_TreasureAnimation.TreasureTween();
                    m_TreasureAnimation.stepComplete = true;
                    model.treasureStepUpShow = false;
                    m_TreasureProperty.containerName.gameObject.SetActive(true);
                    m_TreasureDemonBehaviour.gameObject.SetActive(true);
                    m_TreasureFairyBehaviour.gameObject.SetActive(false);
                    m_TreasureDemonBehaviour.Display(m_Treasure.id, _state == 0);
                    if (_state == 0)
                    {
                        m_TreasureProperty.treasureNameTween.Play();
                    }
                    m_TreasureTitle.SetSprite("XT_FB_46");
                    m_LeftBtn.image.SetSprite("XT_FB_35");
                    m_RightBtn.image.SetSprite("XT_FB_36");
                    break;
                case TreasureCategory.Fairy:
                    HideHuman();
                    m_TreasureAnimation.SetDisplayEnd();
                    m_TreasureAnimation.TreasureTween();
                    m_TreasureAnimation.stepComplete = true;
                    model.treasureStepUpShow = false;
                    m_TreasureDemonBehaviour.gameObject.SetActive(false);
                    m_TreasureProperty.containerName.gameObject.SetActive(true);
                    m_TreasureFairyBehaviour.gameObject.SetActive(true);
                    m_TreasureFairyBehaviour.Dispose();
                    m_TreasureFairyBehaviour.Display(m_Treasure.id, _state == 0);
                    if (_state == 0)
                    {
                        m_TreasureProperty.treasureNameTween.Play();
                    }
                    m_TreasureTitle.SetSprite("XT_FB_47");
                    m_LeftBtn.image.SetSprite("XT_FB_33");
                    m_RightBtn.image.SetSprite("XT_FB_34");
                    break;
            }
            var _leftRifht = Config.Instance.Get<TreasureConfig>(model.selectedTreasure + 1);
            m_RightBtn.gameObject.SetActive(_leftRifht != null);
            _leftRifht = Config.Instance.Get<TreasureConfig>(model.selectedTreasure - 1);
            m_LeftBtn.gameObject.SetActive(_leftRifht != null);
            var skillLevelUpRedpointTreasure = model.GetSkillLevelUpRedpointTreasure();
            m_LeftRedpoint.gameObject.SetActive(false);
            m_RightRedpoint.gameObject.SetActive(false);
        }
        private void HideHuman()
        {
            m_ContainerUnGet.gameObject.SetActive(false);
            m_ContainerPotential.gameObject.SetActive(false);
            m_ContainerLevelUp.gameObject.SetActive(false);
            beforePlayerLv = PlayerDatas.Instance.baseData.LV;
            model.treasureStepUpShow = false;
            SelectHumanTreasure(_state);
        }
        private void SelectHumanTreasure(int _state = 0)
@@ -434,7 +303,7 @@
                            && FuncOpen.Instance.IsFuncOpen(82) && !model.GetSpAnim(m_Treasure.id))
                        {
                            m_TreasureAnimation.step = TreasureAnimation.TreasureShowStep.FirstPotential;
                            UpdateStage(2);
                            Display(2);
                            return;
                        }
                    }
@@ -451,7 +320,7 @@
                    && !model.GetSpAnim(m_Treasure.id))
                {
                    m_TreasureAnimation.step = TreasureAnimation.TreasureShowStep.FirstPotential;
                    UpdateStage(2);
                    Display(2);
                }
            }
        }
@@ -519,68 +388,11 @@
        private void TreasureSelectedEvent(int _id)
        {
            if (!m_TreasureAnimation.stepComplete)
            {
                return;
            }
            var _list = model.GetTreasureCategory(model.currentCategory);
            var _index = _list.FindIndex((x) =>
            {
                return x == _id;
            });
            if (_index != -1)
            {
                m_OnLevelUpStage = false;
                UI3DTreasureSelectStage.Instance.GotoImmediatly(_index);
                UpdateStage(1);
            }
            Display(1);
        }
        private void onDragComplete(int _value)
        private bool AllowSelectTreasure(int treasureId)
        {
            if (_value > 0)
            {
                OnRightBtn();
            }
            else if (_value < 0)
            {
                OnLeftBtn();
            }
        }
        private void OnLeftBtn()
        {
            if (CheckSelectTreasureFunc(model.selectedTreasure - 1))
            {
                model.openFromTaskId = 0;
                if (FunctionalGuideCenter.Instance.ExistUnderwayGuide(65))
                {
                    FunctionalGuideCenter.Instance.RemoveGuide(65);
                }
                model.selectedTreasure = model.selectedTreasure - 1;
            }
        }
        private void OnRightBtn()
        {
            if (CheckSelectTreasureFunc(model.selectedTreasure + 1))
            {
                model.openFromTaskId = 0;
                if (FunctionalGuideCenter.Instance.ExistUnderwayGuide(65))
                {
                    FunctionalGuideCenter.Instance.RemoveGuide(65);
                }
                model.selectedTreasure = model.selectedTreasure + 1;
            }
        }
        private bool CheckSelectTreasureFunc(int _id)
        {
            Treasure _treasure;
            if (!model.TryGetTreasure(_id, out _treasure))
            {
                return false;
            }
            if (model.TreasureStageUpLimit(model.selectedTreasure))
            {
                return false;
@@ -588,49 +400,31 @@
            return m_TreasureAnimation.stepComplete && !model.treasureStepUpShow && !m_NewBieGuide;
        }
        private void OnBack()
        private void PrepareSelectTreasure(int treasureId)
        {
            if (!m_TreasureAnimation.stepComplete || model.treasureStepUpShow || m_NewBieGuide)
            model.openFromTaskId = 0;
            if (FunctionalGuideCenter.Instance.ExistUnderwayGuide(65))
            {
                return;
            }
            if (model.TreasureStageUpLimit(model.selectedTreasure))
            {
                return;
            }
            if (PlayerDatas.Instance.baseData.LV < model.treasureBackLvLimit
                && !WindowJumpMgr.Instance.IsJumpState)
            {
                StartBack();
                return;
            }
            if (!WindowJumpMgr.Instance.IsJumpState && model.openFromTreasureList)
            {
                StartBack();
                return;
            }
            if (!WindowJumpMgr.Instance.IsJumpState && model.exitRecord >= 4)
            {
                StartBack();
                model.exitRecord = 0;
                return;
            }
            model.openFromTreasureList = false;
            CloseImmediately();
            if (!WindowJumpMgr.Instance.IsJumpState)
            {
                model.exitRecord++;
                WindowCenter.Instance.Open<MainInterfaceWin>();
                FunctionalGuideCenter.Instance.RemoveGuide(65);
            }
        }
        void StartBack()
        private int AllowBack()
        {
            if (!m_TreasureAnimation.stepComplete || model.treasureStepUpShow || m_NewBieGuide)
            {
                return 1;
            }
            if (model.TreasureStageUpLimit(model.selectedTreasure))
            {
                return 1;
            }
            return 0;
        }
        private void PrepareBack()
        {
            model.SetTreasureUnlockShow(TreasureCategory.Human, 0);
            model.openFromTreasureList = false;
            m_DisplayContainer.gameObject.SetActive(false);
            WindowCenter.Instance.Open<TreasureSelectWin>(true);
            UI3DTreasureSelectStage.Instance.StartBack();
        }
        private void OnGetTreasure()
@@ -750,7 +544,7 @@
        private void AchievementCompletedEvent(int _id)
        {
            var config = Config.Instance.Get<TreasureConfig>(model.selectedTreasure);
            if (!m_Init || config == null || (TreasureCategory)config.Category != TreasureCategory.Human
            if (config == null || (TreasureCategory)config.Category != TreasureCategory.Human
                || m_Treasure.state != TreasureState.Collected || m_Treasure.IsHighestStage)
            {
                return;
@@ -836,7 +630,7 @@
                    else if (FuncOpen.Instance.IsFuncOpen(82) && !model.GetSpAnim(m_Treasure.id))
                    {
                        m_TreasureAnimation.step = TreasureAnimation.TreasureShowStep.FirstPotential;
                        UpdateStage(2);
                        Display(2);
                    }
                    break;
                case TreasureAnimation.TreasureShowStep.FirstUnLock:
@@ -864,13 +658,13 @@
                if (m_Treasure.IsHighestStage && FuncOpen.Instance.IsFuncOpen(82))
                {
                    m_TreasureAnimation.step = TreasureAnimation.TreasureShowStep.FirstPotential;
                    UpdateStage(2);
                    Display(2);
                }
                else
                {
                    if (mainTaskId != 0)
                    {
                        CloseImmediately();
                        WindowCenter.Instance.CloseImmediately<TreasureBaseWin>();
                        WindowCenter.Instance.Open<MainInterfaceWin>();
                        task.AutomaticTripToTask(mainTaskId);
                    }
@@ -995,8 +789,8 @@
                    break;
                case TreasureStageUnlock.Treasure:
                    WindowJumpMgr.Instance.ClearJumpData();
                    WindowCenter.Instance.CloseImmediately<TreasureBaseWin>();
                    WindowCenter.Instance.Open<MainInterfaceWin>();
                    CloseImmediately();
                    break;
                case TreasureStageUnlock.TreasureSoul:
                    TreasureSoulActiveWin.treasureSoulId = stage.treasureSoul;
@@ -1019,7 +813,7 @@
            {
                TreasureStageUpTriggerWin.screenShotCut = _tex;
                WindowJumpMgr.Instance.ClearJumpData();
                CloseImmediately();
                WindowCenter.Instance.CloseImmediately<TreasureBaseWin>();
                WindowCenter.Instance.Open<TreasureStageUpTriggerWin>(true);
                WindowCenter.Instance.Open<MainInterfaceWin>();
                if (WindowCenter.Instance.IsOpen<DialogueDuidanceWin>())
@@ -1218,13 +1012,6 @@
            }
        }
        private void SkillLevelUpRedpointUpdate()
        {
            var skillLevelUpRedpointTreasure = model.GetSkillLevelUpRedpointTreasure();
            m_LeftRedpoint.gameObject.SetActive(false);
            m_RightRedpoint.gameObject.SetActive(false);
        }
        protected override void LateUpdate()
        {
            base.LateUpdate();
@@ -1251,7 +1038,7 @@
        public void PreviewAnimation()
        {
            m_TreasureAnimation.step = TreasureAnimation.TreasureShowStep.FirstPotential;
            UpdateStage(2);
            Display(2);
        }
        [ContextMenu("测试功能开启")]
System/Treasure/TreasureSelectWin.cs
@@ -169,7 +169,7 @@
            WindowJumpMgr.Instance.ClearJumpData();
            m_CorrectClose = true;
            CameraManager.uiCamera.enabled = false;
            WindowCenter.Instance.Open<TreasureLevelUpWin>();
            WindowCenter.Instance.Open<TreasureBaseWin>();
            CloseImmediately();
        }
System/Treasure/UI3DTreasureSelectStage.cs
@@ -426,6 +426,7 @@
            {
                StopCoroutine(preloadCoroutine);
                preloadCoroutine = null;
                Preloading = false;
            }
            if (!m_PreloadDict.ContainsKey(currentCategory) && !_closer)
System/WindowJump/WindowJumpMgr.cs
@@ -503,7 +503,7 @@
                SetJumpLogic<TreasureSoulWin>(_tagWinSearchModel.TABID);
                break;
            case JumpUIType.TreasureCollectSoul:
                SetJumpLogic<TreasureLevelUpWin>(0);
                SetJumpLogic<TreasureBaseWin>(0);
                break;
            case JumpUIType.Kylin:
                dungeonModel.currentDungeon = new Dungeon(31190, 0);
@@ -617,7 +617,7 @@
            case JumpUIType.LLBT:
                treasureModel.currentCategory = TreasureCategory.Fairy;
                treasureModel.selectedTreasure = int.Parse(_tagWinSearchModel.SelectActive);
                SetJumpLogic<TreasureLevelUpWin>(_tagWinSearchModel.TABID);
                SetJumpLogic<TreasureBaseWin>(_tagWinSearchModel.TABID);
                break;
            case JumpUIType.FYZJTyp1:
            case JumpUIType.FYZJTyp2:
@@ -625,7 +625,7 @@
            case JumpUIType.SHLTyp2:
                treasureModel.currentCategory = TreasureCategory.Demon;
                treasureModel.selectedTreasure = int.Parse(_tagWinSearchModel.SelectActive);
                SetJumpLogic<TreasureLevelUpWin>(_tagWinSearchModel.TABID);
                SetJumpLogic<TreasureBaseWin>(_tagWinSearchModel.TABID);
                break;
            case JumpUIType.DhszTs:
@@ -640,7 +640,7 @@
            case JumpUIType.StfTs:
                treasureModel.currentCategory = TreasureCategory.Human;
                treasureModel.selectedTreasure = int.Parse(_tagWinSearchModel.SelectActive);
                SetJumpLogic<TreasureLevelUpWin>(_tagWinSearchModel.TABID);
                SetJumpLogic<TreasureBaseWin>(_tagWinSearchModel.TABID);
                break;
            case JumpUIType.FirstRecharge:
                SetJumpLogic<FirstRechargeWin>(_tagWinSearchModel.TABID, true);
System/WorldMap/LocalMapTreasure.cs
@@ -55,7 +55,7 @@
            model.selectedTreasure = treasureId;
            model.currentCategory = TreasureCategory.Human;
            WindowCenter.Instance.Open<TreasureLevelUpWin>();
            WindowCenter.Instance.Open<TreasureBaseWin>();
        }
    }