Saludos;
He creado un objeto que en un momento concreto ha de desplazarse hasta un punto y detenerse.
Desplazarse se desplaza, pero después se queda ahí atascado, alguien sabe como ayudarme ?
He puesto:
STEP:
[GML]
// DESCIENDE
if desciende == true{
move_towards_point(9700,300,5)
}
// SI SE POSICIONA A LA DERECHA
if y >= 295 and x >= 9695{
desciende = false
esta_derecha = true
}
[/gml]
Debería funcionar pero parece que el move_towards_point, que solo debería activarse si la variable "desciende" es true sigue activado, a pesar de que he comprobado con un string que la variable desciende esta en false una vez alcanza el punto, ya no se que hacer, una ayudita ?...
Como siempre, Gracias de antemano amigos.
Un Saludo.
move_towards_point utiliza speed, asi que si no la detienes continuara moviendose. Pon speed=0 cuando llegue a su destino.
Tambien lo probé y sigue manteniendo la speed a 5, no se por que
Vale, perdona, tienes toda la razon, si que se detiene, entraba en conflicto con otras cosas que tenia en el evento STEP.
El caso es que sigo teniendo un problema, y es que en cuanto le vuelvo a dar valor a SPEED, este sigue cumpliendo la funcion move_towards_point, es como que nunca se cancela, aun que le des una direction diferente y la variable "desciende" que es la que lo controla este en false
No se puede anular la funcion move_towards_point una vez que la activas ?.
Segun pienso move_towards_point utiliza las coordenadas del objeto y de la posicion de destino para calcular la direccion (como point_direction), aunque cambies el valor de direction no le afectara.
Podrias usar point_direction y lengthdir_x y lengthdir_y
x+=lengthdir_x(point_direction(x,y,9700,300), 5)
y+=lengthdir_y(point_direction(x,y,9700,300), 5)
Gracias 3DGeminis, todo solucionado !!, no se que haría sin ti !!