Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: Yuzo en Enero 07, 2018, 10:38:08 AM

Título: Moverse como una mosca
Publicado por: Yuzo en Enero 07, 2018, 10:38:08 AM
Saludos;

Estoy haciendo un objeto que quiero que se mueva como una mosca, basicamente se desplaza rápidamente a un punto, se detiene unos segundos, y se desplaza a otro.

La idea es decirle, ves a un punto, pongo una alarma de moviemineto de manera ciclica y a rodar.

El problema es que no conozco ninguna orden que le diga a un objeto desplazate hasta un punto, solo conozco una que es desplazate en esa direccion, pero claro, no se detiene, esto es lo que tengo:

[gml]move_towards_point(view_xview+random_range(100,800),view_yview+random_range(50,450),3)[/gml]

Está claro que no debería ser move_towards_point, si no otra orden, pero no se cual, me podeis ayudar ??.

Gracias.
Título: Re:Moverse como una mosca
Publicado por: 3dgeminis en Enero 07, 2018, 08:41:33 PM
No me gusta mucho usar alarmas(son mas eventos y tengo menos control) asi que uso una variable para controlar el tiempo
[gml]
///CREATE////////////////////////////////////////////////////
mover=false ///si se puede mover(true) o espera(false)
xx=0 ///posicion x a moverse
yy=0 ///posicion y a moverse
vel=3 ///velocidad
ang=0 ///direccion de movimiento
tiempo=0 ///"alarma"

///STEP///////////////////////////////////////////////////////
if mover=true
   {
    ang=point_direction(x,y,xx,yy)
    x+=lengthdir_x(vel,ang)
    y+=lengthdir_y(vel,ang)
    if point_distance(x,y,xx,yy)<=vel {mover=false}
   }
else
   {
    tiempo+=1
    if tiempo=30
       {
        tiempo=0
        xx=irandom_range(50,room_width-50)
        yy=irandom_range(50,room_height-50)
        mover=true
       }
   }
[/gml]