Buenas a todos los que esten leyendo. Tengo unos problemas que me acontece en la creacion de mi primero juego "grande"

Estoy creando un juego con el sistema de mundo del juego de The Binding of Isaac, pero tengo un gran problema a la hora de la generacion del mundo

Se como crear rooms de forma aleatorias (ya preehechas) con el "choose" pero tengo 2 grandes problemas

1) Guardar las salas que se han creado para que cuando vuelva a una anterior, no me toque otra random
2) Crear un limite de salas por "piso" (ejemplo, en el primer piso hayan 5 salas, segundo 9 y etc)
3) Pasar entre salas y aparecer de forma correcta, si entro por una puerta a la derecha, empezar la siguiente room desde el lado izquierdo pero si por la generacion aleatoria la misma sala pasa a la izquierda, comenza la room por la derecha

Perdonen si no me explico bien, espero y logren entender con lo que digo

El mapa generado de forma aleatoria se pude guardar en un array 2D o en una ds_grid.
En cada celda del array puedes guardar otro array, ds_list o ds_map que contenga el id de la room que se va a utilizar y otra información como objetos, enemigos de la room, posición de las puertas, etc.

Este es el método que he usado para entrar por el lado correcto de rooms conectadas:
Utilizo objetos "puerta". Cuando el personaje colisiona con la puerta se asignan 4 variables globales: el id de la siguiente room, la posición Y en la que va a aparecer, la posición X y la dirección a la que debe mirar. Cuando el personaje sale de la room, se carga la room indicada en la variable global y en el evento Create el personaje se mueve a la posición indicada por las otras variables globales.

Una pregunta, todas las habitaciones son room separados, o todas las habitaciones estan en un solo room?

Cita de: 3dgeminis en Septiembre 19, 2020, 11:21:12 PM
Una pregunta, todas las habitaciones son room separados, o todas las habitaciones estan en un solo room?

Todas son separadas. Una room para cada sala