Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: davicin87 en Agosto 11, 2014, 07:26:35 PM

Título: Acabar código
Publicado por: davicin87 en Agosto 11, 2014, 07:26:35 PM
Buenas!!! Me podrían ayudar a añadir a este código una linea en la que manteniendo presionada la tecla abajo (vk_down) el personaje se mueva mas deprisa? es decir que corra.

Muchas gracias por la ayuda!! ;)

Evento STEP

hspeed =(keyboard_check(vk_right)-keyboard_check(vk_left))*7;
if vspeed<12{vspeed+=8};
if keyboard_check_pressed(vk_space)&&!place_free(x,y+1){vspeed=-40};
while !place_free(x+hspeed,y)&& hspeed!=2{
if hspeed>0{hspeed-=1};
if hspeed<0{hspeed+=1};
};
x+=hspeed;hspeed=0;
while !place_free(x,y+vspeed)&& vspeed!=0{
if vspeed>0{vspeed-=1};
if vspeed<0{vspeed+=1};
};
Título: Re:Acabar código
Publicado por: LowHertzs en Agosto 11, 2014, 09:11:13 PM
Primero creas una variable global que se llame por ejemplo puedecorrer y que inicie en false.

Despues en el evento vk_down pones lo siguiente:
puedecorrer = false;

En el evento step añades:
if global.puedecorrer = true;
{
     //codigo para hacer que corra, con los valores que tu determines.
}
Título: Re:Acabar código
Publicado por: davicin87 en Agosto 11, 2014, 11:05:27 PM
he creado la variable en el obj_protagonista y añadido al evento step la 4 linea.  es asi? y si es asi; como es el codigo para la velocidad? Perdona mi ignorancia :'( :'( :'(

hspeed =(keyboard_check(vk_right)-keyboard_check(vk_left))*7;
if vspeed<12{vspeed+=8};
if keyboard_check_pressed(vk_space)&&!place_free(x,y+1){vspeed=-40};
if keyboard_check (vk_down) gobal.puede_correr = true;

while !place_free(x+hspeed,y)&& hspeed!=2{
if hspeed>0{hspeed-=1};
if hspeed<0{hspeed+=1};
};
x+=hspeed;hspeed=0;
while !place_free(x,y+vspeed)&& vspeed!=0{
if vspeed>0{vspeed-=1};
if vspeed<0{vspeed+=1};
};