Files
aibis-dream/Assets/Scripts/Clue/PunchTape.cs
T
2025-05-19 22:20:03 +08:00

44 lines
1.2 KiB
C#

using System;
using UnityEngine;
[Serializable]
public class PunchTape : Clue
{
public string MemoryIndex { get; set; }
public bool used = false;
// 构造函数,初始化特有属性并传递给基类
public PunchTape(string category, string name, string memoryIndex)
: base(category, name)
{
MemoryIndex = memoryIndex;
ClueType = ClueType.PunchTape;
}
// 重写 Display 方法,实现 PunchTape 的展示逻辑
public override void Display(ClueItem clueItem)
{
if (clueItem == null)
{
Debug.LogWarning("ClueItem is null. Display aborted.");
return;
}
if (clueItem.clueImageUI != null && used)
{
clueItem.clueImageUI.color = Color.grey;
}
if (clueItem.stateText != null && used)
{
clueItem.gameObject.SetActive(true);
}
if (clueItem.categoryText != null) clueItem.categoryText.text = "分类:" + Category;
if (clueItem.nameText != null)
{
clueItem.nameText.StringReference.Arguments = new object[] { LocaleClueName };
clueItem.nameText.RefreshString();
}
}
}