using UnityEngine; using TMPro; using System; using DG.Tweening; using Unity.VisualScripting; using UnityEngine.UI; public class ClueDisplayManager : MonoBehaviour { public RectTransform punchTapeCurrentPos; private float punchTapeStartPosX; [SerializeField] private TMP_Text nameText; // 用于显示名称 [SerializeField] private TMP_Text categoryText; // 用于显示分类 void Start() { punchTapeStartPosX=punchTapeCurrentPos.rect.width/2; ResetClueDisplay(); } // 用于初始化显示内容的方法 public void InitializeClueDisplay(string clueName,string category,Action onComplete = null) { punchTapeCurrentPos.anchoredPosition=new Vector2(punchTapeStartPosX,punchTapeCurrentPos.anchoredPosition.y); nameText.text = clueName; categoryText.text=category; punchTapeCurrentPos.DOAnchorPosX(-punchTapeStartPosX,2f).SetEase(Ease.OutQuad).OnComplete(() => { // 调用回调 onComplete?.Invoke(); }); } public void ResetClueDisplay() { punchTapeCurrentPos.anchoredPosition=new Vector2(punchTapeStartPosX,punchTapeCurrentPos.anchoredPosition.y); nameText.text = null; categoryText.text=null; } }