Mayo 13, 2014, 06:33:55 PM Ultima modificación: Mayo 13, 2014, 10:49:29 PM por eams1986
Hola Makeros tengo un problema con este tipo tiburon bueno lo quiero que haga es
que cuando yo me acerque el tiburon  salte el esta sobre el agua ,pero que salte solo una ves y que se regrese al agua
tengo este codigo pero resulta que se va hacia arriba y no se devuelve .

distance_to_object(obj_player) < 200
    {
  vspeed=-8
    }

Thanks Makeros

pues el problema ahi es que siempre que el jugador esté cerca, el tiburon salta sin antes comprobar si ya ha saltado..
puedes poner una alarma para que pueda saltar cada cierto tiempo, o puedes hacerle una variable para que salte una sola vez en su vida >:D
saltaria cada 30 steps (1 segundo) evento STEP :

if alarm[0] = -1 && distance_to_object(obj_player)<200
{
vspeed = -8
alarm[0]= 30
}

saltaria una sola vez en su vida

// en el evento Create
salto=0
//////////////////////////
//en el evento Step
if distance_to_object(obj_player)<200 && salto=0
{
vspeed=-8
salto=1
}

Black pero lo que quiero es que salte y se devuelva para el agua.

ese ejemplo se va de paso hacia arriba y no se devuelve

Si vspeed = -8 hace que el tiburón vaya para arriba, vspeed = 8 haría que fuera hacia abajo. Tú eres el que sabe qué tan alto debe llegar el tiburón antes de regresar al agua.

if (tiburon.y > altura_maxima)
    vspeed = -8
else
    vspeed = 8

Pero lo mejor sería usar gravedad u otro código que vaya desacelerando el salto del tiburón y termine por hacerlo caer, porque el código que puse hace que cambie de dirección muy drásticamente, lo cual creo que no se vería bien.

Penumbra muchas gracias este codigo va en el obj_tiburon en CREATE O STEP
por que lo puse en STEP y tambien se va y no regresa
y en CREATE no hace nada

#5 Mayo 13, 2014, 09:05:24 PM Ultima modificación: Mayo 13, 2014, 10:45:26 PM por penumbra
va en STEP del tiburón, pero debes modificarlo. En lugar de "tiburon.y" sólo debe de estar "y". Y en lugar de "altura_maxima" debes poner un número indicando hasta donde debe llegar el tiburón)


if distance_to_object(obj_player) < 200 and (y > altura_maxima)
{
     vspeed=-8
}
else
     vspeed = 8

Gracias penumbra ha funcionado muy bien.

Gracias tambien a : blackhack2000

Bien, en el codigo que te envié solo hace falta en el evento create:
gravity=1
gravity_direction=270