using UnityEngine;
namespace BaseGames.Equipment
{
///
/// 工具目录 SO。
/// 全局唯一资产(Assets/Data/Equipment/ToolCatalog.asset),
/// 通过 toolId 查找 ToolSO 引用。
/// 由 ToolSlotManager 在 OnLoad 时查询以恢复槽位工具引用。
///
[CreateAssetMenu(menuName = "Equipment/ToolCatalog")]
public class ToolCatalogSO : ScriptableObject
{
[SerializeField] private ToolSO[] _tools;
/// 按 toolId 查找工具,找不到返回 null。
public ToolSO Find(string toolId)
{
if (_tools == null || string.IsNullOrEmpty(toolId)) return null;
foreach (var tool in _tools)
if (tool != null && tool.toolId == toolId) return tool;
return null;
}
}
}