Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: somnus en Julio 24, 2018, 06:11:39 PM

Título: Activar instancias dentro de
Publicado por: somnus en Julio 24, 2018, 06:11:39 PM
tengo muchos obg_wall en room muy grande supongamos 1000x1000, el caso es que lo dividi en areas supongamos 200x200 cada area, el chiste es desactivar todos los obj_wall que esten fuera del area en el que me encuentro, eso implica que al cambiar de area voy a desactivar todos y luego activar solo los obj_wall que esten dentro del area en el que me encuentro.

alguien sabe como seria la mejor manera de hacer algo asi?
Título: Re:Activar instancias dentro de
Publicado por: BssString en Julio 26, 2018, 04:19:09 AM
Hola somnus

Creo que tu otra consulta sobre grids tenía que ver con esta pregunta inicial, pero te respondo de todas formas...

Existe la función instance_deactivate_region(left, top, width, height, inside, notme);
Los primeros 4 parámetros son para determinar la posición en la room donde quieres desactivar objetos.
El parámetro "inside", si le pones "true" desactivas el interior de la región indicada, con "false" desactivas el exterior.
El parámetro "notme" es para evitar que el objeto que corre el código sea desactivado también.

Piensa que game maker hace un loop a través de todos los objetos para determinar si están o no están en la región dada, si tienes un montón de objeto no puedes abusar de esta función (ej usarla cada step) o podrías disminuir drásticamente el rendimiento de tu juego.

Saludos
Título: Re:Activar instancias dentro de
Publicado por: somnus en Julio 26, 2018, 06:14:57 AM
te agradesco, pero acabo de resolver esto, lo que pasa es que dentro de un room, tengo otros rooms mas pequenos y utilizo muchs instancias invisibles para colisionar, lo que hice fue desactivar todas estas instancias que estan en un layer y despues activo con activate_region, las que estan dentro del room, asi mismo hare con los enemigos y otras instancias como cajas y demas que aun no estan definidas.