少年修仙传客户端代码仓库
client_linchunjie
2019-04-25 d98494f21cc04204ae1eb975f530de3fe028dff5
3335 法宝章节界面
3个文件已修改
47 ■■■■ 已修改文件
System/Treasure/TreasureChapterWin.cs 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/TreasureCollectBriefInfoBehaviour.cs 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/TreasureModel.cs 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/TreasureChapterWin.cs
@@ -30,7 +30,7 @@
        FunctionUnlockFlyObject flyObject = null;
        public static bool displaying = false;
        public static int displayId = 0;
        TreasureModel model { get { return ModelCenter.Instance.GetModel<TreasureModel>(); } }
        TaskModel taskModel { get { return ModelCenter.Instance.GetModel<TaskModel>(); } }
@@ -47,8 +47,6 @@
        protected override void OnPreOpen()
        {
            displaying = true;
            if (flyObject != null)
            {
                Destroy(flyObject);
@@ -84,7 +82,7 @@
        protected override void OnPreClose()
        {
            displaying = false;
            model.treasureChapterId = 0;
        }
        protected override void OnAfterClose()
System/Treasure/TreasureCollectBriefInfoBehaviour.cs
@@ -49,6 +49,7 @@
        Coroutine m_CacheCoroutine = null;
        TreasureModel model { get { return ModelCenter.Instance.GetModel<TreasureModel>(); } }
        TaskModel taskModel { get { return ModelCenter.Instance.GetModel<TaskModel>(); } }
        public void Display()
        {
@@ -57,6 +58,7 @@
            model.treasureStateChangeEvent += TreasureStateChangeEvent;
            model.treasureCollectProgressRefresh += TreasureCollectProgressRefresh;
            WindowCenter.Instance.windowAfterOpenEvent += WindowAfterOpenEvent;
            WindowCenter.Instance.windowAfterCloseEvent += WindowBeforeCloseEvent;
            dirty = false;
            DisplayBase();
@@ -79,7 +81,10 @@
                    StopCoroutine(m_CacheCoroutine);
                    m_CacheCoroutine = null;
                }
                m_CacheCoroutine = StartCoroutine(Co_StopEffect());
                if (gameObject.activeInHierarchy)
                {
                    m_CacheCoroutine = StartCoroutine(Co_StopEffect());
                }
            }
        }
@@ -92,7 +97,7 @@
        void DisplayBase()
        {
            bool isChapterOpen = TreasureChapterWin.displaying;
            bool isChapterOpen = model.treasureChapterId != 0;
            m_ContainerUnknown.gameObject.SetActive(displayId == 0 || isChapterOpen);
            m_ContainerCollect.gameObject.SetActive(displayId != 0 && !isChapterOpen);
@@ -163,6 +168,26 @@
            return 0;
        }
        int GetLostTreasure()
        {
            var treasureIds = model.GetTreasureCategory(TreasureCategory.Human);
            var latestTask = taskModel.GetLatestMainTaskId();
            foreach (var id in treasureIds)
            {
                List<int> tasks;
                if (model.TryGetTreasureTasks(id, out tasks))
                {
                    if (latestTask < tasks[0])
                    {
                        return id;
                    }
                }
            }
            return 0;
        }
        bool IsAllCompleted()
        {
            var treasureIds = model.GetTreasureCategory(TreasureCategory.Human);
@@ -188,6 +213,14 @@
            }
        }
        private void WindowBeforeCloseEvent(Window window)
        {
            if (window is TreasureChapterWin)
            {
                DisplayBase();
            }
        }
        private void LateUpdate()
        {
            if (dirty)
@@ -202,6 +235,7 @@
            model.treasureStateChangeEvent -= TreasureStateChangeEvent;
            model.treasureCollectProgressRefresh -= TreasureCollectProgressRefresh;
            WindowCenter.Instance.windowAfterOpenEvent -= WindowAfterOpenEvent;
            WindowCenter.Instance.windowAfterCloseEvent -= WindowBeforeCloseEvent;
            if (m_CacheCoroutine != null)
            {
                StopCoroutine(m_CacheCoroutine);
System/Treasure/TreasureModel.cs
@@ -144,7 +144,7 @@
        public int exitRecord { get; set; }
        public int entranceOpenCondition { get; private set; }
        public int treasureChapterId { get; private set; }
        public int treasureChapterId { get; set; }
        TaskModel taskModel { get { return ModelCenter.Instance.GetModel<TaskModel>(); } }
@@ -1065,6 +1065,7 @@
                {
                    treasureChapterId = config.id;
                    PopupWindowsProcessor.Instance.Add("TreasureChapterWin");
                    break;
                }
            }
        }