using UnityEngine; 
 | 
using System.Collections; 
 | 
using System.Collections.Generic; 
 | 
using UnityEngine.UI; 
 | 
using DG.Tweening; 
 | 
using Cysharp.Threading.Tasks; 
 | 
  
 | 
public class NetLinkWin : UIBase 
 | 
{ 
 | 
    // 组件引用 
 | 
    [SerializeField] Transform backGround; 
 | 
    [SerializeField] Transform circle; 
 | 
  
 | 
    static float linkOverTime = 0f; 
 | 
    float timer = 0f; 
 | 
    bool actived = false; 
 | 
    // 生命周期 
 | 
    protected override void Awake() 
 | 
    { 
 | 
        base.Awake(); 
 | 
        // 初始化组件引用 
 | 
    } 
 | 
     
 | 
  
 | 
    protected override void Start() 
 | 
    { 
 | 
        base.Start(); 
 | 
        // 初始化数据 
 | 
    } 
 | 
  
 | 
    protected override void InitComponent() 
 | 
    { 
 | 
        base.InitComponent(); 
 | 
    } 
 | 
  
 | 
    // UI事件 
 | 
    protected override void OnOpen() 
 | 
    { 
 | 
        base.OnOpen(); 
 | 
        // 窗口打开时的逻辑 
 | 
        timer = 0f; 
 | 
        if (linkOverTime > 0.001f) 
 | 
        { 
 | 
            actived = false; 
 | 
            backGround.SetActive(false); 
 | 
            circle.SetActive(false); 
 | 
        } 
 | 
        else 
 | 
        { 
 | 
            actived = true; 
 | 
            backGround.SetActive(true); 
 | 
            circle.SetActive(true); 
 | 
        } 
 | 
    } 
 | 
  
 | 
    protected override void OnClose() 
 | 
    { 
 | 
        base.OnClose(); 
 | 
        // 窗口关闭时的逻辑 
 | 
    } 
 | 
  
 | 
    public override void Refresh() 
 | 
    { 
 | 
        base.Refresh(); 
 | 
        // 刷新UI显示 
 | 
    } 
 | 
  
 | 
    protected void LateUpdate() 
 | 
    { 
 | 
        timer += Time.deltaTime; 
 | 
  
 | 
        if (!actived && timer > linkOverTime) 
 | 
        { 
 | 
            backGround.SetActive(true); 
 | 
            circle.SetActive(true); 
 | 
        } 
 | 
    } 
 | 
  
 | 
    public static void Show(float _delay = 0f) 
 | 
    { 
 | 
        linkOverTime = _delay; 
 | 
  
 | 
        UIManager.Instance.OpenWindow<NetLinkWin>(); 
 | 
    } 
 | 
  
 | 
    public static void Hide() 
 | 
    { 
 | 
        UIManager.Instance.CloseWindow<NetLinkWin>(); 
 | 
    } 
 | 
} 
 |