Esempio n. 1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        internal void OnGameOver(object sender, GameOverEventArgs e)
        {
            if (e.WinningLineCoords != null)
            {
                var game = (Game)this.DataContext;

                this.winningLine = new List <GameMove>();
                foreach (var t in e.WinningLineCoords)
                {
                    this.winningLine.Add(new GameMove()
                    {
                        Row    = t.Item1,
                        Column = t.Item2,
                        Color  = game.Winner.Color
                    });
                }

                // blink the pieces
                this.blinkTimer.Start();
            }
        }
Esempio n. 2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void OnGameOver(object sender, GameOverEventArgs e)
        {
            this.game.IsRunning = false;

            switch (e.Status)
            {
            case GameStatus.Draw:
                MessageBox.Show("It's a draw");
                this.gameStatusLabel.Text = "Draw !";
                break;

            case GameStatus.WhiteWon:
                MessageBox.Show("White won !");
                this.gameStatusLabel.Text = "White won !";
                break;

            case GameStatus.BlackWon:
                MessageBox.Show("Black won !");
                this.gameStatusLabel.Text = "Black won !";
                break;
            }
        }