a ver me explico tengo mi player y mi enemigo, hasta ahí bien, tengo un distance_to object a mi obj_player que se activa una vez que mi player esta a menos de 1000px y hace que el enemigo se dirija hacia mi player con un move_toward_points vale hasta ahí sigue todo bien y hace todo correcto lo que pasa es que luego tengo otra condición que hace que una vez este mi enemigo a x pixels vaya mas despacio, pero luego me separo de el y se vuelve a cumplir la primera condición que es la de los 1000px pero una vez que se ha cumplido una vez ya no quiero que se vuelva a cumplir esa si me alejo del enemigo si no ahora querría que se cumpliese otra como puedo hacerlo??espero haberme explicado bien.

create:

siguiendo = false;

encierra la condición de cuando está lejos en un:

if distance_to_object(obj_algo) < 1000
    siguiendo = true;

if siguiendo {
    //codigo de seguir y seguirá para siempre
    }
[spoiler="ola k ase clickarme o k ase"]la imagen no se quita xD
[/spoiler]

Cita de: kostra en Febrero 24, 2016, 01:52:25 PM
create:

siguiendo = false;

encierra la condición de cuando está lejos en un:

if distance_to_object(obj_algo) < 1000
    siguiendo = true;

if siguiendo {
    //codigo de seguir y seguirá para siempre
    }
no me vale ya que cuando me vuelvo a alejar siempre vuelve a producirse siguiendo y asi sucesivamente cada vez que me alejo

es lo que puse, entonces, explícate mejor porque no entendí nada :/
[spoiler="ola k ase clickarme o k ase"]la imagen no se quita xD
[/spoiler]

Cita de: kostra en Febrero 24, 2016, 05:32:41 PM
es lo que puse, entonces, explícate mejor porque no entendí nada :/
A ver mi obj_Player se acerca al enemigo este lo detecta con un distance to object <500 y se acerca a el a una velocidad de 10 hasta ahí todo bien
despues cuando esta a menos de 300 con otro distance to object <300 se sigue acercando pero mas lento a una velocidad de 5
lo que quiero que una vez han pasado estas dos acciones si me vuelvo a alejar a mas de 300 pero a menos de 500 no cumpla la condicion de menos de 500 entiendes quiero que ya me aleje a la distancia que me aleje se quede con el valor de la condicion de distance to object <300 a una velocidad de 5 ahora esta asi pero cuando me alejo 350 se vuelve a cumplir la distance to object <500 y quiero que esa se anuley solo se cumpla la primera vez entiendes??

#5 Febrero 24, 2016, 05:53:44 PM Ultima modificación: Febrero 24, 2016, 05:55:31 PM por kostra
enemigo:

create:
[gml]cerca = false;[/gml]

step:
[gml]if distance_to_object(obj_player) < 500
and !cerca
    move_towards_point(obj_plater.x,obj_player.y,10);
if distance_to_object(obj_player) < 300 {
    cerca = true;
    }
else if distance_to_object(obj_player) > 350
    cerca = false;

if cerca
    move_towards_point(obj_plater.x,obj_player.y,5);[/gml]
//lo siguiente opcional si quieres que al volver a alejarte +500 se frene...
if distance_to_object(obj_player) > 500
    speed = 0;

PD: así a ojo, espero no haberme equivocado
[spoiler="ola k ase clickarme o k ase"]la imagen no se quita xD
[/spoiler]

Zorge no utilices el move_towards, una vez que das la orden ya puede explotar el planeta que no puede parar al move_towards.

Crea el movimiento move_towards por ejemplo con los ejes x,y en el step del enemigo.

A mi me pasaba y me funciono.  ;D
PCNONOGames  www.pcnono.es

Cita de: nonoroman en Febrero 24, 2016, 06:16:46 PM
Zorge no utilices el move_towards, una vez que das la orden ya puede explotar el planeta que no puede parar al move_towards.

para eso le puse speed = 0; y se acabó move_towards
[spoiler="ola k ase clickarme o k ase"]la imagen no se quita xD
[/spoiler]

Cita de: kostra en Febrero 24, 2016, 06:18:11 PM
Cita de: nonoroman en Febrero 24, 2016, 06:16:46 PM
Zorge no utilices el move_towards, una vez que das la orden ya puede explotar el planeta que no puede parar al move_towards.

para eso le puse speed = 0; y se acabó move_towards
Perfecto Kostra, no me hacia falta lo de speed 0, ya que no quería que se frenase, pero también lo podre aprovechar mas adelante, pero por lo demás todo perfecto.

yeah, dale ps coloca cartel en el titulo solusión :B
[spoiler="ola k ase clickarme o k ase"]la imagen no se quita xD
[/spoiler]