Я делаю игру для школьного проекта, и у меня есть звуковой эффект, который должен играть каждый раз, когда лазер уволен. Был короткий период времени, когда он работал нормально, но с тех пор он прекратился. После этого я немного изменил код, так как хотел сохранить файл в файле данных.Allegro sound not working (play wav file)
Initializing звук в Allegro
install_sound(DIGI_AUTODETECT, MIDI_AUTODETECT, NULL);
Это код для загрузки и воспроизведения звука
//Loading sound file from datafile
DATAFILE *laserShot = NULL;
laserShot = load_datafile_object("asteroids.dat", "laser_Shot");
//Error checking
if (laserShot->dat == NULL) {
allegro_message("Error loading laser_Shot.wav");
}
else {
//Playing sound for shot
play_sample((SAMPLE*) laserShot->dat, 255, 127, 1000, 0);
}
//Freeing memory
unload_datafile_object(laserShot);
Сам звук очень короткий, если это имеет какое-либо значение, менее чем за одну секунду. Звук также будет пытаться играть несколько раз подряд, но теперь на самом деле больше времени, чем когда он работал, поэтому я не думаю, что это имеет значение.
Есть ли что-то, что я вопию неправильно?