少年修仙传客户端代码仓库
client_Hale
2018-09-25 ec901bfd42ee3f46f5b5269e2a838da1ef111455
System/MainInterfacePanel/SideMission.cs
@@ -9,9 +9,11 @@
using TableConfig;
using System.Collections.Generic;
//任务面板的支线任务
namespace Snxxz.UI {
namespace Snxxz.UI
{
    public class SideMission:MonoBehaviour {
    public class SideMission : MonoBehaviour
    {
        [SerializeField] ScrollerController _TaskRamusList;
        //右侧面板
        [SerializeField] Text _Text_TaskName;//任务名
@@ -21,43 +23,65 @@
        [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;
        ItemTipsModel itemTipsModel { get { return _itemTipsModel ?? (_itemTipsModel = ModelCenter.Instance.GetModel<ItemTipsModel>()); } }
        PlayerPackModel _playerPack;
        PlayerPackModel playerPack { get { return _playerPack ?? (_playerPack = ModelCenter.Instance.GetModel<PlayerPackModel>()); } }
        PlayerMainDate m_MainModel;
        PlayerMainDate mainModel { get { return m_MainModel ?? (m_MainModel = ModelCenter.Instance.GetModel<PlayerMainDate>()); } }
        private List<RewardAnalysis.RewardInfo> rewardList = new List<RewardAnalysis.RewardInfo>();
        private int TaskIdNow = 0;
        private void Awake()
        {
        }
        private void Start()
        {
            _Btn_Forward.onClick.AddListener(ForwardButton);
            m_FinishAtOnce.AddListener(OnClickSkillTask);
        }
        private void OnEnable()
        {
            TaskIdNow = 0;
            _TaskRamusList.OnRefreshCell += OnRefreshGridCell;
            PlayerDatas.Instance.PlayerDataRefreshInfoEvent += Updatefighting;//数据的刷新(h0418)
            OnCreateGridLineCell(_TaskRamusList);
        }
        private void OnDisable()
        {
            _TaskRamusList.OnRefreshCell -= OnRefreshGridCell;
            PlayerDatas.Instance.PlayerDataRefreshInfoEvent -= Updatefighting;//数据的刷新(h0418)
        }
        private void Updatefighting(PlayerDataRefresh obj)
        {
        }
        private void OnClickSkillTask()
        {
            TaskAllocation.Instance.SkillTask(TaskIdNow);
        }
        private void ForwardButton()
        {
            if ((int)taskmodel.GetTaskStatus(TaskIdNow) == 3)
            {
                taskmodel.CompletionOfTask(TaskIdNow);
                if (mainModel.TaskId_Skill.Contains(TaskIdNow))
                {
                    WindowJumpMgr.Instance.WindowJumpTo(JumpUIType.SkillFunc2);
                }
            }
            else
            {
                _Text_TaskTarget.ExcuteHref();
            }
            WindowCenter.Instance.CloseImmediately<TaskWin>();
            WindowCenter.Instance.Open<MainInterfaceWin>();
        }
@@ -92,17 +116,17 @@
                var taskname = taskmodel.SideQuestsDic[TaskId].Name;
                if (Config.Instance.Get<TASKINFOConfig>(taskname) == null)
                {
                    DebugEx.LogError("TASKINFO任务表格没有获取到该任务名称"+ taskname);
                    DebugEx.LogError("TASKINFO任务表格没有获取到该任务名称" + taskname);
                    return;
                }
                sideMissionTitleBtton.TitleName.text= Config.Instance.Get<TASKINFOConfig>(taskname).show_writing;//任务名
                sideMissionTitleBtton.TitleName.text = Config.Instance.Get<TASKINFOConfig>(taskname).show_writing;//任务名
                if (!taskmodel.SideQuestsDic.ContainsKey(TaskId))
                {
                    return;
                }
                sideMissionTitleBtton.Text_RamusState.text = GegionalTaskStatus(taskmodel.SideQuestsDic[TaskId].MissionState);
                sideMissionTitleBtton.SideMissionTitleBtton1.RemoveAllListeners();
                sideMissionTitleBtton.SideMissionTitleBtton1.AddListener(()=>
                sideMissionTitleBtton.SideMissionTitleBtton1.AddListener(() =>
                {
                    if (TaskId != TaskIdNow)
                    {
@@ -122,24 +146,26 @@
            _Text_TaskName.text = Config.Instance.Get<TASKINFOConfig>(taskmodel.SideQuestsDic[taskID].Name).show_writing;//任务名
            _Text_TaskDescribe.text = Config.Instance.Get<TASKINFOConfig>(taskmodel.SideQuestsDic[taskID].Desclist).show_writing;//任务描述
            string strINfor = taskmodel.SideQuestsDic[taskID].InforList;
            string str = Config.Instance.Get<TASKINFOConfig>(strINfor).show_writing;
            string str = string.Empty;
            str = Config.Instance.Get<TASKINFOConfig>(strINfor).show_writing;
            str = WordAnalysis.Color_Start_Regex.Replace(str, string.Empty);
            str = WordAnalysis.Color_End_Regex.Replace(str, string.Empty);
            _Text_TaskTarget.text = str;//任务目标
            if ((int)taskmodel.GetTaskStatus(TaskIdNow) == 3)
            SkillTask(taskID);
            if ((int)taskmodel.GetTaskStatus(TaskIdNow) == 3)//能够进行立即完成的支线任务
            {
                _Text_Forward.text = string.Format(Language.Get("FinishAtOnce_Z")) ;
                _Text_Forward.text = string.Format(Language.Get("FinishAtOnce_Z"));
            }
            else
            {
                _Text_Forward.text = TaskStatus(taskmodel.SideQuestsDic[taskID].MissionState);
            }
            if (taskmodel._DicTaskInformation.ContainsKey(taskID))
            {
                _Text_TaskTarget.SetReplaceInfo(taskmodel._DicTaskInformation[taskID]);
            }
            if (taskmodel.SideQuestsDic[taskID].RewardList == null)
            {
                if (_Grid.childCount != 0)
@@ -215,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);
        }
    }
}