/// <summary> /// Creates a weapon /// </summary> public Weapon(WeaponData data) : base(ItemType.Weapon) { name = data.name; // Get or load a texture texture = GameManager.GetInstance().GetTexture(data.image); if (texture == null) texture = GameManager.GetInstance().LoadTexture(data.image); damage = data.damage; bonus = data.bonus; weaponClass = data.wpnclass; }
protected static WeaponData WeaponDataFromHash(Hashtable data) { WeaponData itm = new WeaponData(); itm.name = (string)data["name"]; itm.image = (string)data["image"]; itm.level = Convert.ToInt32(data["lvl"]); itm.damage = Convert.ToInt32(data["damage"]); itm.bonus = Convert.ToInt32(data["bonus"]); itm.chance = data["chance"] != null ? Convert.ToInt32(data["chance"]) : 10; switch (((string)data["class"]).ToLower()) { case "axe": itm.wpnclass = WeaponClass.Axe; break; case "blade": itm.wpnclass = WeaponClass.Blade; break; case "blunt": itm.wpnclass = WeaponClass.Blunt; break; case "piercing": itm.wpnclass = WeaponClass.Piercing; break; default: itm.wpnclass = WeaponClass.Blade; break; } return itm; }