public void GenerateItem() { StringBuilder imageSourcePath = new StringBuilder(); string enchantedString; imageSourcePath.Append("/Images/item"); Random generateRandom = new Random(); int randomNumber = PlayerStats.RandomNumber(0, 100); if (randomNumber <= 49) { Type = "Weapon"; imageSourcePath.Append(Type); if (randomNumber <= 25) { WeaponType = "Magical"; imageSourcePath.Append("M"); } else { WeaponType = "Physical"; imageSourcePath.Append("P"); } double randomNum = generateRandom.NextDouble(); Damage = (int)Math.Ceiling(PlayerStats.PlayerLevel + randomNum * PlayerStats.PlayerLevel); } else { randomNumber = PlayerStats.RandomNumber(0, 100); if (randomNumber <= 33) { Type = "Shoes"; } else if ((randomNumber > 33) && (randomNumber < 66)) { Type = "Hat"; } else if (randomNumber >= 66) { Type = "Armor"; } WeaponType = ""; imageSourcePath.Append(Type); } randomNumber = PlayerStats.RandomNumber(0, 100); if (randomNumber < 80) { Enchanted = false; enchantedString = "Enchanted"; } else { Enchanted = true; imageSourcePath.Append("Enchanted"); enchantedString = ""; } int upperBorder = (int)Math.Ceiling(PlayerStats.PlayerLevel / 4f); randomNumber = PlayerStats.RandomNumber(1, upperBorder); GoldCost = randomNumber; int pictureNumber = PlayerStats.RandomNumber(1, PlayerStats.NumberOfItemImages[Type + WeaponType + enchantedString] + 1); imageSourcePath.Append(pictureNumber); upperBorder = (int)Math.Ceiling(PlayerStats.PlayerLevel / 2f); randomNumber = PlayerStats.RandomNumber(0, upperBorder); Intelligence = randomNumber; randomNumber = PlayerStats.RandomNumber(0, upperBorder); Strength = randomNumber; randomNumber = PlayerStats.RandomNumber(0, upperBorder); Stamina = randomNumber; randomNumber = PlayerStats.RandomNumber(0, upperBorder); CritChance = randomNumber; if (Enchanted) { Intelligence += PlayerStats.PlayerLevel; Strength += PlayerStats.PlayerLevel; Stamina += PlayerStats.PlayerLevel; CritChance += PlayerStats.PlayerLevel; } imageSourcePath.Append("Image.png"); ImageSource = imageSourcePath.ToString(); }