Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: cesar561 en Diciembre 09, 2015, 08:38:22 PM

Título: Al presionar una tecla que inicie velocidad horizontal background? Ayuda
Publicado por: cesar561 en Diciembre 09, 2015, 08:38:22 PM
Buenas tardes tengo mi codigo para aumentar la velocidad horizontal gradualmente de mi background , funciona muy bn
pero quiero que se ejecute una vez que se pressiona una tecla. Es decir, que al pasar el menu principal , presionar x tecla inicie el movimiento de el background, alguna idea de como hacerlo? gracias dejo mi codigo

//Create
tick = 0;

//Step

if  (tick == room_speed*10)
    {
        tick = 0;
   
        background_hspeed[0] += -0.5;
    }
    else
        {
        tick++;
    }
   
Título: Re:Al presionar una tecla que inicie velocidad horizontal background? Ayuda
Publicado por: penumbra en Diciembre 09, 2015, 08:50:06 PM
Suponiendo que al presionar la tecla A, en la habitación "Juego", comienza a moverse el fondo...
[gml]
if (room == room_juego) and keyboard_check_pressed(ord('A'))
{
     //código para mover el fondo o aumentar velocidad
}
[/gml]

El código iría en STEP
Título: Re:Al presionar una tecla que inicie velocidad horizontal background? Ayuda
Publicado por: cesar561 en Diciembre 09, 2015, 09:11:50 PM
No me funciono, no se incrementa la variable tick, quedaria de esta manera.... ayuda.. ???  ???

//Create
tick=0;

//Step
if (room == room0) keyboard_check_pressed(ord('A'))
{

     //código para mover el fondo
     if  (tick == room_speed*10)
    {
        tick = 0; // reset the ticks to 0.
   
        background_hspeed[0] += -0.5;
       
    }
    //else
       // {
         tick++;
         //}
}
Título: Re:Al presionar una tecla que inicie velocidad horizontal background? Ayuda
Publicado por: penumbra en Diciembre 09, 2015, 09:21:17 PM
Cita de: cesar561 en Diciembre 09, 2015, 09:11:50 PM
No me funciono, no se incrementa la variable tick,
Tick no se está incrementando porque la pusiste entre comentarios. Aparte, modificaste la condición y le quitaste un AND. así daría error.

Prueba esto
CREATE
[gml]
tick=0;
mover = false[/gml]

STEP
[gml]if (room == room0) and keyboard_check_pressed(ord('A')) and !mover
mover = true

if (tick >= room_speed*10) and (mover)
{
        tick = 0; // reset the ticks to 0.
        background_hspeed[0] += -0.5;
}
else
      tick++;
[/gml]



Y lo mismo podría hacerse con alarmas (si se prefiere, en lugar del código anterior)
CREATE
[gml]
mover = false
[/gml]

STEP
[gml]
if (!mover) and keyboard_check_pressed(ord('A'))
{
     mover = true
     alarm[0] = room_speed * 10
}
[/gml]

ALARM[0]
[gml]
if (mover)
{
     background_hspeed[0] += -0.5;
     alarm[0] = room_speed * 10
}
[/gml]
Título: Re:Al presionar una tecla que inicie velocidad horizontal background? Ayuda
Publicado por: cesar561 en Diciembre 09, 2015, 11:20:04 PM
Muchas gracias amigo, me funciono muy bn el de alarmas  :D
Título: Re:Al presionar una tecla que inicie velocidad horizontal background? Ayuda
Publicado por: cesar561 en Diciembre 11, 2015, 12:27:50 AM
Hola de nuevo.. Para agregarle musica de fondo(background) una vez que inicie a mover el background. cómo podría quedar en el codigo???   :-[

Título: Re:Al presionar una tecla que inicie velocidad horizontal background? Ayuda
Publicado por: penumbra en Diciembre 11, 2015, 12:29:25 AM
No te respondo porque me castigan  :-[
Título: Re:Al presionar una tecla que inicie velocidad horizontal background? Ayuda
Publicado por: cesar561 en Diciembre 11, 2015, 12:31:46 AM
No sabia ya me di cuenta  :-[