private void soldier_Click(object sender, EventArgs e) { PictureBoxSoldier clickedSoldier = sender as PictureBoxSoldier; if (clickedSoldier != null) { if (r_LogicsEventsQueue.Count == 0 && r_GameEngine.IsCurrentPlayerSoldier(clickedSoldier.Coordinate)) { if (m_SelectedSoldier == clickedSoldier) { m_SelectedSoldier.SetSelected(false); m_SelectedSoldier = null; } else { if (m_SelectedSoldier != null) { m_SelectedSoldier.SetSelected(false); } clickedSoldier.SetSelected(true); m_SelectedSoldier = clickedSoldier; } } else { clickedSoldier.BlinkRed(); } } }
private void restartSoldiers() { int boardSize = r_GameEngine.GetBoardSize(); for (int i = 0; i < boardSize; i++) { for (int j = 0; j < boardSize; j++) { Coordinate currentCoordinate = new Coordinate(i, j); eSymbols symbol = r_GameEngine.GetBoardSquareSymbol(currentCoordinate); r_PictureBoxSoldiersMatrix[i, j] = null; if (symbol != eSymbols.None) { PictureBoxSoldier newPictureBoxSolider = new PictureBoxSoldier(symbol, currentCoordinate); newPictureBoxSolider.Click += soldier_Click; newPictureBoxSolider.AnimationFinished += soldier_AnimationFinished; Controls.Add(newPictureBoxSolider); r_PictureBoxSoldiersMatrix[i, j] = newPictureBoxSolider; newPictureBoxSolider.BringToFront(); } } } }
private void removeSoldier(Coordinate i_Coordinate) { PictureBoxSoldier pictureboxSoldier = r_PictureBoxSoldiersMatrix[i_Coordinate.Row, i_Coordinate.Column]; pictureboxSoldier.Disapear(); r_PictureBoxSoldiersMatrix[i_Coordinate.Row, i_Coordinate.Column] = null; }
private void moveSoldier(Move i_Move) { PictureBoxSoldier pictureboxSoldier = r_PictureBoxSoldiersMatrix[i_Move.FromCoordinate.Row, i_Move.FromCoordinate.Column]; r_PictureBoxSoldiersMatrix[i_Move.ToCoordinate.Row, i_Move.ToCoordinate.Column] = pictureboxSoldier; r_PictureBoxSoldiersMatrix[i_Move.FromCoordinate.Row, i_Move.FromCoordinate.Column] = null; m_SelectedSoldier = null; pictureboxSoldier.MoveTo(i_Move.ToCoordinate); }
private void becomeKing(eSymbols i_Symbol, Coordinate i_Coordinate) { PictureBoxSoldier pictureboxSoldier = r_PictureBoxSoldiersMatrix[i_Coordinate.Row, i_Coordinate.Column]; pictureboxSoldier.BecomeKing(i_Symbol); }