/// <summary> /// Constructs a board using another as reference /// </summary> /// <param name="referenceBoard"></param> public Board(Board referenceBoard) { m_size = referenceBoard.Size; m_fullBoard = new List <GamePlayer>(); for (int i = 0; i < (referenceBoard.m_fullBoard.Count); i++) { m_fullBoard.Add(referenceBoard.m_fullBoard[i]); } players = referenceBoard.players; currentPlayer = referenceBoard.currentPlayer; m_maxWidth = referenceBoard.m_maxWidth; m_winningCheck = referenceBoard.m_winningCheck; }
private int m_maxWidth; // max lined up symbols to win if winning condition check set to MaxWidth /// <summary> /// Constructs a board object /// </summary> /// <param name="size"></param> /// <param name="_players"></param> /// <param name="_winningCheck"></param> /// <param name="_maxWidth"></param> public Board(int size, List <GamePlayer> _players, WinningCheck _winningCheck, int _maxWidth) { // create board m_size = size; m_fullBoard = new List <GamePlayer>(); for (int i = 0; i < (m_size * m_size); i++) { m_fullBoard.Add(null); } // add players players = _players; currentPlayer = _players[0]; // set up winning check m_maxWidth = _maxWidth; m_winningCheck = _winningCheck; }