少年修仙传客户端代码仓库
client_linchunjie
2018-09-20 0bf7d26bfb96a6fcb812fb51fc4030edc3e27de3
3684【前端】被动技能任务点击弹窗
4个文件已修改
88 ■■■■ 已修改文件
System/MainInterfacePanel/SkillTaskWin.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainInterfacePanel/TaskAllocation.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Skill/SkillModel.cs 17 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Skill/SkillPassWin.cs 65 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainInterfacePanel/SkillTaskWin.cs
@@ -78,7 +78,7 @@
            if (mainModel.TaskId_Skill.Contains(mainModel.TaskSkillID))
            {
                int Index = mainModel.TaskId_Skill.IndexOf(mainModel.TaskSkillID);
                mainModel.Skill_Index = mainModel.SkillIndex[Index];
                mainModel.Skill_Index = mainModel.SkillIndex[Index] + 1;
            }
            WindowJumpMgr.Instance.WindowJumpTo(JumpUIType.SkillFunc2);
        }
System/MainInterfacePanel/TaskAllocation.cs
@@ -133,6 +133,10 @@
                        if (Gold >= NeedMoney)
                        {
                            taskmodel.CompletionOfTask(TaskID);
                            if (WindowCenter.Instance.CheckOpen<SkillPanel>())
                            {
                                return;
                            }
                            WindowJumpMgr.Instance.WindowJumpTo(JumpUIType.SkillFunc2);
                        }
                        else
