lzx 21 hodín pred
rodič
commit
6e04624923

+ 23 - 10
Assets/Scripts/GameLogic/EventManager/DialogueManager.cs

@@ -118,12 +118,29 @@ public class DialogueManager : Singleton<DialogueManager>
             case 2:
                 LogTool.Log("对话结束,进入战斗");
                 //不是一次性事件弹出boss界面
-                bool relust = false;
-                if (eventConfig.EventType != 2)
-                    relust = await dialogue.OpenBossInfoPanel(dialogueConfig.optionPara1[0]);
+                if (eventConfig.EventTriggerType !=2)
+                {
+                    bool relust = await dialogue.OpenBossInfoPanel(dialogueConfig.optionPara1[0]);
+                    if (relust)
+                    {
+                        CTask cTask = CTask.Create();
+                        dialogue.StartCombat(dialogueConfig.optionPara1[0],
+                            delegate(bool isWin)
+                            {
+                                LogTool.Log("战斗完成" + isWin);
+                                isCombatWin = isWin;
+                                cTask.SetResult();
+                            });
+                        await cTask;
+                        dialogue.ChangeComabtState(CombatController.idle);
+                    }
+                    else
+                    {
+                        onCancel?.Invoke();
+                        return;
+                    }
+                }
                 else
-                    relust = false;
-                if (relust)
                 {
                     CTask cTask = CTask.Create();
                     dialogue.StartCombat(dialogueConfig.optionPara1[0],
@@ -136,11 +153,7 @@ public class DialogueManager : Singleton<DialogueManager>
                     await cTask;
                     dialogue.ChangeComabtState(CombatController.idle);
                 }
-                else
-                {
-                    onCancel?.Invoke();
-                    return;
-                }
+
 
                 break;
             //获得奖励