审查这个生成的暂停提示组件。
只显示最新消息并持续现实时间两秒,避免重复计时器,在暂停期间保持正确,并在禁用后不留下过期协程句柄。
csharp
using System.Collections;
using TMPro;
using UnityEngine;
public sealed class PauseNotice : MonoBehaviour
{
[SerializeField] private GameObject panel;
[SerializeField] private TMP_Text label;
private bool isVisible;
public void Show(string message)
{
label.text = message;
panel.SetActive(true);
isVisible = true;
StartCoroutine(HideLater());
}
private IEnumerator HideLater()
{
yield return new WaitForSeconds(2f);
panel.SetActive(false);
isVisible = false;
}
}
生成代码仅作示例,不代表任何特定模型