예제 #1
0
 private void ListBox1_SelectedIndexChanged(object sender, EventArgs e)
 {
     if (listBox1.SelectedIndex != -1)
     {
         game = (GameProxy)listBox1.SelectedItem;
         Close();
     }
 }
예제 #2
0
        private void GameForm_Load(object sender, EventArgs e)
        {
            Login login = new Login();

            if (login.ShowDialog() == DialogResult.OK)
            {
                playerName = login.Name;
            }
            else
            {
                MessageBox.Show(this, "You have to login", "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                Application.Exit();
            }

            try
            {
                Connect();

                dynamic gameInfos = JObject.Parse(SendNameAndGetGameInfos(playerName));

                List <GameProxy> games = new List <GameProxy>();

                int gameCount = gameInfos.gamecount;
                playerID = gameInfos.playerid;

                for (int i = 0; i < gameCount; ++i)
                {
                    games.Add(new GameProxy(gameInfos["game_" + i].ToString()));
                }

                GameSelect gameSelect = new GameSelect(games);

                gameSelect.ShowDialog();

                GameProxy selectedGame = gameSelect.Game;

                game = new Game(selectedGame, playerName, playerID);

                String gameInfo = SendSelectedGameAndGetGameInfo(game.ID);

                game.Update(gameInfo);

                socketThread          = new Thread(new ThreadStart(SocketThread));
                socketThread.Priority = ThreadPriority.AboveNormal;
                socketThread.Start();

                timer1.Start();

                Show();

                MessageBox.Show("It started!");
            }
            catch (SocketException ex)
            {
                MessageBox.Show(this, ex.Message, "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                Application.Exit();
            }
        }