Ejemplo n.º 1
0
        internal async void StartGame()
        {
            List <string> decks = Decks.Where(c => c.IsSelected).Select(c => c.Text).ToList();

            settings.SavePreferredDecks(decks);
            var gid = await CardsAgainstHumility.Add(CardsAgainstHumility.NewId(), GameName, decks, MaxPlayers, MaxScore);

            await CardsAgainstHumility.JoinGame(gid);

            navService.Navigate(new Uri("/GamePage.xaml", UriKind.Relative));
        }
Ejemplo n.º 2
0
        private async Task CreateGame()
        {
            startBtn.Enabled = false;

            try
            {
                int maxPlayers  = 10;
                int pointsToWin = 5;
                if (!int.TryParse(maxPlayersTxt.Text, out maxPlayers))
                {
                    ShowAlert("Max Players", "Max Players must be an integer");
                    return;
                }
                if (!int.TryParse(pointsToWinTxt.Text, out pointsToWin))
                {
                    ShowAlert("Points to Win", "Points to win must be an integer");
                    return;
                }
                if ((maxPlayers >= 3) && (pointsToWin >= 5))
                {
                    var selectedDecks = decks.Where(c => c.IsSelected).Select(c => c.Text).ToList();
                    settings.SavePreferredDecks(selectedDecks);
                    var gid = await CardsAgainstHumility.Add(CardsAgainstHumility.NewId(), gameNameTxt.Text, selectedDecks, maxPlayers, pointsToWin);

                    CardsAgainstHumility.JoinGame(gid).Wait();
                    StartActivity(typeof(GameActivity));
                    Finish();
                }
                else
                {
                    if (maxPlayers < 3)
                    {
                        ShowAlert("Max Players", "Max Players must be at least 3");
                    }
                    else
                    {
                        ShowAlert("Points to Win", "Points to Win must be at least 5");
                    }
                }
            }
            catch (Exception ex)
            {
                Log.WriteLine(LogPriority.Error, "Exception when Creating a game",
                              $"Message: {ex.Message}{System.Environment.NewLine}StackTrace: {ex.StackTrace}");
                throw;
            }
            finally
            {
                startBtn.Enabled = true;
            }
        }