lcy
昨天 9cc637d88bdce6fba8363f06da16d47a0de25b64
Main/System/Battle/StoryBossBattleWin.cs
@@ -1,4 +1,5 @@
using System.Collections.Generic;
using 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)