43 lines
1.3 KiB
C#
43 lines
1.3 KiB
C#
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;
|
|
}
|
|
}
|