System/Skill/SkillModel.cs
@@ -49,7 +49,6 @@
        public bool jumpToPass { get; set; }
        public int minTaskHole { get; private set; }
        public int maxTaskHole { get; private set; }
        public int immediatelyUnlockTask { get; private set; }
        void ParseConfig()
        {
            for (int i = 1; i <= 3; i++)
@@ -86,8 +85,6 @@
                passEquipCnt = int.Parse(funcCfg.Numerical2);
                taskHoleDict = ConfigParse.GetDic<int, int>(funcCfg.Numerical4);
            }
            funcCfg = Config.Instance.Get<FuncConfigConfig>("PassiveSkillTask");
            immediatelyUnlockTask = 0;//int.Parse(funcCfg.Numerical2);
            funcCfg = Config.Instance.Get<FuncConfigConfig>("PassSkillEquipGetWay");
            if (funcCfg != null)
            {
@@ -366,7 +363,7 @@
        }
        PlayerTaskDatas task { get { return ModelCenter.Instance.GetModel<PlayerTaskDatas>(); } }
        PlayerMainDate mainData { get { return ModelCenter.Instance.GetModel<PlayerMainDate>(); } }
        public void SendEquipPassSkill(int _page, int _index, int _skillId)
        {
            var pak = new CB407_tagCMPassiveSet();
@@ -662,7 +659,7 @@
            foreach (var hole in taskHoleDict.Keys)
            {
                var taskId = taskHoleDict[hole];
                if (taskId == immediatelyUnlockTask)
                if (IsImmediatelyUnlock(hole))
                {
                    var config = Config.Instance.Get<PyTaskConfig>(taskId);
                    if (PlayerDatas.Instance.baseData.LV >= config.lv
@@ -675,6 +672,16 @@
            }
        }
        public bool IsImmediatelyUnlock(int hole)
        {
            if (taskHoleDict.ContainsKey(hole))
            {
                var taskId = taskHoleDict[hole];
                return mainData.TaskId_Skill.Contains(taskId);
            }
            return false;
        }
        public void SetTaskHoleRemind()
        {
            DayRemind.Instance.SetDayRemind(DayRemind.TASK_SKILL_HOLE, true);
System/Skill/SkillPassWin.cs
@@ -39,6 +39,7 @@
        [SerializeField, Header("特效时长")] float m_EffectDuration = 1f;
        private List<SkillConfig> skillListPass = new List<SkillConfig>();
        private int presentSltEquipIndex = -1;
        Coroutine cacheCoroutine = null;
        SkillModel m_Model;
        SkillModel model
@@ -143,7 +144,15 @@
            base.OnActived();
            UpdatePageBtn();
            if (model.taskHoleRedpoint.state == RedPointState.Simple)
            if (taskMain.Skill_Index != 0)
            {
                var hole = taskMain.Skill_Index - 1;
                if (!model.IsPassSkillHoleOpen(hole))
                {
                    OnClickEquipHole(hole, false);
                }
            }
            else if (model.taskHoleRedpoint.state == RedPointState.Simple)
            {
                model.SetTaskHoleRemind();
                for (int i = 0; i < equipPassSkills.Count; i++)
@@ -151,8 +160,7 @@
                    PassSkillLimit limit;
                    if (model.TryGetPassSkillLimit(i, out limit))
                    {
                        if (limit.OpenSkillSlots > 0
                            && model.taskHoleDict[limit.OpenSkillSlots] == model.immediatelyUnlockTask)
                        if (limit.OpenSkillSlots > 0 && model.IsImmediatelyUnlock(i))
                        {
                            OnClickEquipHole(i, false);
                            return;
@@ -178,6 +186,7 @@
            model.taskUnlockUpdate -= TaskUnlockUpdate;
            model.SetDayRemind();
            model.UnlockPassHole = 0;
            taskMain.Skill_Index = 0;
        }
        protected override void OnAfterClose()
@@ -290,7 +299,7 @@
                        var taskId = model.taskHoleDict[_limit.OpenSkillSlots];
                        var config = Config.Instance.Get<PyTaskConfig>(taskId);
                        if (PlayerDatas.Instance.baseData.LV >= config.lv
                            && taskId == model.immediatelyUnlockTask)
                            && model.IsImmediatelyUnlock(_index))
                        {
                            return 2;
                        }
@@ -462,7 +471,7 @@
                                UIHelper.ReplaceNewLine(Language.Get(StringUtility.Contact("PassSkillHoleLimitTask_", limit.OpenSkillSlots)));
                            continue;
                        }
                        else if (model.taskHoleDict[limit.OpenSkillSlots] == model.immediatelyUnlockTask
                        else if (model.IsImmediatelyUnlock(i)
                            && model.IsTaskHoleUnlock(limit.OpenSkillSlots))
                        {
                            if (m_ImmediatelyUnlock.gameObject.activeSelf)
@@ -589,7 +598,7 @@
                                m_GetWayBtn.gameObject.SetActive(false);
                                return;
                            }
                            if (taskId == model.immediatelyUnlockTask)
                            if (model.IsImmediatelyUnlock(index))
                            {
                                m_ImmediatelyUnlock.gameObject.SetActive(true);
                            }
@@ -627,35 +636,11 @@
        void ImmediatelyUnlock()
        {
            //var count = pack.GetItemCountByID(PackType.rptItem, taskMain.ItemID);
            //if (count >= taskMain.ItemNumber)
            //{
            //    task.CompletionOfTask(model.immediatelyUnlockTask);
            //}
            //else
            //{
            //    var requireJade = (ulong)((taskMain.ItemNumber - count) * taskMain.UnitPrice);
            //    ConfirmCancel.ShowPopConfirm(Language.Get("Mail101"), Language.Get("PassiveSkillTask3", requireJade),
            //        (bool isOk) =>
            //    {
            //        if (isOk)
            //        {
            //            if (UIHelper.GetMoneyCnt(1) >= requireJade)
            //            {
            //                task.CompletionOfTask(model.immediatelyUnlockTask);
            //            }
            //            else
            //            {
            //                if (VersionConfig.Get().isBanShu)
            //                {
            //                    SysNotifyMgr.Instance.ShowTip("GoldErr");
            //                    return;
            //                }
            //                WindowCenter.Instance.Open<RechargeTipWin>();
            //            }
            //        }
            //    });
            //}
            if (model.taskHoleDict.ContainsKey(presentSltEquipIndex))
            {
                var taskId = model.taskHoleDict[presentSltEquipIndex];
                TaskAllocation.Instance.SkillTask(taskId);
            }
        }
        private void OnClickFunc(CellView cell)
@@ -674,17 +659,17 @@
            {
                return;
            }
            equipPassSkills[_index].skillData.m_SelectImg.gameObject.SetActive(true);
            if (equipPassSkills[_index].skillData.skillId != 0)
            {
                equipPassSkills[_index].skillData.m_SelectImg.gameObject.SetActive(true);
                model.presentSltSkillID = equipPassSkills[_index].skillData.skillId;
                flipScroll.RefreshActive();
                OnUpdateSltSkillInfo();
            }
            else
            {
                equipPassSkills[_index].skillData.m_SelectImg.gameObject.SetActive(false);
            }
            //else
            //{
            //    equipPassSkills[_index].skillData.m_SelectImg.gameObject.SetActive(false);
            //}
        }
        private int GetEquipHoleIndex(int _skillId)