estoy haciendo un programa
lo que quiero es que si se oprime "Z", "X", o "C" tiene que sonar un sonido wav
pero si oprimo rapido las teclas el sonido empieca a "saltear tecleadas".
este es el codigo fuente:
#include <allegro.h>
int main()
{
allegro_init();
install_keyboard();
install_sound(DIGI_AUTODETECT, MIDI_AUTODETECT, NULL);
SAMPLE *archivo=load_wav("wav.wav");
int teclaZ=0;
int teclaX=0;
int teclaC=0;
while(!key[KEY_ESC])
{
if(key[KEY_Z] && teclaZ==0)//Si se preciona "Z" suena el sonido
{
stop_sample(archivo);
play_sample(archivo, 255, 0, 1000, 0);
}
if(key[KEY_Z]) teclaZ=1;
else teclaZ=0;
if(key[KEY_X] && teclaX==0)//Si se preciona "X" suena el sonido
{
stop_sample(archivo);
play_sample(archivo, 255, 0, 1000, 0);
}
if(key[KEY_X]) teclaX=1;
else teclaX=0;
if(key[KEY_C] && teclaC==0)//Si se preciona "C" suena el sonido
{
stop_sample(archivo);
play_sample(archivo, 255, 0, 1000, 0);
}
if(key[KEY_C]) teclaC=1;
else teclaC=0;
}
return 0;
}
END_OF_MAIN();
a que se debe eso?
tiene solucion?
si uso otra libreria en lugar de allegro puedo evitar este problema?
el archivo wav es un pequeño archivo de solo 244 bytes, que dura unas pocas decimas de segundo