using System; using System.Collections.Generic; using UnityEngine; /// /// 一级道具条目(左侧道具菜单主列表,ScriptableObject 手动配置)。 /// 点击一级道具时,按 propType 读取后端已拥有道具(user.props)动态展开到第二层。 /// [Serializable] public class PropItemData { [Tooltip("道具名(克隆项上 TextMeshProUGUI 显示)")] public string name; [Tooltip("图标(克隆项上 Image 显示,可不填)")] public Sprite icon; [Tooltip("描述(备用字段)")] [TextArea] public string desc; [Tooltip("对应后端道具类型(none = 不过滤,展开显示全部已拥有道具)")] public PropEnum propType = PropEnum.none; } /// /// 左侧道具菜单配置资产(ScriptableObject),只手动配置第一层: /// Assets 右键 → Create → MyGame → 左侧道具配置 生成 .asset, /// 填好一级道具(枚举选后端道具类型)后,拖到 GameMainPanel_FishBase 的 propConfigData 字段。 /// 第二层子道具由后端道具表 gameConfig.propConfig 按类型动态展开(数量为 0 也显示),无需配置。 /// [CreateAssetMenu(fileName = "PropConfigData", menuName = "MyGame/左侧道具配置", order = 0)] public class PropConfigData : ScriptableObject { [Header("一级道具列表(顺序 = 菜单显示顺序;第二层读 gameConfig.propConfig 按类型展开)")] public List props = new List(); }