Beispiel #1
0
        private void Button_Click(object sender, RoutedEventArgs e)
        {
            Button _btn    = (Button)sender;
            int    _row    = (int)_btn.GetValue(Grid.RowProperty);
            int    _column = (int)_btn.GetValue(Grid.ColumnProperty);

            if (Game1.GameStarted)
            {
                if (Game1.PlayerColor == Game1.PlayerRound)
                {
                    if (!Game1.PawnSelected)
                    {
                        if (Game1.CheckAndSelectPawn(_row, _column))
                        {
                            DeleteBoard();
                            DrawBoardandPawns(Game1.Pawns, Game1.BoardColor);
                            //MessageBox.Show(string.Format("Selected column {0}, row {1}", _column, _row));
                        }
                    }
                    else
                    {
                        if (Game1.CheckAndDeselectPawn(_row, _column))
                        {
                            DeleteBoard();
                            DrawBoardandPawns(Game1.Pawns, Game1.BoardColor);
                            if (Game1.CaptureAnotherPawn)
                            {
                                Game1.CaptureAnotherPawn = false;
                                Game1.SetEnemyRound();
                            }

                            // MessageBox.Show(string.Format("Deselected column {0}, row {1} ", _column, _row));
                        }
                        if (!Game1.CaptureAnotherPawn)
                        {
                            if (Game1.CheckAndMovePawn(_row, _column))
                            {
                                DeleteBoard();
                                DrawBoardandPawns(Game1.Pawns, Game1.BoardColor);
                                // MessageBox.Show(string.Format("Moved Pawn column {0}, row {1} ", _column, _row));
                                Game1.SetEnemyRound();
                            }
                        }

                        if (Game1.CheckAndCapturePawn(_row, _column))
                        {
                            if (!Game1.CanCaptureAnotherPawn(_row, _column))
                            {
                                // MessageBox.Show(string.Format("Capture column {0}, row {1} ", _column, _row));
                                Game1.SetEnemyRound();
                            }

                            DeleteBoard();
                            DrawBoardandPawns(Game1.Pawns, Game1.BoardColor);
                        }
                    }
                    UpdateInfoBoxes();
                    //                Thread.Sleep(1);
                    SendData(Game1.ConvertRoundAndPawnsToMessage());
                    if (Game1.GameStarted)
                    {
                        WinConditionWihoutDisconnect();
                    }
                }
            }
        }