コード例 #1
0
 void DebugGen()
 {
     for (int x = 0; x < 3; x++)
     {
         for (int y = 0; y < 3; y++)
         {
             roomManager room = Instantiate(basicRoom, new Vector3(roomOffset.x * x, roomOffset.y * y), Quaternion.identity);
             room.transform.parent = transform;
             door door = Instantiate(door_N, room.door_N_Spawn.transform);
             door.transform.parent = room.transform;
             room.doors.Add(door);
             door = Instantiate(door_W, room.door_W_Spawn.transform);
             door.transform.parent = room.transform;
             room.doors.Add(door);
             door = Instantiate(door_S, room.door_S_Spawn.transform);
             door.transform.parent = room.transform;
             room.doors.Add(door);
             door = Instantiate(door_E, room.door_E_Spawn.transform);
             door.transform.parent = room.transform;
             room.doors.Add(door);
             roomLayout layout = Instantiate(layouts[Random.Range(0, layouts.Count)], room.transform);
             room.enemies = layout.enemies;
         }
     }
 }
コード例 #2
0
    void PopulateRooms(RoomNode startNode)
    {
        RoomNode bossRoom = startNode;

        foreach (var room in roomTree)
        {
            if (room.numChildren == 0)
            {
                if (room.distanceFromStart > bossRoom.distanceFromStart)
                {
                    bossRoom = room;
                }
            }
        }
        roomLayout bossroomLayout = Instantiate(bossLayout, bossRoom.position, Quaternion.identity);

        bossRoom.roomManager.enemies = bossroomLayout.enemies;
        foreach (var room in roomTree)
        {
            if (room != startNode && room != bossRoom)
            {
                roomLayout layout = Instantiate(layouts[Random.Range(0, layouts.Count)], room.roomManager.transform);
                room.roomManager.enemies = layout.enemies;
                room.roomManager.turrets = layout.turrets;
            }
        }
    }