| | |
| | | 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;//任务名
|
| | |
| | |
|
| | | [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>();
|
| | | }
|
| | |
| | | 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)
|
| | | {
|
| | |
| | | _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)
|
| | |
| | | }
|
| | | 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);
|
| | | }
|
| | | }
|
| | | }
|
| | |
|