using System.Collections.Generic; using UnityEngine; namespace BaseGames.Equipment { /// /// 护符数据 SO(架构 09_ProgressionModule §3)。 /// 资产路径: Assets/ScriptableObjects/Equipment/Charms/Charm_{Name}.asset /// [CreateAssetMenu(menuName = "BaseGames/Equipment/Charm")] public class CharmSO : ScriptableObject { [Header("Identity")] public string charmId; // 全局唯一 ID,如 "Charm_QuickSlash" public string displayNameKey; // 本地化 Key [TextArea(2, 4)] public string descriptionKey; [Header("Visual")] public Sprite icon; public Color glowColor; [Header("Slot Cost")] [Range(1, 4)] public int notchCost; // 占用笔记数(1~4) [Header("Effects")] [SerializeReference] public List effects = new(); // 多态序列化 [Header("Lore")] public bool isUnique; public string unlockHint; } }