public async void Tapped(Button button) { if (!_gameOver) { _selected = (EmojiItem)button.Tag; Board.SetState(_selected); if (_selected.Correct) { if (!Board.Next()) { await ShowDialogAsync("Game Over, You Won!"); _gameOver = true; } } else { await ShowDialogAsync("Incorrect, You Lost!"); _gameOver = true; } } else { await ShowDialogAsync("Game Over!"); } }
public void SetState(EmojiItem selected) { foreach (EmojiItem item in Items) { if (selected.Type == item.Type) { item.Correct = selected.Correct; item.State = item.Correct ? EmojiState.Correct : EmojiState.Incorrect; } } }
private void Shuffle(List <EmojiItem> list) { int count = list.Count; while (count > 1) { count--; int index = random.Next(count + 1); EmojiItem value = list[index]; list[index] = list[count]; list[count] = value; } }