/// <summary>Loads almost everything from the database.</summary> internal static void LoadAll() { AllClasses = JSONInteraction.LoadClasses().OrderBy(o => o.Name).ToList(); AllHeadArmor = JSONInteraction.LoadArmor <Item>("head").OrderBy(o => o.Value).ToList(); AllBodyArmor = JSONInteraction.LoadArmor <Item>("body").OrderBy(o => o.Value).ToList(); AllHandArmor = JSONInteraction.LoadArmor <Item>("hand").OrderBy(o => o.Value).ToList(); AllLegArmor = JSONInteraction.LoadArmor <Item>("leg").OrderBy(o => o.Value).ToList(); AllFeetArmor = JSONInteraction.LoadArmor <Item>("feet").OrderBy(o => o.Value).ToList(); AllRings = JSONInteraction.LoadRings().OrderBy(o => o.Value).ToList(); AllWeapons = JSONInteraction.LoadWeapons().OrderBy(o => o.Type).ThenBy(o => o.Value).ToList(); AllDrinks = JSONInteraction.LoadDrinks().OrderBy(o => o.Value).ToList(); AllFood = JSONInteraction.LoadFood().OrderBy(o => o.Value).ToList(); AllPotions = JSONInteraction.LoadPotions().OrderBy(o => o.Cures).ThenBy(o => o.RestoreHealth).ThenBy(o => o.RestoreMagic).ToList(); AllSpells = JSONInteraction.LoadSpells().OrderBy(o => o.Value).ToList(); AllEnemies = JSONInteraction.LoadEnemies().OrderBy(o => o.Name).ToList(); //foreach (Enemy enemy in AllEnemies) //{ // if (enemy.Equipment.Weapon != new Item()) // enemy.Equipment.Weapon = AllWeapons.Find(itm => itm.Name == enemy.Equipment.Weapon.Name); // if (enemy.Equipment.Head != new Item()) // enemy.Equipment.Head = AllHeadArmor.Find(itm => itm.Name == enemy.Equipment.Head.Name); // if (enemy.Equipment.Body != new Item()) // enemy.Equipment.Body = AllBodyArmor.Find(itm => itm.Name == enemy.Equipment.Body.Name); // if (enemy.Equipment.Hands != new Item()) // enemy.Equipment.Hands = AllHandArmor.Find(itm => itm.Name == enemy.Equipment.Hands.Name); // if (enemy.Equipment.Legs != new Item()) // enemy.Equipment.Legs = AllLegArmor.Find(itm => itm.Name == enemy.Equipment.Legs.Name); // if (enemy.Equipment.Feet != new Item()) // enemy.Equipment.Feet = AllFeetArmor.Find(itm => itm.Name == enemy.Equipment.Feet.Name); // if (enemy.Equipment.LeftRing != new Item()) // enemy.Equipment.LeftRing = AllRings.Find(itm => itm.Name == enemy.Equipment.LeftRing.Name); // if (enemy.Equipment.RightRing != new Item()) // enemy.Equipment.RightRing = AllRings.Find(itm => itm.Name == enemy.Equipment.RightRing.Name); //} //JSONInteraction.WriteAll(AllClasses, AllHeadArmor, AllBodyArmor, AllHandArmor, AllLegArmor, AllFeetArmor, AllRings, AllWeapons, AllDrinks, AllFood, AllPotions, AllSpells, AllEnemies); // TODO Save scene history on application exit and load back when the same player logs in. AllItems.AddRanges(AllHeadArmor, AllBodyArmor, AllHandArmor, AllLegArmor, AllFeetArmor, AllRings, AllFood, AllDrinks, AllPotions, AllWeapons); DefaultWeapon = AllWeapons.Find(weapon => weapon.Name == "Fists"); DefaultHead = AllHeadArmor.Find(armor => armor.Name == "Cloth Helmet"); DefaultBody = AllBodyArmor.Find(armor => armor.Name == "Cloth Shirt"); DefaultHands = AllHandArmor.Find(armor => armor.Name == "Cloth Gloves"); DefaultLegs = AllLegArmor.Find(armor => armor.Name == "Cloth Pants"); DefaultFeet = AllFeetArmor.Find(armor => armor.Name == "Cloth Shoes"); AllHeroes = JSONInteraction.LoadHeroes().OrderBy(o => o.Name).ToList(); }