コード例 #1
0
ファイル: GameState.cs プロジェクト: cyberj19/DN_EX05
        public GameState(uint i_AmountOfPlayers, uint i_NumRows, uint i_NumCols)
        {
            uint diagonalSize = Math.Min(i_NumRows, i_NumCols);

            m_TotalNumOfSetFunctionCalls = 0;
            m_DiagonalState = new BoardLineState(BoardLineState.eLineType.Diagonal, i_AmountOfPlayers, diagonalSize);
            m_AntiDiagonalState = new BoardLineState(BoardLineState.eLineType.AntiDiagonal, i_AmountOfPlayers, diagonalSize);
            r_RowsState = createStateArray(BoardLineState.eLineType.Row, i_AmountOfPlayers, i_NumCols, i_NumRows);
            r_ColsState = createStateArray(BoardLineState.eLineType.Col, i_AmountOfPlayers, i_NumRows, i_NumCols);
            r_FreePoints = createBoardPointsLinkedList(i_NumRows, i_NumCols);
        }
コード例 #2
0
ファイル: GameState.cs プロジェクト: cyberj19/DN_EX05
        // Creates a line state array of same eLineType
        private BoardLineState[] createStateArray(BoardLineState.eLineType i_Type, uint i_AmountOfPlayers, uint i_LineLength, uint i_AmountOfItems)
        {
            BoardLineState[] lineStateArr = new BoardLineState[i_AmountOfItems];
            
            for (int i = 0; i < i_LineLength; i++)
            {
                lineStateArr[i] = new BoardLineState(i_Type, i_AmountOfPlayers, i_LineLength);
            }

            return lineStateArr;
        }