书写的时候出现了个错误,说访问权限不一致,要把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,
}
}
}