少年修仙传客户端代码仓库
client_linchunjie
2019-04-25 f2bc47e44fcf6127385266cce5d1953e3ca13fc2
3335 法宝章节界面
2个文件已修改
44 ■■■■ 已修改文件
System/Treasure/HumanTreasureTaskCell.cs 19 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/HumanTreasureWin.cs 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/HumanTreasureTaskCell.cs
@@ -9,6 +9,7 @@
{
    public class HumanTreasureTaskCell : CellView
    {
        [SerializeField] UIEffect m_EffectAppear;
        [SerializeField] UIAlphaTween m_AlphaTween;
        [SerializeField] Text m_ClueName;
        [SerializeField] Transform m_ContainerCollected;
@@ -26,7 +27,12 @@
            m_Goto.AddListener(Goto);
        }
        public void Display(int clue, bool animationStep = false)
        private void OnDisable()
        {
            StopAllCoroutines();
        }
        public void Display(int clue, bool animationStep, float displayTime)
        {
            var config = TreasureConfig.Get(model.selectedTreasure);
            Dictionary<int, List<int>> clues;
@@ -79,17 +85,24 @@
            m_ContainerCutline.gameObject.SetActive(lastClue != clue);
            if (!animationStep)
            if (!animationStep || !gameObject.activeInHierarchy)
            {
                m_AlphaTween.SetEndState();
            }
            else
            {
                m_AlphaTween.SetStartState();
                m_AlphaTween.Play();
                StartCoroutine(Co_Display(displayTime));
            }
        }
        IEnumerator Co_Display(float time)
        {
            yield return WaitingForSecondConst.GetWaitForSeconds(time);
            m_EffectAppear.Play();
            m_AlphaTween.Play();
        }
        private void Goto()
        {
            WindowJumpMgr.Instance.ClearJumpData();
System/Treasure/HumanTreasureWin.cs
@@ -30,6 +30,7 @@
        [SerializeField] Text m_ChallengeCondition;
        [SerializeField] Slider m_TaskSlider;
        [SerializeField] Text m_TaskProgress;
        [SerializeField] UIEffect m_EffectInduction;
        [SerializeField] Transform m_ContainerSkillDetial;
        [SerializeField] Image m_SkillDetailIcon;
@@ -42,6 +43,8 @@
        [SerializeField] ScrollerController m_TaskController;
        bool animationStep = false;
        float displayTime = 0f;
        List<int> animationClues = new List<int>();
@@ -166,6 +169,8 @@
            animationClues.Clear();
            displayTime = 0f;
            m_TaskController.Refresh();
            Dictionary<int, List<int>> clues;
            if (model.TryGetTreasureClues(model.selectedTreasure, out clues))
@@ -209,6 +214,18 @@
            }
            m_TaskController.Restart();
            animationClues.Clear();
            if (taskAnimation)
            {
                Clock.AlarmAfter(Mathf.CeilToInt(displayTime + 0.6f), () =>
                {
                    m_TaskController.mScrollRect.enabled = true;
                });
            }
            else
            {
                m_TaskController.mScrollRect.enabled = true;
            }
        }
        void DisplayAnimation()
@@ -268,13 +285,15 @@
            {
                var count = m_TaskController.GetNumberOfCells(m_TaskController.m_Scorller);
                m_TaskController.JumpIndex(count - 1);
                m_EffectInduction.Play();
                m_TaskController.mScrollRect.enabled = false;
                StartCoroutine(Co_DelayShowTask());
            }
        }
        IEnumerator Co_DelayShowTask()
        {
            yield return WaitingForSecondConst.WaitMS1000;
            yield return WaitingForSecondConst.WaitMS3000;
            DisplayTasks(true);
        }
@@ -315,12 +334,14 @@
            if (type == ScrollerDataType.Header)
            {
                var taskCell = cell as HumanTreasureTaskCell;
                taskCell.transform.SetParent(m_TaskController.m_Scorller.LayoutGroup.transform);
                var animation = false;
                if (animationClues.Contains(cell.index))
                {
                    animation = true;
                    displayTime += 0.6f;
                }
                taskCell.Display(cell.index, animation);
                taskCell.Display(cell.index, animation, displayTime);
            }
        }