Esempio n. 1
0
        private void generateHexagonGrid()
        {
            Hexagon.LandfeldTyp[] randomHexagonFieldTypes = generateRandomHexagonFieldTyps();
            int[] nrChips = { 5, 2, 6, 3, 8, 10, 9, 12, 11, 4, 8, 10, 9, 4, 5, 6, 3, 11, 1 };


            // 7 Rows
            Hexagones    = new Hexagon[5][];
            Hexagones[0] = new Hexagon[3]; // Row 0, Columns 3
            Hexagones[1] = new Hexagon[4];
            Hexagones[2] = new Hexagon[5];
            Hexagones[3] = new Hexagon[4];
            Hexagones[4] = new Hexagon[3];

            int count = 0;

            for (int rowIndex = 0; rowIndex < Hexagones.GetLength(0); rowIndex++)
            {
                var points = new HexagonPoint[6];

                for (int columnIndex = 0; columnIndex < Hexagones[rowIndex].GetLength(0); columnIndex++)
                {
                    var hexPosition = new HexagonPosition(rowIndex, columnIndex);
                    for (int pointIndex = 0; pointIndex < points.Length; pointIndex++)
                    {
                        points[pointIndex] = new HexagonPoint(pointIndex);
                    }

                    Hexagones[rowIndex][columnIndex] = new Hexagon(hexPosition, randomHexagonFieldTypes[count], nrChips[count], points.ToList());
                    count++;
                }
            }
        }