书写的时候出现了个错误,说访问权限不一致,要把enum的枚举定义,变为public 类型
基类:Item
using System.Collections; using System.Collections.Generic; using UnityEngine; /// <summary> /// 物品基类 /// </summary> namespace ItemSystem { public class Item { public int iID { get; set; } public string strName { get; set; } public ItemType eItemtype { get; set; } public Quality eQuality { get; set; } public string strDescription { get; set; } public int iCapacity { get; set; } public int iBuyPrice { get; set; } public int iSellPrice { get; set; } public string strSprite { get; set; } #region 枚举 /// <summary> /// 物品类型 /// </summary> public enum ItemType { Consumable, Equipment, Weapon, Material } /// <summary> /// 品质 /// </summary> public enum Quality { Common, UnCommon, Rare, Epic, Lengendary, Artifact } #endregion #region 构造 public Item() { this.iID = -1; } public Item(int id, string name, ItemType itemType, Quality quality, string des, int capacity, int buyPrice, int sellPrice,string sprite) { this.iID = id; this.strName = name; this.eItemtype = itemType; this.eQuality = quality; this.strDescription = des; this.iCapacity = capacity; this.iBuyPrice = buyPrice; this.iSellPrice = sellPrice; this.strSprite = sprite; } } #endregion }
消耗品类
using System.Collections; using System.Collections.Generic; using UnityEngine; namespace ItemSystem { public class Comsumable : Item { public int iHp { get; set; } public int iMp { get; set; } public Comsumable( int id, string name, ItemType itemType, Quality quality, string des, int capacity, int buyPrice, int sellPrice,string sprite,int hp,int mp) :base (id,name,itemType,quality,des,capacity,buyPrice,sellPrice,sprite) { this.iHp = hp; this.iMp = mp; } } }
装备类:
using System.Collections; using System.Collections.Generic; using UnityEngine; namespace ItemSystem { public class Equipment : Item { /// <summary> /// 力量 /// </summary> public int iStrength { get; set; } /// <summary> /// 智力 /// </summary> public int iIntellect { get; set; } /// <summary> /// 敏捷 /// </summary> public int iAgility { get; set; } /// <summary> /// 体力 /// </summary> public int iStamina { get; set; } public EquipmentType enumEquipType { get; set; } public Equipment(int id, string name, ItemType itemType, Quality quality, string des, int capacity, int buyPrice, int sellPrice, string sprite,int stength,int intellect,int agility,int stamina,EquipmentType equipmentType) : base(id, name, itemType, quality, des, capacity, buyPrice, sellPrice,sprite) { this.iStrength = stength; this.iIntellect = intellect; this.iAgility = agility; this.iStamina = stamina; this.enumEquipType = equipmentType; } public enum EquipmentType { Head, Neck, Ring, Leg, Bracer, Boots, Trinket, Shoulder, Belt, OffHand } } }
材料类:
using System.Collections; using System.Collections.Generic; using UnityEngine; namespace ItemSystem { public class Material : Item { } }
武器类:
using System.Collections; using System.Collections.Generic; using UnityEngine; namespace ItemSystem { public class Weapon : Item { public int iDamage { get; set; } public WeaponType enumWeaponTpe { get; set; } public Weapon(int id, string name, ItemType itemType, Quality quality, string des, int capacity, int buyPrice, int sellPrice,string sprite,int damage,WeaponType weaponType) : base(id, name, itemType, quality, des, capacity, buyPrice, sellPrice,sprite) { this.iDamage = damage; this.enumWeaponTpe = weaponType; } public enum WeaponType { OffHand, MainHand, } } }