public static Player CreateFromDataBase() { try { using (SqlConnection connection = new SqlConnection(_connectionString)) { connection.Open(); Player player; using (SqlCommand savedGameCommand = connection.CreateCommand()) { savedGameCommand.CommandType = CommandType.Text; savedGameCommand.CommandText = "SELECT TOP 1 * FROM SavedGame"; SqlDataReader reader = savedGameCommand.ExecuteReader(); if (!reader.HasRows) { return(null); } reader.Read(); int HP = (int)reader["HP"]; int MaxHP = (int)reader["MaxHP"]; int gold = (int)reader["Gold"]; int EXP = (int)reader["EXP"]; int CurrentLocationID = (int)reader["CurrentLocationID"]; player = Player.CreatePlayerfromDatabase(HP, MaxHP, gold, EXP, CurrentLocationID); } using (SqlCommand questCommand = connection.CreateCommand()) { questCommand.CommandType = CommandType.Text; questCommand.CommandText = "SELECT * FROM Quest"; SqlDataReader reader = questCommand.ExecuteReader(); if (reader.HasRows) { while (reader.Read()) { int questID = (int)reader["QuestID"]; bool isCompleted = (bool)reader["IsCompleted"]; PlayerQuest playerQuest = new PlayerQuest(World.QuestByID(questID)); playerQuest.IsCompleted = isCompleted; player.Quest.Add(playerQuest); } } } using (SqlCommand inventoryCommand = connection.CreateCommand()) { inventoryCommand.CommandType = CommandType.Text; inventoryCommand.CommandText = "SELECT * FROM Inventory"; SqlDataReader reader = inventoryCommand.ExecuteReader(); if (reader.HasRows) { while (reader.Read()) { int inventoryItemID = (int)reader["InventoryItemID"]; int quantity = (int)reader["Quantity"]; player.additemtoinventor(World.ItemByID(inventoryItemID), quantity); } } } return(player); } } #pragma warning disable CS0168 // Variable is declared but never used catch (Exception ex) #pragma warning restore CS0168 // Variable is declared but never used { } return(null); }