Buena Tarde!

Quisiera saber como crear el efecto de presionar un boton en barias ocasiones.
Un ejemplo, aparece un boton en la pantalla y tiene que presionarlo rapido por cierto tiempo si no pierde una vida.

Hay manera de hacer esto?

Se trata del típico juego de pulsar la tecla correcta cuando aparece en pantalla. Si eso es lo que buscas puedes probar lo siguiente:

objeto Controlador:
evento create:
[gml]
vidas = 3; // empezamos con 3 vidas
tecla = choose("a","b","c");
alarm[0] = room_speed * 2; // 2 segundos para reaccionar
[/gml]

evento alarm[0]:
[gml]
if (vidas != 0) // si no tenemos 0 vidas
{
vidas -= 1; // restar una 1 vida
}
[/gml]

evento step:
[gml]
if vidas == 0
{
alarm[0] = -1; // detener alarma
room_restart(); // reiniciar nivel
}
// pulsar tecla A
if keyboard_check_pressed(ord('A'))
{
if tecla == "a"
{
alarm[0] = -1; // detener la cuenta atrás
tecla = choose("a","b","c");
alarm[0] = room_speed * 2; // reiniciar cuenta atrás
}
}

// pulsar tecla B
if keyboard_check_pressed(ord('B'))
{
if tecla == "b"
{
alarm[0] = -1; // detener la cuenta atrás
tecla = choose("a","b","c");
alarm[0] = room_speed * 2; // reiniciar cuenta atrás
}
}
// pulsar tecla C
if keyboard_check_pressed(ord('C'))
{
if tecla == "c"
{
alarm[0] = -1; // detener la cuenta atrás
tecla = choose("a","b","c");
alarm[0] = room_speed * 2; // reiniciar cuenta atrás
}
}
[/gml]

evento Draw:
[gml]
draw_text(32,32,"La tecla a pulsar es: "+string(tecla)); // escribir en pantalla la tecla a pulsar
[/gml]

Muchas gracias esto tambien me es de ayuda.
Aunque lo que necesito es algo como la modalidad de juegos como Naruto o God of war en el que el personaje o cinematica esta haciendo algun tipo de accion y debe oprimir la tecla rapidamente para concluir accion si no no se completa.

No se si me hago entender.

Gracias


Cita de: Zapdos43 en Agosto 20, 2017, 08:05:11 PM
Se trata del típico juego de pulsar la tecla correcta cuando aparece en pantalla. Si eso es lo que buscas puedes probar lo siguiente:

objeto Controlador:
evento create:
[gml]
vidas = 3; // empezamos con 3 vidas
tecla = choose("a","b","c");
alarm[0] = room_speed * 2; // 2 segundos para reaccionar
[/gml]

evento alarm[0]:
[gml]
if (vidas != 0) // si no tenemos 0 vidas
{
vidas -= 1; // restar una 1 vida
}
[/gml]

evento step:
[gml]
if vidas == 0
{
alarm[0] = -1; // detener alarma
room_restart(); // reiniciar nivel
}
// pulsar tecla A
if keyboard_check_pressed(ord('A'))
{
if tecla == "a"
{
alarm[0] = -1; // detener la cuenta atrás
tecla = choose("a","b","c");
alarm[0] = room_speed * 2; // reiniciar cuenta atrás
}
}

// pulsar tecla B
if keyboard_check_pressed(ord('B'))
{
if tecla == "b"
{
alarm[0] = -1; // detener la cuenta atrás
tecla = choose("a","b","c");
alarm[0] = room_speed * 2; // reiniciar cuenta atrás
}
}
// pulsar tecla C
if keyboard_check_pressed(ord('C'))
{
if tecla == "c"
{
alarm[0] = -1; // detener la cuenta atrás
tecla = choose("a","b","c");
alarm[0] = room_speed * 2; // reiniciar cuenta atrás
}
}
[/gml]

evento Draw:
[gml]
draw_text(32,32,"La tecla a pulsar es: "+string(tecla)); // escribir en pantalla la tecla a pulsar
[/gml]

En ese caso tenes que ir aumentando el valor de una variable cada vez que se presiona el boton, por ejemplo  poder+=1, y ya dependiendo de su valor pasa una cosa u otra.