using System.Collections.Generic; using Sirenix.OdinInspector; namespace Game { [System.Serializable] public class EquipmentConfig { [LabelText("装备名称")] public string Name; // 装备名称 [LabelText("装备描述")] public string Description; // 装备描述 [LabelText("装备类型")] public EquipmentType Type; // 装备类型(基础装备、合成装备) [LabelText("装备的属性加成")] public List Stats; // 装备的属性加成(攻击力、生命值等) [LabelText("装备附带的技能效果")] public List Effects; // 装备附带的技能效果 } /// /// 装备类型 /// public enum EquipmentType { [LabelText("基础装备")] Base = 0, [LabelText("合成装备")] Composite // 合成装备 } /// /// 装备的属性加成 /// [System.Serializable] public class StatModifier { [LabelText("属性加成类型")] public StatType StatType; // 攻击力、生命值等 [LabelText("属性加成数值")] public float Value; // 数值 public StatModifier(StatType statType, float value) { StatType = statType; Value = value; } } /// /// 属性加成类型 /// public enum StatType { [LabelText("攻击伤害")] AttackDamage = 0, [LabelText("护甲")] Armor, [LabelText("魔法抗性")] MagicResist, [LabelText("血量")] Health, [LabelText("攻击速度")] AttackSpeed, [LabelText("法术强度")] AbilityPower } /// /// 特效 /// [System.Serializable] public class Effect { [LabelText("特效名称")] public string Name; // 特效名称 [LabelText("特效描述")] public string Description; // 特效描述 [LabelText("特效类型")] public EffectType EffectType; // 特效类型 [LabelText("特效的数值")] public float Value; // 特效的数值 public Effect(string name, string description, EffectType effectType, float value) { Name = name; Description = description; EffectType = effectType; Value = value; } } /// /// 特效类型 /// public enum EffectType { [LabelText("攻击")] OnAttack = 0, [LabelText("受伤")] OnHit, [LabelText("被动")] Passive, [LabelText("死亡")] OnDeath, [LabelText("活着")] Active } }