From 5330303f25db81c56f1c00874b01cfa37b980352 Mon Sep 17 00:00:00 2001
From: lcy <1459594991@qq.com>
Date: 星期三, 17 十二月 2025 19:13:10 +0800
Subject: [PATCH] 164 天子的考验-客户端 仅天子战场的跳过按钮添加保底机制:如果满足跳过条件后,点击跳过后2s没有结算界面,也结束战场
---
Main/System/Battle/BaseBattleWin.cs | 19 ++++++++++++-------
Main/System/Battle/TianziBillboradBattleWin.cs | 37 +++++++++++++++++++++++++++++++++++++
2 files changed, 49 insertions(+), 7 deletions(-)
diff --git a/Main/System/Battle/BaseBattleWin.cs b/Main/System/Battle/BaseBattleWin.cs
index c8e3f4a..7e7a8ee 100644
--- a/Main/System/Battle/BaseBattleWin.cs
+++ b/Main/System/Battle/BaseBattleWin.cs
@@ -192,13 +192,20 @@
/// </summary>
protected virtual void OnClickPass()
{
- if (null == battleField)
+ if (!IsPass())
return;
+ battleField.ForceFinish();
+ }
+
+ public bool IsPass()
+ {
+ if (null == battleField)
+ return false;
// 妫�鏌ユ槸鍚︿负姘镐箙鐗规潈鍗$帺瀹�
bool hasForeverPrivilege = InvestModel.Instance.IsInvested(InvestModel.foreverCardType);
if (!hasForeverPrivilege && !FuncOpen.Instance.IsFuncOpen(BattleManager.Instance.passFuncId, true))
- return;
+ return false;
int passRound = BattleManager.Instance.defaultPassRound;
var name = battleField.ToString();
@@ -243,18 +250,16 @@
if (passRound != 0)
{
- int nowRound = battleField.round;
+ int nowRound = battleField.round;
int realPassRound = passRound + 1; // 閰嶇疆鏄秴杩噚鍥炲悎鍙互璺�,鎰忓懗鐫�x+1鍥炲悎鍙互璺�
if (nowRound < realPassRound)
{
SysNotifyMgr.Instance.ShowTip("BattlePass", realPassRound - nowRound);
- return;
+ return false;
}
}
- battleField.ForceFinish();
+ return true;
}
-
-
/// <summary>
diff --git a/Main/System/Battle/TianziBillboradBattleWin.cs b/Main/System/Battle/TianziBillboradBattleWin.cs
index f6d63ea..9c55ef3 100644
--- a/Main/System/Battle/TianziBillboradBattleWin.cs
+++ b/Main/System/Battle/TianziBillboradBattleWin.cs
@@ -38,6 +38,7 @@
{
UIManager.Instance.CloseWindow<MainWin>();
}
+ isClickSkip = false;
}
private void OnPlayUiEffectAction()
@@ -73,6 +74,42 @@
bossBattleObject = null;
}
+ if (isClickSkip)
+ {
+ isClickSkip = false;
+ TryPass();
+ }
+ }
+
+ bool isClickSkip = false;
+ protected override void OnClickPass()
+ {
+ if (!IsPass())
+ return;
+ battleField.ForceFinish();
+ isClickSkip = true;
+ clickTime = Time.time; // 璁板綍鐐瑰嚮鏃堕棿
+ }
+
+ float stayTime = 2f;
+ float clickTime = 0f;
+ void LateUpdate()
+ {
+ if (isClickSkip && Time.time - clickTime >= stayTime)
+ {
+ isClickSkip = false;
+ TryPass();
+ }
+ }
+
+ private void TryPass()
+ {
+ if (!UIManager.Instance.IsOpened<TianziBillboradVictoryWin>())
+ {
+ CloseWindow();
+ BattleSettlementManager.Instance.WinShowOver(BattleConst.TianziBillboradBattleField);
+ TianziBillboradManager.Instance.isSweepVictory = false;
+ }
}
private void OnUpdateBarInfoEvent(ulong loaclNowHunt, ulong loaclMaxHp, int loaclHpNum)
--
Gitblit v1.8.0