public void generateSoliders(eNumberOfPlayer i_NumberOfPlayer, eSizeBoard i_BoardSize) { Soldiers.Clear(); int numberOfRows = ((int)i_BoardSize / 2) - 1; int numberOfPlayersInRow = (int)i_BoardSize / 2; char startRowForNumberOfPlayer; char representSoldier; switch (i_NumberOfPlayer) { case eNumberOfPlayer.First: { startRowForNumberOfPlayer = MovementOptions.k_StartRow; representSoldier = Soldier.k_FirstPlayerRegular; generateSolidersForPlayer(numberOfRows, numberOfPlayersInRow, startRowForNumberOfPlayer, representSoldier); break; } case eNumberOfPlayer.Second: { representSoldier = Soldier.k_SecondPlayerRegular; startRowForNumberOfPlayer = (char)(MovementOptions.k_StartRow + ((int)i_BoardSize / 2) + 1); generateSolidersForPlayer(numberOfRows, numberOfPlayersInRow, startRowForNumberOfPlayer, representSoldier); break; } } }
public Player(String i_PlayerName, eTypeOfPlayer i_TypeOfPlayer, eNumberOfPlayer i_NumberOfPlayer, eSizeBoard i_BoardSize) { m_Score = 0; PlayerName = i_PlayerName; TypeOfPlayer = i_TypeOfPlayer; NumberOfPlayer = i_NumberOfPlayer; Soldiers = new List <Soldier>(); generateSoliders(i_NumberOfPlayer, i_BoardSize); }
private void generateBoardSquaresAndSoliders(bool i_IsNeedToDrawSquare) { int sizeOfBoard = (int)CheckerboardController.Instance.SizeBoard; int indexToDrawTheSolider = 1; int startingPointX = 150; int startingPointY = 70; eNumberOfPlayer numberOfPlayer = eNumberOfPlayer.First; Point pointToDraw = new Point(startingPointX, startingPointY); Bitmap imageToLoad = Properties.Resources.WhiteSquare; imageToLoad.Tag = new TagName("White"); Image SoliderToDraw = null; bool isDrawSolider = false; for (int i = 0; i < sizeOfBoard; i++) { swapIndexToDrawTheSolider(ref indexToDrawTheSolider, i); pointToDraw.X = startingPointX; pointToDraw.Y += k_SizeOfSquareInBoard; if ((i < (sizeOfBoard / 2) - 1)) { SoliderToDraw = Properties.Resources.BlackSolider; isDrawSolider = true; } else if (i >= (sizeOfBoard / 2) + 1) { SoliderToDraw = Properties.Resources.WhiteSolider; isDrawSolider = true; numberOfPlayer = eNumberOfPlayer.Second; } for (int j = 0; j < sizeOfBoard; j++) { if (j != 0) { pointToDraw.X += k_SizeOfSquareInBoard; swapImages(ref imageToLoad); } if (i_IsNeedToDrawSquare == true) { applySquareBoardToView(imageToLoad, pointToDraw, i, j); } if (isDrawSolider) { if (j == indexToDrawTheSolider) { applySoliderToFrontOfView(SoliderToDraw, pointToDraw, i, j, numberOfPlayer); indexToDrawTheSolider += 2; } } } isDrawSolider = false; } }
private Player getPlayer(eNumberOfPlayer i_NumberOfPlayer) { Player playerToReturn; if (m_CurrentPlayer.NumberOfPlayer == i_NumberOfPlayer) { playerToReturn = m_CurrentPlayer; } else { playerToReturn = m_OtherPlayer; } return(playerToReturn); }
private void caclculateResultGame(eNumberOfPlayer i_NumberOfPlayerThatWon) { Player firstPlayer = getPlayer(eNumberOfPlayer.First); Player secondPlayer = getPlayer(eNumberOfPlayer.Second); switch (i_NumberOfPlayerThatWon) { case eNumberOfPlayer.First: { calculateAndSetPoints(firstPlayer, secondPlayer); break; } case eNumberOfPlayer.Second: { calculateAndSetPoints(secondPlayer, firstPlayer); break; } } }
public TagSolider(String i_SetName, eNumberOfPlayer i_NumberOfPlayer) : base(i_SetName) { m_NumberOfPlayer = i_NumberOfPlayer; }
private void applySoliderToFrontOfView(Image i_SoliderToDraw, Point i_PointToDraw, int i_Row, int i_Col, eNumberOfPlayer i_NumberOfPlayer) { OvalPictureBox solider = new OvalPictureBox(i_SoliderToDraw); solider.Location = new Point(i_PointToDraw.X + 2, i_PointToDraw.Y + 2); string stringToSetToTagName = String.Format("{0}{1}", (char)(MovementOptions.k_StartCol + i_Col), (char)(MovementOptions.k_StartRow + i_Row)); solider.Name = string.Format("{0}{1}", stringToSetToTagName, k_SoliderPicName); solider.Tag = new TagSolider(stringToSetToTagName, i_NumberOfPlayer); TagSolider tempTag = solider.Tag as TagSolider; if ((i_NumberOfPlayer == eNumberOfPlayer.Second && CheckerboardController.Instance.OtherPlayer.TypeOfPlayer != eTypeOfPlayer.Computer) || i_NumberOfPlayer == eNumberOfPlayer.First) { solider.MouseClick += solider_MouseClick; } solider.PictureOfSoliderStoppedToMove += solider_PictureOfSoliderStoppedToMove; this.Controls.Add(solider); solider.BringToFront(); }