| 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>(); | 
|     } | 
| } |