private void tile_Click(object sender, EventArgs e)
        {
            PictureBoxTile clickedTile = sender as PictureBoxTile;
            bool           legalMove   = false;

            if (m_SelectedSoldier != null)
            {
                Move move = new Move(m_SelectedSoldier.Coordinate, clickedTile.Coordinate);
                legalMove = r_GameEngine.TryMove(move);
                m_TrysUntilGiveHintCounter++;

                if (!legalMove)
                {
                    if (r_TrysUntilGiveHint < m_TrysUntilGiveHintCounter &&
                        r_LogicsEventsQueue.Count == 0)
                    {
                        HintBlinkAviableLocations();
                        m_TrysUntilGiveHintCounter = 0;
                    }
                }
            }
            else if (r_LogicsEventsQueue.Count == 0)
            {
                clickedTile.Blink(eBlinkColor.Red);
            }
        }
        private void initializeBoard()
        {
            int boardSize = r_GameEngine.GetBoardSize();

            for (int i = 0; i < boardSize; i++)
            {
                for (int j = 0; j < boardSize; j++)
                {
                    PictureBoxTile newPictureBoxTile = new PictureBoxTile(new Coordinate(i, j));

                    newPictureBoxTile.Click += tile_Click;
                    Controls.Add(newPictureBoxTile);
                    r_PictureBoxTilesMatrix[i, j] = newPictureBoxTile;
                }
            }
        }
        protected override void OnPaint(PaintEventArgs e)
        {
            base.OnPaint(e);
            foreach (Control control in Controls)
            {
                PictureBoxTile pictureBox = control as PictureBoxTile;

                if (pictureBox != null)
                {
                    e.Graphics.DrawImage(
                        pictureBox.Image,
                        pictureBox.Location.X,
                        pictureBox.Location.Y,
                        pictureBox.Width,
                        pictureBox.Height);
                }
            }
        }