예제 #1
0
        private void Launch()
        {
            ReplayInfo replayInfo = (ReplayInfo)m_replaysListBox.SelectedItem;

            GameServer.SetReplay(m_gSettings.ClientId, replayInfo.Id, error4 =>
            {
                m_progress.IsVisible = false;
                if (GameServer.HasError(error4))
                {
                    OutputError(error4);
                    return;
                }

                GameServer.Launch(m_gSettings.ClientId, (error, serverUrl) =>
                {
                    if (GameServer.HasError(error))
                    {
                        m_progress.IsVisible = false;
                        OutputError(error);
                        return;
                    }

                    m_gSettings.MatchServerUrl = serverUrl;

                    m_navigation.ClearHistory();
                    m_navigation.Navigate("Game");
                });
            });
        }
예제 #2
0
        private void Launch()
        {
            m_progress.IsVisible = true;
            GameServer.Launch(m_gSettings.ClientId, (error, serverUrl) =>
            {
                m_progress.IsVisible = false;
                if (GameServer.HasError(error))
                {
                    if (error.Code == StatusCode.NotReady)
                    {
                        GetAndDataBind();
                    }
                    else
                    {
                        OutputError(error);
                    }
                    return;
                }

                m_gSettings.MatchServerUrl = serverUrl;

                m_navigation.ClearHistory();
                m_navigation.Navigate("Game");
            });
        }
예제 #3
0
        private void OnPlayersLoggedOff(Error error, Guid[] players)
        {
            if (m_remoteGameServer.IsConnected)
            {
                foreach (Guid player in players)
                {
                    if (m_remoteGameServer.IsLocal(m_gSettings.ClientId, player))
                    {
                        m_notification.ShowError("Player was logged off");

                        Dependencies.RemoteGameServer.CancelRequests();
                        Dependencies.LocalGameServer.CancelRequests();

                        m_navigation.ClearHistory();
                        m_navigation.Navigate("LoginMenu4Players");

                        break;
                    }
                }
            }
        }
예제 #4
0
        private void Launch()
        {
            GameServer.Launch(m_gSettings.ClientId, (error, serverUrl) =>
            {
                m_progress.IsVisible = false;
                if (GameServer.HasError(error))
                {
                    OutputError(error);
                    return;
                }

                m_gSettings.MatchServerUrl = serverUrl;

                m_navigation.ClearHistory();
                m_navigation.Navigate("Game", null, new Dictionary <string, object> {
                    { "mapeditor", null }
                });
            });
        }