コード例 #1
0
    private void DrawMap()
    {
        Vector3 startPosition = GetMapStartPosition();

        GameObject mazeHolder = new GameObject("Maze Holder");

        tiles = new InstantiatedTile[currentMapPixels.GetLength(0), currentMapPixels.GetLength(1)];

        for (int i = 0; i < currentMapPixels.GetLength(0); i++)
        {
            for (int j = 0; j < currentMapPixels.GetLength(1); j++)
            {
                Vector3 tilePosition = new Vector3(startPosition.x + (i * TILE_DIMENSIONS),
                                                   0.0f,
                                                   startPosition.z + (j * TILE_DIMENSIONS));
                Color currentColor = currentMapPixels[i, j];
                Tile  tile         = GetTileByColor(currentColor);

                GameObject newTileGO = (GameObject)GameObject.Instantiate(tile.prefabs[Random.Range(0, tile.prefabs.Length)],
                                                                          tilePosition,
                                                                          Quaternion.identity);
                newTileGO.transform.parent = mazeHolder.transform;
                tiles[i, j] = new InstantiatedTile(tile.type, newTileGO);

                if (tile.type == TileType.START_POS)
                {
                    spawnPoint = new IntVector2(i, j);
                }
            }
        }
    }
コード例 #2
0
    private void DrawMap()
    {
        Vector3 startPosition = GetMapStartPosition();

        GameObject mazeHolder = new GameObject("Maze Holder");

        tiles = new InstantiatedTile[currentMapPixels.GetLength(0), currentMapPixels.GetLength(1)];

        for (int i = 0; i < currentMapPixels.GetLength(0); i++) {
            for (int j = 0; j < currentMapPixels.GetLength(1); j++) {
                Vector3 tilePosition = new Vector3(startPosition.x + (i * TILE_DIMENSIONS),
                                                   0.0f,
                                                   startPosition.z + (j * TILE_DIMENSIONS));
                Color currentColor = currentMapPixels[i, j];
                Tile tile = GetTileByColor(currentColor);

                GameObject newTileGO = (GameObject) GameObject.Instantiate(tile.prefabs[Random.Range(0, tile.prefabs.Length)],
                                                            tilePosition,
                                                            Quaternion.identity);
                newTileGO.transform.parent = mazeHolder.transform;
                tiles[i, j] = new InstantiatedTile(tile.type, newTileGO);

                if(tile.type == TileType.START_POS) {
                    spawnPoint = new IntVector2(i, j);
                }
            }
        }
    }