private void SaveGame(object sender, RoutedEventArgs args) { List <Placement> allPlacements = PlacedObjects; int newCount = PlacedObjects.Count - InitialPlacerCount; PlacedObjects = PlacedObjects.GetRange(InitialPlacerCount, newCount); int gameId; try { _manager.SaveGame(this, LoadedMapId, out gameId); } catch (Exception e) { PlacedObjects = allPlacements; Console.WriteLine(e); return; } ChangeDisplayMode(true); GameScroll.Content = Grids["GameMap"]; PlacedObjects = allPlacements; Simulate(null, null); _simulator.ScoreToDatabase(gameId); }