private async void LoadData() { Games.Clear(); var games = await GameDefinitionSource.LoadDataAsync(); foreach (var gameDefinition in games) { var gameData = storage.Get <GameData>("GameData." + gameDefinition.UniqueId) ?? new GameData(); gameData.Description = gameDefinition.Title; gameData.Rank = BinaryGame.GetRank(gameData.BestPiece); Games.Add(gameData); } }
public void Init() { Games = new ObservableCollection <GameDefinition>(); Loaded += async(sender, args) => { if (Games.Count > 0) { return; } foreach (var game in await GameDefinitionSource.LoadDataAsync()) { Games.Add(game); } }; }
private async void ResetAllScores_Click(object sender, RoutedEventArgs e) { var answer = await MessageBox.ShowAsync( "Are you sure you want to clear all scores and achievements?", "Reset Scores", MessageBoxButton.OKCancel); if (answer != MessageBoxResult.OK) { return; } var games = await GameDefinitionSource.LoadDataAsync(); foreach (var gameDefinition in games) { storage.Delete("GameData." + gameDefinition.UniqueId); } LoadData(); }
protected override async void OnNavigatedTo(NavigationEventArgs e) { base.OnNavigatedTo(e); if (bc.Game == null) { var games = await GameDefinitionSource.LoadDataAsync(); var gameDefinition = games.FirstOrDefault(g => g.UniqueId == (string)e.Parameter); if (gameDefinition == null) { return; } bc.Build(gameDefinition); bc.Game.TileMoved += GameOnTileMoved; bc.NewHighScore += GameOnNewHighScore; bc.NewAchievement += GameOnNewAchievement; bc.Game.GameWon += GameOnGameWon; bc.Game.GameOver += GameOnGameOver; } if (TotalScore == 0) { bc.LoadData(); TotalScore = bc.Game.Score; BestScore = bc.Game.GameData.BestScore; Rank = BinaryGame.GetRank(bc.Game.GameData.BestPiece); } Rank = BinaryGame.GetRank(bc.Game.GameData.BestPiece); #if GOOGLE_ANALYTICS EasyTracker.GetTracker().SendView("Main" + bc.Game.GameDefinition.UniqueId); #endif if (TotalScore == 0) { PlayGrid.AnimateAsync(new FadeInAnimation { Delay = 0.3 }); PlayButton.AnimateAsync(new BounceInUpAnimation { Delay = 0.4 }); PlayGrid.IsHitTestVisible = true; PlayButton.IsHitTestVisible = true; } else { PlayGrid.Opacity = 0; PlayGrid.IsHitTestVisible = false; PlayButton.Opacity = 0; PlayButton.IsHitTestVisible = false; } DataTransferManager.GetForCurrentView().DataRequested += DataTransferManagerOnDataRequested; Window.Current.CoreWindow.KeyUp += CoreWindow_KeyUp; Window.Current.VisibilityChanged += OnVisibilityChanged; }