From f31a204c7332999f22efd9d6c24d73dc0a5f3fe1 Mon Sep 17 00:00:00 2001
From: client_linchunjie <461730578@qq.com>
Date: 星期二, 26 三月 2019 11:38:52 +0800
Subject: [PATCH] 6394 【前端】【2.0】剧情任务对话支持同一NPC不同任务状态的多段对话

---
 System/MainInterfacePanel/TaskModel.cs |   33 ++++++++++++++++-----------------
 1 files changed, 16 insertions(+), 17 deletions(-)

diff --git a/System/MainInterfacePanel/TaskModel.cs b/System/MainInterfacePanel/TaskModel.cs
index 72ba6d1..55505f2 100644
--- a/System/MainInterfacePanel/TaskModel.cs
+++ b/System/MainInterfacePanel/TaskModel.cs
@@ -353,25 +353,24 @@
         {
             return;
         }
-        var config = StoryMissionsConfig.Get(taskID);
+
+        var state = GetQuestState(taskID);
+        var config = StoryMissionsConfig.GetConfig(taskID, state);
         bool IsOpenMain = WindowCenter.Instance.IsOpen<MainInterfaceWin>();
-        var treasureStageUpShow = ModelCenter.Instance.GetModel<TreasureModel>().treasureStageUpShow;
         if (config != null)
-        {
-            for (int i = 0; i < config.NpcID.Length; i++)
-            {
-                if (NPCid == config.NpcID[i])
-                {
-                    if (!WindowCenter.Instance.IsOpen<DialogueDuidanceWin>() && IsOpenMain
-                        && !treasureStageUpShow && !WindowCenter.Instance.ExistAnyFullScreenOrMaskWin())
-                    {
-                        WindowCenter.Instance.Close<MainInterfaceWin>();
-                        WindowCenter.Instance.Open<DialogueDuidanceWin>();
-                    }
-                    return;
-                }
+        {
+            if (NPCid == config.NpcID)
+            {
+                if (!WindowCenter.Instance.IsOpen<DialogueDuidanceWin>() && IsOpenMain
+                     && !WindowCenter.Instance.ExistAnyFullScreenOrMaskWin())
+                {
+                    WindowCenter.Instance.Close<MainInterfaceWin>();
+                    DialogueDuidanceWin.storyMissionId = config.id;
+                    WindowCenter.Instance.Open<DialogueDuidanceWin>();
+                }
+                return;
             }
-            if (!WindowCenter.Instance.IsOpen<TaskBoxBGMWin>() && IsOpenMain && !treasureStageUpShow)
+            if (!WindowCenter.Instance.IsOpen<TaskBoxBGMWin>() && IsOpenMain)
             {
                 WindowCenter.Instance.Close<MainInterfaceWin>();
                 WindowCenter.Instance.Open<TaskBoxBGMWin>();
@@ -390,7 +389,7 @@
         }
         else
         {
-            if (!WindowCenter.Instance.IsOpen<TaskBoxBGMWin>() && IsOpenMain && !treasureStageUpShow)
+            if (!WindowCenter.Instance.IsOpen<TaskBoxBGMWin>() && IsOpenMain)
             {
                 WindowCenter.Instance.Close<MainInterfaceWin>();
                 WindowCenter.Instance.Open<TaskBoxBGMWin>();

--
Gitblit v1.8.0