Time for action – initialize the game board
Add a constructor to the GameBoard class:
public GameBoard() { ClearBoard(); }
Add the
ClearBoard()
helper method to the GameBoard class:public void ClearBoard() { for (int x = 0; x < GameBoardWidth; x++) for (int y = 0; y < GameBoardHeight; y++) boardSquares[x, y] = new GamePiece("Empty"); }
What just happened?
When a new instance of the GameBoard
class is created, the constructor calls the ClearBoard()
helper method, which simply creates 80 empty game pieces and assigns them to each element in the array.
Tip
Helper methods
Why not simply put the two for loops that clear the board into the GameBoard
constructor? Splitting the work into methods that accomplish a single purpose greatly helps to keep your code both readable and maintainable. Additionally, by splitting ClearBoard()
out as its own method we can call it separately from the constructor. When we add increasing difficulty levels in Chapter...