From 364bb6a6623e49eec17075074a33121b6706fb31 Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期五, 19 十二月 2025 11:12:19 +0800
Subject: [PATCH] Merge branch 'master' of http://mobile.secondworld.net.cn:10010/r/Project_SG_scripts
---
Main/System/Battle/StoryBossBattleWin.cs | 52 +++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 49 insertions(+), 3 deletions(-)
diff --git a/Main/System/Battle/StoryBossBattleWin.cs b/Main/System/Battle/StoryBossBattleWin.cs
index 6106063..ca75718 100644
--- a/Main/System/Battle/StoryBossBattleWin.cs
+++ b/Main/System/Battle/StoryBossBattleWin.cs
@@ -1,4 +1,5 @@
-锘縰sing System.Collections.Generic;
+锘縰sing System;
+using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
@@ -22,14 +23,15 @@
protected override void OnPreOpen()
{
base.OnPreOpen();
-
+ UIManager.Instance.OnOpenWindow += OnOpenWindow;
UIManager.Instance.CloseWindow<MainWin>();
+ isClickSkip = false;
}
protected override void OnPreClose()
{
base.OnPreClose();
-
+ UIManager.Instance.OnOpenWindow -= OnOpenWindow;
if (!UIManager.Instance.IsOpened<MainWin>())
UIManager.Instance.OpenWindow<MainWin>();
@@ -38,8 +40,52 @@
bossBattleObject.buffMgr.onBuffChanged -= OnBuffChanged;
bossBattleObject = null;
}
+
+ if (isClickSkip)
+ {
+ isClickSkip = false;
+ TryPass();
+ }
}
+ bool isClickSkip = false;
+ protected override void OnClickPass()
+ {
+ if (!IsPass())
+ return;
+ isClickSkip = true;
+ clickTime = Time.time; // 璁板綍鐐瑰嚮鏃堕棿
+ battleField.ForceFinish();
+ }
+
+ void OnOpenWindow(UIBase win)
+ {
+ if (win is BattleVictoryWin || win is BattleFailWin)
+ {
+ isClickSkip = false;
+ }
+ }
+
+ float stayTime = 2f;
+ float clickTime = 0f;
+ void LateUpdate()
+ {
+ if (isClickSkip && Time.time - clickTime >= stayTime)
+ {
+ isClickSkip = false;
+ TryPass();
+ }
+ }
+
+ private void TryPass()
+ {
+ if (UIManager.Instance.IsOpened<BattleVictoryWin>() ||
+ UIManager.Instance.IsOpened<BattleFailWin>())
+ return;
+ CloseWindow();
+ Debug.LogError($"OnBattleEnd 寮傚父鍏抽棴");
+ BattleSettlementManager.Instance.WinShowOver(BattleConst.StoryBossBattleField);
+ }
protected override void OnCreateBattleField(string guid, BattleField field)
{
if (field is StoryBossBattleField)
--
Gitblit v1.8.0