using UnityEngine;
namespace BaseGames.Equipment
{
///
/// 护符目录 SO。
/// 全局唯一资产(Assets/Data/Equipment/CharmCatalog.asset),
/// 通过 charmId 查找 CharmSO 引用。
/// 由 EquipmentManager 在 AddToCollection / OnLoad 时查询。
///
[CreateAssetMenu(menuName = "BaseGames/Equipment/CharmCatalog")]
public class CharmCatalogSO : ScriptableObject
{
[SerializeField] private CharmSO[] _charms;
/// 按 charmId 查找护符,找不到返回 null。
public CharmSO Find(string charmId)
{
if (_charms == null || string.IsNullOrEmpty(charmId)) return null;
foreach (var charm in _charms)
if (charm != null && charm.charmId == charmId) return charm;
return null;
}
}
}