Mayo 08, 2019, 04:46:08 PM Ultima modificación: Mayo 19, 2020, 06:26:03 AM por T789
Pequeña duda que tengo sobre los movimientos con los sprite,
Tomemos como ejemplo un juego de sonic, cuando este corre principalmente entra con una velocidad reducida y luego es cuando empieza a correr mas rapido

cuando este presiona la tecla: Principalmente empieza a correr con los sprite y al segundo este aumenta la velocidad con otros sprite

Mi duda es como puedo hacer ese cambio de sprite al momento de iniciar el movimiento

Prueba con esto:

Create:
sprite_index = spr_parado; 

velocidad = 0;                    //Velocidad actual
estado_velocidad = 0;      //Cantidad de velocidad [0 = 4; 1 = 8;] (Se ve más adelante)


Step:
derecha = keyboard_check(vk_right);     //Movimiento hacia la derecha
if estado_velocidad = 0{velocidad = 4;}if estado_velocidad = 1{velocidad = 8;}

if derecha{
    if sprite_index = spr_parado{     //Al poner esta condición la alarma solo se ejecutará una sola vez
        alarm[0] = room_speed;          //La alarma se activará en un segundo
        sprite_index = spr_caminar;   //El sprite de movimiento reducido
    }
}
else{     //Si no se está pulsando la tecla
    velocidad = 0;     //La velocidad se reducirá a 0
    estado_velocidad  = 0;     //El estado volverá a 0 [velocidad = 4]
    alarm[0]   = -1     //Se reiniciará la alarma
    sprite_index = spr_parado;     //Y el sprite volverá ser el de parado
}

x += velocidad;     //Suma la coordenada "x" actual por la variable "velocidad"


Alarm[0]:     //Si se ha mantenido la tecla un segundo
sprite_index = spr_correr;     //El sprite actual será el sprite de correr
estado_velocidad = 1;           //Y la velocidad cambiará de 4 a 8


Esto es para el movimiento hacia la derecha.