RoomManager.RoomSetup C# (CSharp) Метод

RoomSetup() приватный Метод

private RoomSetup ( int gridX, int gridY ) : GameObject
gridX int
gridY int
Результат GameObject
    GameObject RoomSetup(int gridX, int gridY)
    {
        GameObject room = new GameObject ("Room");
        Transform roomHolder = room.transform;

        float centerX = gridX * this.columns;
        float centerY = gridY * this.rows;

        room.transform.position = new Vector3 (centerX, centerY, room.transform.position.z);

        for (int x = 0; x < columns; x ++) {
            for(int y = 0; y < rows; y ++){

                Tile tile = tileMap[x + gridX * this.columns, y + gridY * this.rows];
                GameObject toInstantiate;
                if (tile.biome == ForestTile.BiomeNumber) {
                    toInstantiate = this.ForestTile.getGroundTile();
                } else if (tile.biome == DesertTile.BiomeNumber) {
                    toInstantiate = this.DesertTile.getGroundTile();
                } else if (tile.biome == PlainsTile.BiomeNumber) {
                    toInstantiate = this.PlainsTile.getGroundTile();
                } else if (tile.biome == MountainTile.BiomeNumber) {
                    toInstantiate = this.MountainTile.getGroundTile();
                } else if (tile.biome == SnowTile.BiomeNumber) {
                    toInstantiate = this.SnowTile.getGroundTile();
                } else {
                    toInstantiate = this.BeachTile.getGroundTile();
                }

                SetGroundTile(toInstantiate, x + gridX * 32, y + gridY * 32);
                tileMap[x, y].ground.transform.SetParent (roomHolder);
            }
        }

        return room;
    }

Usage Example

Пример #1
0
    //Sets up the outer walls and floor (background) of the game board.
    void BoardSetup(Level currentLevel)
    {
        if (currentLevel != null)
        {
            //Instantiate Board and set boardHolder to its transform.
            boardHolder = new GameObject("Board").transform;

            GameObject[] Rooms = roomManager.RoomSetup(currentLevel, boardHolder);
            foreach (GameObject room in Rooms)
            {
                room.transform.SetParent(boardHolder, false);
            }
            roomManager.transform.SetParent(boardHolder);

            // Retrieve the player and set it to the start position
            this.playerWrapper = GameObject.Find("PlayerWrapper");
            this.playerWrapper.SetActive(false);
            Debug.Log("Colocando al personaje eeeeen: " + currentLevel.playerStart);
            this.playerWrapper.transform.position = currentLevel.playerStart;
            this.playerWrapper.SetActive(true);
        }
    }