O crear una variable global, creo que el objeto que la contenga tambien debe ser persistente
Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
901
Preguntas y respuestas / Re:¿Cómo limitar zoom in out de una view? Solucionado
Febrero 09, 2015, 07:27:10 AM902
Preguntas y respuestas / Re:cambio de sprite con la gravedad
Febrero 09, 2015, 07:25:41 AM
Usas sprites diferentes para la izquierda y derecha o solo tenes uno y lo invertis con image_xscale ???
Podrias subir el archivo ???
Mezclar el codigo de movimiento con graficos nunca me parecio una buena idea (al menos para mi se me complica un poco :-[). Despues que tenes el movimiento, la colisiones del objeto etc, es mas facil hacer la parte de los graficos
Por ejemplo yo uso una variable para registrar cuando se mueve a la derecha, izquierda o se esta quieto y dependiendo de su valor asigno los sprites correspondientes
Podrias subir el archivo ???
Mezclar el codigo de movimiento con graficos nunca me parecio una buena idea (al menos para mi se me complica un poco :-[). Despues que tenes el movimiento, la colisiones del objeto etc, es mas facil hacer la parte de los graficos
Por ejemplo yo uso una variable para registrar cuando se mueve a la derecha, izquierda o se esta quieto y dependiendo de su valor asigno los sprites correspondientes
903
Preguntas y respuestas / Re:Como hacer que un objeto en movimiento no se salga de la room?
Febrero 09, 2015, 07:13:57 AM
Supongo que usas speed para mover la pelota
En STEP
if x>=room_width hspeed*=-1
if x<=0 hspeed*=-1
if y<=0 vspeed*=-1
if y>=room_height vspeed*=-1
En STEP
if x>=room_width hspeed*=-1
if x<=0 hspeed*=-1
if y<=0 vspeed*=-1
if y>=room_height vspeed*=-1
904
Preguntas y respuestas / Re:cambio de sprite con la gravedad
Febrero 08, 2015, 11:05:44 PM
Si te fijas uso if gravity>0 para controlar el cambio de sprites cuando esta en el aire. En el suelo usas gravity=0
905
Preguntas y respuestas / Re:¿Cómo limitar zoom in out de una view? Solucionado
Febrero 08, 2015, 11:00:48 PM
Quedaria algo asi
if (keyboard_check(vk_add))
{
if zoom_factor>0.40 {zoom_factor-=0.01};
}
else
if (keyboard_check(vk_subtract))
{
if zoom_factor<1 {zoom_factor+=0.01};
}
if (keyboard_check(vk_add))
{
if zoom_factor>0.40 {zoom_factor-=0.01};
}
else
if (keyboard_check(vk_subtract))
{
if zoom_factor<1 {zoom_factor+=0.01};
}
906
Preguntas y respuestas / Re:Duda
Febrero 08, 2015, 08:08:41 PM
Hay un articulo en la pagina que te puede ayudar
http://www.comunidadgm.org/articulos/12-trucos-para-optimizar-tus-juegos-(programacion)/
http://www.comunidadgm.org/articulos/12-trucos-para-optimizar-tus-juegos-(programacion)/
907
Preguntas y respuestas / Re:cambio de sprite con la gravedad
Febrero 08, 2015, 08:04:48 PM
Podes usar la gravedad jundo con la velocidad vertical para controlar el cambio de sprites
if gravity>0 ///ya sea si salta o cae de una plataforma la gravedad se activa, el personaje esta en el aire
{
if vspeed<0 { sprite_index=sprite_saltando } else { sprite_index=sprite_cayendo }
}
if gravity>0 ///ya sea si salta o cae de una plataforma la gravedad se activa, el personaje esta en el aire
{
if vspeed<0 { sprite_index=sprite_saltando } else { sprite_index=sprite_cayendo }
}
908
Preguntas y respuestas / Re:Como hago un plataformero
Febrero 08, 2015, 07:56:01 AM909
Preguntas y respuestas / Re:Una breve pausa luego de la muerte del boss
Febrero 08, 2015, 04:23:15 AM
Por que no simplemente creas un objeto que controle la pausa y el mensaje ademas del cambio de room. Cuando el monstruo muera este crea al objeto. Seria agregar un objeto mas al juego pero seria mas simple de hacer.
UIna alarma que controle el tiempo de la pausa y cuando esta termine cree el mensaje al mismo tiempo que empieza la segunda alarma. Cuando la seguna alarma termine cambie al room de epilogo.
UIna alarma que controle el tiempo de la pausa y cuando esta termine cree el mensaje al mismo tiempo que empieza la segunda alarma. Cuando la seguna alarma termine cambie al room de epilogo.
910
Preguntas y respuestas / Re:Se traspasa cuando aumenta .
Febrero 07, 2015, 06:43:46 AM
Tengo una pregunta, porque esas velocidades tan grandes, siendo 30 un valor bastante alto y no digamos 80 que ya es imposible ???
Yo uso un codigo para mover a los lados que aguanta velocidades de 100 aun contra objetos de 1 pixel, pero se maneja con x+=1 y no con angulo, no sabria como adaptarlo. Si alguien puede hacerlo lo dejo aqui
for(i=0 ; i<velocidad ; i+=1)
{
if place_meeting(x+1,y,pared) break; x+=1
}
Yo uso un codigo para mover a los lados que aguanta velocidades de 100 aun contra objetos de 1 pixel, pero se maneja con x+=1 y no con angulo, no sabria como adaptarlo. Si alguien puede hacerlo lo dejo aqui
for(i=0 ; i<velocidad ; i+=1)
{
if place_meeting(x+1,y,pared) break; x+=1
}
911
Preguntas y respuestas / Re:Implementar un juego tipo flappy bird o jet pack
Febrero 07, 2015, 06:26:55 AM
En el foro ya hay varias preguntas y respuestas respecto a este tipo de juegos, y buscando un poco en youtube encontras tutoriales.
912
Preguntas y respuestas / Re:Super Salto
Febrero 07, 2015, 06:25:03 AM
Te dejo un ejemplo, utiliza 2 variables y una alarma para controlar el super salto.
Supongo que usas los cursores para moverte a los lados, te recomiendo que para el salto uses otra tecla que no sea arriba, queda mucho mas comodo de manejar.
Otra forma podria ser mientras se mantenga presionado abajo sin soltar se pueda presionar la tecla de salto
Supongo que usas los cursores para moverte a los lados, te recomiendo que para el salto uses otra tecla que no sea arriba, queda mucho mas comodo de manejar.
Otra forma podria ser mientras se mantenga presionado abajo sin soltar se pueda presionar la tecla de salto
913
Preguntas y respuestas / Re:Al colicionar con enemigo, que mi personaje retroceda.
Febrero 05, 2015, 09:57:44 PM
Lo que podrias hacer es darle una velocidad y direccion inversa a la colision con el enemigo
COLISION CON ENEMIGO
direction=point_direction(other.x,other.y,x,y)
speed=10
Despues tendras que detener la velocidad poniendola a 0 o agregando friccion (friction =0.8)
Aunque de esta forma estarias complicando un poco el codigo del objeto jugador. Lo que yo haria es crear un nuevo objeto que cuando el jugador colisiona con el enemigo este lo reemplazaria temporalmente, y despues de cierto tiempo o cuando deje de moverse cambie al jugador normal.
COLISION CON ENEMIGO
direction=point_direction(other.x,other.y,x,y)
speed=10
Despues tendras que detener la velocidad poniendola a 0 o agregando friccion (friction =0.8)
Aunque de esta forma estarias complicando un poco el codigo del objeto jugador. Lo que yo haria es crear un nuevo objeto que cuando el jugador colisiona con el enemigo este lo reemplazaria temporalmente, y despues de cierto tiempo o cuando deje de moverse cambie al jugador normal.
914
Preguntas y respuestas / Re:Hacer que mi personaje o IA se muevan en posicion especifica
Febrero 03, 2015, 06:02:59 PM
No me quedo muy claro la pregunta, podrias hacer un dibujo de como queres que sea el movimiento, solo cambiando un poco puede cambiar bastante la forma de hacerlo en codigo.
En el ejemplo de Pong moverlo en un eje es facil (y+=4 , vspeed=-5) y ponerle limites tambien, podes usar un objeto que limite el movimiento o solo con codigo (if y>100 {vspeed=0})
En el ejemplo de Pong moverlo en un eje es facil (y+=4 , vspeed=-5) y ponerle limites tambien, podes usar un objeto que limite el movimiento o solo con codigo (if y>100 {vspeed=0})
915
Preguntas y respuestas / Re:Particulas ayuda!
Febrero 03, 2015, 06:54:08 AM
Un sencillo ejemplo de particulas
CREATE ///configuracion de las particulas
ps=part_system_create()
pt=part_type_create()
part_type_sprite(pt,sprite,1,0,0)
part_type_direction(pt,130,150,0,0)
part_type_speed(pt,4,8,0,0)
part_type_gravity(pt,0.6,270)
part_type_life(pt,10,20)
STEP ///creacion de las particulas
part_particles_create(ps,x,y,pt,10)
CREATE ///configuracion de las particulas
ps=part_system_create()
pt=part_type_create()
part_type_sprite(pt,sprite,1,0,0)
part_type_direction(pt,130,150,0,0)
part_type_speed(pt,4,8,0,0)
part_type_gravity(pt,0.6,270)
part_type_life(pt,10,20)
STEP ///creacion de las particulas
part_particles_create(ps,x,y,pt,10)