少年修仙传客户端代码仓库
client_Zxw
2018-09-20 8c7298c86e87452dcc56886dae3984c9ebde5cbd
3654 【前端】被动技能任务点击弹窗
2个文件已修改
62 ■■■■■ 已修改文件
System/MainInterfacePanel/SideMission.cs 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainInterfacePanel/TaskAllocation.cs 43 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainInterfacePanel/SideMission.cs
@@ -23,6 +23,7 @@
        [SerializeField] Button _Btn_Forward;//支线前往按钮
        [SerializeField] Text _Text_Forward;//按钮文字
        [SerializeField] Button m_FinishAtOnce;//立即完成
        PlayerTaskDatas m_TaskModel;
        PlayerTaskDatas taskmodel { get { return m_TaskModel ?? (m_TaskModel = ModelCenter.Instance.GetModel<PlayerTaskDatas>()); } }
        ItemTipsModel _itemTipsModel;
@@ -40,6 +41,7 @@
        private void Start()
        {
            _Btn_Forward.onClick.AddListener(ForwardButton);
            m_FinishAtOnce.AddListener(OnClickSkillTask);
        }
        private void OnEnable()
        {
@@ -60,6 +62,11 @@
        }
        private void OnClickSkillTask()
        {
            TaskAllocation.Instance.SkillTask(TaskIdNow);
        }
        private void ForwardButton()
        {
            if ((int)taskmodel.GetTaskStatus(TaskIdNow) == 3)
@@ -144,7 +151,7 @@
            str = WordAnalysis.Color_Start_Regex.Replace(str, string.Empty);
            str = WordAnalysis.Color_End_Regex.Replace(str, string.Empty);
            _Text_TaskTarget.text = str;//任务目标
            SkillTask(taskID);
            if ((int)taskmodel.GetTaskStatus(TaskIdNow) == 3)//能够进行立即完成的支线任务
            {
                _Text_Forward.text = string.Format(Language.Get("FinishAtOnce_Z"));
@@ -234,6 +241,16 @@
            }
            return string.Empty;
        }
        private void SkillTask(int TsakID)
        {
            if (!taskmodel.allMissionDict.ContainsKey(TsakID) || !mainModel.TaskId_Skill.Contains(TsakID))
            {
                m_FinishAtOnce.gameObject.SetActive(false);
                return;
            }
            m_FinishAtOnce.gameObject.SetActive(true);
        }
    }
}
System/MainInterfacePanel/TaskAllocation.cs
@@ -9,9 +9,11 @@
using System.Text.RegularExpressions;
using System.Collections.Generic;
//用于任务分配
namespace Snxxz.UI {
namespace Snxxz.UI
{
    public class TaskAllocation:Singleton<TaskAllocation> {
    public class TaskAllocation : Singleton<TaskAllocation>
    {
        private static StringBuilder textBuilder = new StringBuilder();
        private const string Info_Pattern = "{([a-zA-Z0-9_]+)}";
@@ -23,7 +25,7 @@
                return m_TaskModel ?? (m_TaskModel = ModelCenter.Instance.GetModel<PlayerTaskDatas>());
            }
        }
        public  string GetTaskInfo(string val, int _item)//用于0820中字典的值替换(1字符串2任务ID)
        public string GetTaskInfo(string val, int _item)//用于0820中字典的值替换(1字符串2任务ID)
        {
            textBuilder.Length = 0;
            int index = 0;
@@ -56,7 +58,7 @@
            }
        }
      public int ForRingNumber()//获取赏金环数
        public int ForRingNumber()//获取赏金环数
        {
            if (taskmodel.ReplaceDic.ContainsKey(1))
            {
@@ -114,7 +116,38 @@
            }
            return 0;
        }
        PlayerMainDate m_MainModel;
        PlayerMainDate mainModel { get { return m_MainModel ?? (m_MainModel = ModelCenter.Instance.GetModel<PlayerMainDate>()); } }
        public void SkillTask(int TaskID)//用于解锁被动技能任务
        {
            int Gold = (int)UIHelper.GetMoneyCnt(1);//仙玉
            if (mainModel.TaskId_Skill.Contains(TaskID))
            {
                int Index = mainModel.TaskId_Skill.IndexOf(TaskID);
                int NeedMoney = mainModel.NeedFairyJade[Index];
                string strNull = string.Format(Language.Get("PassiveSkillTask3"), NeedMoney);
                ConfirmCancel.ShowPopConfirm(Language.Get("Mail101"), strNull, (bool isOk) =>
                {
                    if (isOk)
                    {
                        if (Gold >= NeedMoney)
                        {
                            taskmodel.CompletionOfTask(TaskID);
                            WindowJumpMgr.Instance.WindowJumpTo(JumpUIType.SkillFunc2);
                        }
                        else
                        {
                            if (VersionConfig.Get().isBanShu)
                            {
                                SysNotifyMgr.Instance.ShowTip("GoldErr");
                                return;
                            }
                            WindowCenter.Instance.Open<RechargeTipWin>();
                        }
                    }
                });
            }
        }
    }
}