Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: pasqualefz en Marzo 29, 2016, 08:54:55 PM

Título: generar un objeto en un punto de mi room
Publicado por: pasqualefz en Marzo 29, 2016, 08:54:55 PM
buenas como es posible hacer que se genere un objeto en un punto de mi room y que al destruirlo aparezca otro en otro punto

ejemplo :

mi room es de 720x1280 pero donde sucede todo es en el medio de la room imaginen un cuadrado en el medio de la room con dos objetos dentro jugador y enemigo quiero que al destruir el enemigo este aparezca en otro lado pero dentro del cuadrado
Título: Re:generar un objeto en un punto de mi room
Publicado por: bygdle en Marzo 29, 2016, 09:14:30 PM
Puedes, por ejemplo, crear el objeto en una posición aleatoria así:
[gml]
instance_create(irandom(room_width), irandom(room_height), objeto);
[/gml]
Y en el evento <destroy> del objeto pones el mismo código.
Título: Re:generar un objeto en un punto de mi room
Publicado por: pasqualefz en Marzo 29, 2016, 09:19:51 PM
y como haria que no aparezca fuera del cuadro ?
Título: Re:generar un objeto en un punto de mi room
Publicado por: bygdle en Marzo 29, 2016, 09:20:54 PM
Pues le restas a los valores X & Y del instance_create  ???
Título: Re:generar un objeto en un punto de mi room
Publicado por: pasqualefz en Marzo 29, 2016, 09:34:55 PM
si ya me di cuenta de eso jajaja que tonto ahora me pasa lo siguiente que se crean sin parar me imagino que tengo que hacer una comprobación que si el objeto enemigo esta creado no seguir creándolo hasta que este se destruya pero no se como crearlo disculpa por la molestia esque soy nuevo con esto de gml pero estoy aprendiendo rapido
Título: Re:generar un objeto en un punto de mi room
Publicado por: bygdle en Marzo 29, 2016, 09:39:06 PM
Depende de lo que quieras hacer. Si quieres que se cree cuando haces click en X parte, pues pones el instance_create en un evento de mouse o dentro de una condición de mouse.
Si sólo quieres que se cree si no existe pues algo asi:
[gml]
if !instance_exists(objeto) {
instance_create(ya,lo,sabesxD);
}
[/gml]
Título: Re:generar un objeto en un punto de mi room
Publicado por: pasqualefz en Marzo 29, 2016, 09:50:03 PM
soy un crack lo había echo sin saber pero nunca corri el juego jaja y ya lo ultimo para no fastidiarte mas que siento que me vas a matar por preguntón al destruirlo quiero que aparezca una escala mas grande el enemigo que mi enemigo tenga un tope de esala que si del 1 al 20 1 es su tamaño original 2 un poquito mas grande 3 ... y asi sucesivamente y al llegar a 20 pase algo que tengo en mente jaja
Título: Re:generar un objeto en un punto de mi room
Publicado por: pasqualefz en Marzo 29, 2016, 09:52:14 PM
osea crear como una variable tamaño y que esta tenga un tope de 20
Título: Re:generar un objeto en un punto de mi room
Publicado por: bygdle en Marzo 29, 2016, 09:58:33 PM
Podrías, primero, en algún otro objeto, declarar una variable global, evento <create>:
[gml]
global.tamanio = 1;
[/gml]
Y en el objeto que se crea, evento <create>:
[gml]
image_xscale = global.tamanio;
image_yscale = global.tamanio;
[/gml]
Y en el <destroy> del objeto, junto al instance_create:
[gml]
global.tamanio++;
[/gml]
Título: Re:generar un objeto en un punto de mi room
Publicado por: pasqualefz en Marzo 29, 2016, 10:25:10 PM
te lo juro esto es lo ultimo que me falta, como hago que al darle un toque a la pantalla se rebaje 1 a mi variable tamanio jaja del objeto que ya esta creado
Título: Re:generar un objeto en un punto de mi room
Publicado por: bygdle en Marzo 29, 2016, 10:27:16 PM
Me van a regañar por responder tantas preguntas diferentes en un solo post D:
En el <step> de cualquier objeto:
[gml]
if mouse_check_button_pressed(mb_left) {
global.tamanio--;
}
[/gml]
Título: Re:generar un objeto en un punto de mi room
Publicado por: pasqualefz en Marzo 29, 2016, 10:36:54 PM
ok disculpa ya no pregunto sobre otra cosa que no sea esto ok pasa lo siguiente tengo mi objeto enemigo a la escala orginal quiero que al dar toque a la pantalla este cambie su tamaño a una escale menos poniendo el código que me diste pasa algo extraño no reduce el tamaño dle objeto que esta creado si no al destruirlo aparece otro con el tamaño chiquito
Título: Re:generar un objeto en un punto de mi room
Publicado por: bygdle en Marzo 29, 2016, 10:47:02 PM
Entonces, en el <mouse left pressed> del objeto que quieres cambiar su tamaño:
[gml]
image_xscale--;
image_yscale--;
[/gml]
Título: Re:generar un objeto en un punto de mi room
Publicado por: pasqualefz en Marzo 30, 2016, 12:27:19 AM
ok se me eta derritiendo el cerebro quiero que pase algo como esto que el da click y el objeto se reduce y mira como el objeto nunca se pasa de los limites de la boca a mi se me sale cuando esta muy grande

http://www.juegos.com/juego/machaca-monstruos (http://www.juegos.com/juego/machaca-monstruos)
Título: Re:generar un objeto en un punto de mi room
Publicado por: bygdle en Marzo 30, 2016, 12:40:22 AM
Si sólo habrá una instancia a la vez, como el ejemplo que diste, se podría hacer así, desde un objeto cualquiera en evento <step>:
[gml]
if mouse_check_button_pressed(mb_left) {
objeto_monstruo.image_xscale -= 0.1; //Esto es opcional, pon lo que quieras
objeto_monstruo.image_yscale -= 0.1; //Esto es opcional, pon lo que quieras, pero sería mejor que usaras la misma medida de arriba para que no se deforme el sprite
}
[/gml]