示例#1
0
        internal async Task <PlayerDescriptor> QuitMatch(MatchDescriptor match)
        {
            Endpoint             e        = Endpoint.QuitMatch(match.MatchId, Player.Secret);
            ConnectorPayloadBase payload  = new OptionPayload(Player.Name);
            PlayerDescriptor     response = await _gameServer.PostJSON <PlayerDescriptor>(e, payload);

            return(response);
        }
示例#2
0
        internal async Task <MatchDescriptor> JoinMatch(MatchDescriptor selectedMatch)
        {
            Endpoint             e       = Endpoint.JoinMatch(selectedMatch.MatchId);
            ConnectorPayloadBase payload = new OptionPayload(Player.Name);

            CurrentMatchID = selectedMatch.MatchId;
            return(await _gameServer.PostJSON <MatchDescriptor>(e, payload));
        }
示例#3
0
        internal async Task <MatchDescriptor> HostMatch(string gameName, OptionsBase options)
        {
            Endpoint             e       = Endpoint.NewGame(_gameServer.TranslateGameName(gameName), Player.Secret);
            ConnectorPayloadBase payload = new NewMatchPayload(Player.Name, options);
            MatchDescriptor      match   = await _gameServer.PostJSON <MatchDescriptor>(e, payload);

            CurrentMatchID = match.MatchId;
            return(match);
        }
示例#4
0
        private async void JoinMatch_Click(object sender, RoutedEventArgs e)
        {
            MatchDescriptor match = await _viewModel.JoinMatch();

            Window _lobbyWindow = new LobbyWindow(match)
            {
                Owner = this
            };

            _lobbyWindow.ShowDialog();
        }
示例#5
0
        private async void HostMatch_Click(object sender, RoutedEventArgs e)
        {
            if (_viewModel.ValidateOptions())
            {
                MatchDescriptor match = await _viewModel.HostMatch();

                Window _lobbyWindow = new LobbyWindow(match)
                {
                    Owner = this
                };
                _lobbyWindow.ShowDialog();
            }
            else
            {
                MessageBox.Show("Please check the game settings.", "Error");
            }
        }
示例#6
0
        internal async Task <MatchDescriptor> JoinMatch()
        {
            MatchDescriptor match = await GameLoader.Instance.JoinMatch(SelectedMatch);

            return(match);
        }
示例#7
0
        internal async Task <MatchDescriptor> HostMatch()
        {
            MatchDescriptor match = await GameLoader.Instance.HostMatch(SelectedNewGame, SelectedGame.OptionsView.GetOptions());

            return(match);
        }
示例#8
0
 protected GameViewModelBase(MatchDescriptor match)
 {
     LastState = -1;
     Match     = match;
 }