From 6c29c1c6ad0c196c7ef5abf4ef447370a170f2ff Mon Sep 17 00:00:00 2001
From: ZXW <826696702@qq.com>
Date: 星期五, 10 八月 2018 11:11:44 +0800
Subject: [PATCH] 关于任务列表丢失 任务数据防护提交【1520】
---
System/MainInterfacePanel/PlayerTaskDatas.cs | 22 ++++++++++++++--------
System/MainInterfacePanel/SideMission.cs | 16 +++++++++++++++-
2 files changed, 29 insertions(+), 9 deletions(-)
diff --git a/System/MainInterfacePanel/PlayerTaskDatas.cs b/System/MainInterfacePanel/PlayerTaskDatas.cs
index e593b83..badbe13 100644
--- a/System/MainInterfacePanel/PlayerTaskDatas.cs
+++ b/System/MainInterfacePanel/PlayerTaskDatas.cs
@@ -461,7 +461,10 @@
void TaskClassification(int _taskID, int MissionState)//浠诲姟鍒嗙被(涓荤嚎浠诲姟,鏀嚎浠诲姟)
{
-
+ if (!allMissionDict.ContainsKey(_taskID))
+ {
+ return;
+ }
TaskTypenum type = (TaskTypenum)allMissionDict[_taskID].Type;
switch (type)
{
@@ -805,7 +808,7 @@
dic.Add(info.DictKey, (int)info.DictValue);
}
}
-
+
}
public void RequestGetTaskAward(string _answer)
@@ -878,13 +881,16 @@
if (allMissionDict.ContainsKey(_taskID))
{
allMissionDict.Remove(_taskID);
- _DicTaskInformation.Remove(_taskID);
+ if (_DicTaskInformation.ContainsKey(_taskID))
+ {
+ _DicTaskInformation.Remove(_taskID);
+ }
}
TaskTypeDeletion(_taskID);
if (Event_TaskToDelete != null)
+ {
Event_TaskToDelete(_taskID);
-
-
+ }
}
bool _bool = false;
string _conversationA = null;
@@ -1367,7 +1373,7 @@
public enum TaskStatus//浠诲姟鐘舵��
{
- None=-5,//娌℃湁
+ None = -5,//娌℃湁
Normal = 0,//姝e父浠诲姟锛堢豢锛�
TreasureCardLevel = 1,//娉曞疂鍗$骇锛堢孩锛�
CardLevel = 2,//绛夌骇鍗$骇锛堢孩锛�
@@ -1455,8 +1461,8 @@
{
return;
}
- if ((taskID == BOUNTYTASK && MissionState == 1 && !BountyMotionBool && TaskAllocation.Instance.ForRingAllNumber()!=10)
- || (taskID == FAIRYAUTASK && MissionState == 1 && !FairyAuBool && TaskAllocation.Instance.FairyAuAllNumber()==70))
+ if ((taskID == BOUNTYTASK && MissionState == 1 && !BountyMotionBool && TaskAllocation.Instance.ForRingAllNumber() != 10)
+ || (taskID == FAIRYAUTASK && MissionState == 1 && !FairyAuBool && TaskAllocation.Instance.FairyAuAllNumber() == 70))
{
var mapModel = ModelCenter.Instance.GetModel<MapModel>();
var point = mapModel.GetRecommendHangPoint();
diff --git a/System/MainInterfacePanel/SideMission.cs b/System/MainInterfacePanel/SideMission.cs
index 313c384..3319c96 100644
--- a/System/MainInterfacePanel/SideMission.cs
+++ b/System/MainInterfacePanel/SideMission.cs
@@ -89,7 +89,17 @@
{
sideMissionTitleBtton.PitchOnImage.SetActive(false);
}
- sideMissionTitleBtton.TitleName.text= ConfigManager.Instance.GetTemplate<TASKINFOConfig>(taskmodel.SideQuestsDic[TaskId].Name).show_writing;//浠诲姟鍚�
+ var taskname = taskmodel.SideQuestsDic[TaskId].Name;
+ if (ConfigManager.Instance.GetTemplate<TASKINFOConfig>(taskname) == null)
+ {
+ DesignDebug.LogError("TASKINFO浠诲姟琛ㄦ牸娌℃湁鑾峰彇鍒拌浠诲姟鍚嶇О"+ taskname);
+ return;
+ }
+ sideMissionTitleBtton.TitleName.text= ConfigManager.Instance.GetTemplate<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(()=>
@@ -105,6 +115,10 @@
void Information(int taskID)
{
+ if (!taskmodel.SideQuestsDic.ContainsKey(taskID))
+ {
+ return;
+ }
_Text_TaskName.text = ConfigManager.Instance.GetTemplate<TASKINFOConfig>(taskmodel.SideQuestsDic[taskID].Name).show_writing;//浠诲姟鍚�
_Text_TaskDescribe.text = ConfigManager.Instance.GetTemplate<TASKINFOConfig>(taskmodel.SideQuestsDic[taskID].Desclist).show_writing;//浠诲姟鎻忚堪
string strINfor = taskmodel.SideQuestsDic[taskID].InforList;
--
Gitblit v1.8.0