Hola a todos :D,tengo una duda , como hago para hacer que cuando presiones el mouse por cierto tiempo el proyectil siga al enemigo mas cercano, pero si no se deja tiempo presionado solo va a la direccion de la mira del personaje?
Yo uso global mouse y dispara a donde este el objeto mira pero quiero hacer si dejo presionado el mouse el proyectil valla al enemigo .
Uso :GM8:
Hola Chrom, ahora te ayudo:
Evento <Create>:
tiempo=0;
lanzado=0;
Evento <Step>:
if mouse_check_button(mb_left) and lanzado=0
{
tiempo+=1
if tiempo>30
{
tiempo=0
lanzado=1
lanzar_proyectil_dirigido()
}
}
if mouse_check_button_released(mb_left)
{
if tiempo<30 and lanzado=0 { lanzar_proyectil_normal(); tiempo=0; }
lanzado=0
}
Si también quieres que te explique como hacer cada proyectil abre el Spoiler:
[spoiler]Remplaza "lanzar_proyectil_normal()" y el "dirigido" por:
instance_create(x,y,proyectil_normal)
(o dirigido)
Ahora vamos a hacer cada objeto:
1-En el proyectil normal, en el evento <Create> pones:
direction=obj_player.mira
speed=5
(no sé cómo has hecho la mira así que lo dejo así).
2-Y en el dirigido en el evento <Create>:
cercano=instance_nearest(x,y,obj_enemigo)
Y luego el <Step>:
move_towards_point(cercano.x,cercano.y,5)
En el caso de que los enemigos fueran objetos distintos, ponles todos Parent con un objeto que sea el que buscaremos con la función instance_nearest().
[/spoiler]
¡Un saludo!
Funciono Perfecto Muchas Gracias :D, aunque el move_towards no sigue tanto como deberia :o
pues usa el point_direction, justo respondí hoy sobre eso de seguir xd http://www.comunidadgm.org/preguntas-y-respuestas/juego-de-plataformas-horizontal-proyectiles-que-persiguen-como-orientarlos/