private void BuildWalls() { m_Tiles = new MahjongTile[17 * 8]; MahjongTileTypeGenerator typeGenerator = new MahjongTileTypeGenerator(4); int i = 0; BuildHorizontalWall(ref i, 165, 110, 0, MahjongPieceDirection.Up, typeGenerator); BuildHorizontalWall(ref i, 165, 115, 1, MahjongPieceDirection.Up, typeGenerator); BuildVerticalWall(ref i, 530, 165, 0, MahjongPieceDirection.Left, typeGenerator); BuildVerticalWall(ref i, 525, 165, 1, MahjongPieceDirection.Left, typeGenerator); BuildHorizontalWall(ref i, 165, 530, 0, MahjongPieceDirection.Down, typeGenerator); BuildHorizontalWall(ref i, 165, 525, 1, MahjongPieceDirection.Down, typeGenerator); BuildVerticalWall(ref i, 110, 165, 0, MahjongPieceDirection.Right, typeGenerator); BuildVerticalWall(ref i, 115, 165, 1, MahjongPieceDirection.Right, typeGenerator); }
private void BuildVerticalWall(ref int index, int x, int y, int stackLevel, MahjongPieceDirection direction, MahjongTileTypeGenerator typeGenerator) { for (int i = 0; i < 17; i++) { Point2D position = new Point2D(x, y + i * 20); m_Tiles[index + i] = new MahjongTile(this, index + i, typeGenerator.Next(), position, stackLevel, direction, false); } index += 17; }