少年修仙传客户端代码仓库
client_linchunjie
2018-09-12 bfded9c250aca31c76a69523b667439573d1cbb5
3460【前端】【1.0.15】【主干】符印新增仙玉开启新符印孔位
2个文件已修改
40 ■■■■ 已修改文件
System/Rune/RuneModel.cs 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Rune/RuneMosaicWin.cs 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Rune/RuneModel.cs
@@ -691,10 +691,6 @@
                    }
                }
            }
            if (OnRefreshRuneHole != null)
            {
                OnRefreshRuneHole();
            }
            for (int i = 0; i < RUNE_HOLE_COUNT; i++)
            {
                if (!serverInited)
@@ -702,7 +698,7 @@
                    break;
                }
                int k = 1 << i;
                var oldOpen = (holeState & k) == k;
                var oldOpen = (oldHoleState & k) == k;
                if (!oldOpen && IsRuneHoleOpen(i))
                {
                    if (openNewHoleEvent != null)
@@ -711,6 +707,10 @@
                    }
                }
            }
            if (OnRefreshRuneHole != null)
            {
                OnRefreshRuneHole();
            }
            UpdateRedpoint();
            UpdateBreakRedpoint();
            UpdateSpecialHoleRedpoint();
System/Rune/RuneMosaicWin.cs
@@ -67,6 +67,8 @@
        }
        bool m_IsRuneLvUp = false;
        int m_SpecialHoleUnlocking = -1;
        Coroutine m_CacheCoroutine;
        #region Built-in
        protected override void BindController()
        {
@@ -102,6 +104,7 @@
            m_ContainerSpecial.gameObject.SetActive(false);
            OpenOrCloseSelect(false);
            model.sltRuneHole = -1;
            m_SpecialHoleUnlocking = -1;
            foreach (var _hole in runeHoleDatas)
            {
                _hole.SetSelect(false);
@@ -123,6 +126,14 @@
            model.OnRefreshRuneHole -= OnRuneHoleRefresh;
            model.OnRefreshRuneExp -= OnUpdateRuneHoleInfo;
            model.openNewHoleEvent -= OpenNewHoleEvent;
            m_SpecialHoleUnlocking = -1;
            if (m_CacheCoroutine != null)
            {
                StopCoroutine(m_CacheCoroutine);
                m_CacheCoroutine = null;
            }
        }
        protected override void OnAfterClose()
@@ -134,8 +145,17 @@
        {
            if (model.IsSpeicalHole(hole))
            {
                m_SpecialHoleUnlocking = hole;
                EffectMgr.Instance.PlayUIEffect(3068, 2500, runeHoleDatas[hole].Container.parent, false);
                m_CacheCoroutine = StartCoroutine(Co_RefreshHole());
            }
        }
        IEnumerator Co_RefreshHole()
        {
            yield return WaitingForSecondConst.WaitMS800;
            m_SpecialHoleUnlocking = -1;
            OnRuneHoleRefresh();
        }
        private void UnlockSpecialHole()
@@ -227,7 +247,7 @@
        void OnRuneHoleClick(int _hole)
        {
            if (model.IsRuneHoleOpen(_hole))
            if (model.IsRuneHoleOpen(_hole) && m_SpecialHoleUnlocking != _hole)
            {
                for (int i = 0; i < runeHoleDatas.Count; i++)
                {
@@ -284,6 +304,10 @@
            model.runeLevelUpRedpoint.state = RedPointState.None;
            model.runeReplaceRedpoint.state = RedPointState.None;
            if (model.sltRuneHole == -1 || !model.IsRuneHoleOpen(model.sltRuneHole))
            {
                return;
            }
            if (model.sltRuneHole == m_SpecialHoleUnlocking)
            {
                return;
            }
@@ -403,7 +427,7 @@
            for (int i = 0; i < runeHoleDatas.Count; i++)
            {
                RuneData data = model.GetHoleRune(i);
                runeHoleDatas[i].SetRuneHole(!model.IsRuneHoleOpen(i));
                runeHoleDatas[i].SetRuneHole(!model.IsRuneHoleOpen(i) || m_SpecialHoleUnlocking == i);
                if (data == null || !model.IsRuneHoleOpen(i))
                {
                    runeHoleDatas[i].Display(0, 0);