Ich habe folgendes Problem:
Für ein Adventuregame benötige ich mehrere Dialoge. Da die meisten Sprachsätze nur einmal verwendet werden, und es sich um etwa 5000 solcher Sprachdateien handelt, lasse ich die benötigte Sounddatei im Spiel dynamisch einladen. Dabei enthält jede Sprachdatei den Text, den eine Person während eines Dialoges spricht, solange, bis der andere Gesprächspartner an der Reihe ist. Jedesmal, wenn der Gesprächspartner wechselt, wird also eine neue Datei eingeladen.
Während eine Spachdatei abgespielt wird, bewegen die Charaktere ihre Münder. Ist der nächste Charakter mit Sprechen an der Reihe, bleibt der eine still, und der andere bewegt den Mund.
Damit das Programm weiß, wann die Mundbewegungen stoppen sollen, muss es wissen, wann die Sounddatei fertig ist. 'Und genau hier liegt nun mein Problem.
Verwende ich im Programm integrierte Sounds, so kann man bequem über audio_sound_is_playing(snd_id) erfragen, ob der Sound noch spielt.
Ich lade die Sounds über einen Buffer ins Programm. In etwa so:
Das funktioniert wie gewünscht. Über snd_id kann ich danach den Sound abspielen.
Was aber nicht funktioniert, ist die Abfrage, ob der Sound noch immer spielt.
Bei audio_sound_is_playing(snd_id) bekomme ich immer eine negative Rückmeldung.
Kann mir jemand hier weiterhelfen? Gibt es vielleicht auch andere Möglichkeiten, um zu erfahren, wann die Sounddatei beendet ist, um mit der nächsten zu beginnen, bzw. den Charakter bildlich verstummen zu lassen?
Für ein Adventuregame benötige ich mehrere Dialoge. Da die meisten Sprachsätze nur einmal verwendet werden, und es sich um etwa 5000 solcher Sprachdateien handelt, lasse ich die benötigte Sounddatei im Spiel dynamisch einladen. Dabei enthält jede Sprachdatei den Text, den eine Person während eines Dialoges spricht, solange, bis der andere Gesprächspartner an der Reihe ist. Jedesmal, wenn der Gesprächspartner wechselt, wird also eine neue Datei eingeladen.
Während eine Spachdatei abgespielt wird, bewegen die Charaktere ihre Münder. Ist der nächste Charakter mit Sprechen an der Reihe, bleibt der eine still, und der andere bewegt den Mund.
Damit das Programm weiß, wann die Mundbewegungen stoppen sollen, muss es wissen, wann die Sounddatei fertig ist. 'Und genau hier liegt nun mein Problem.
Verwende ich im Programm integrierte Sounds, so kann man bequem über audio_sound_is_playing(snd_id) erfragen, ob der Sound noch spielt.
Ich lade die Sounds über einen Buffer ins Programm. In etwa so:
Das funktioniert wie gewünscht. Über snd_id kann ich danach den Sound abspielen.
Was aber nicht funktioniert, ist die Abfrage, ob der Sound noch immer spielt.
Bei audio_sound_is_playing(snd_id) bekomme ich immer eine negative Rückmeldung.
Kann mir jemand hier weiterhelfen? Gibt es vielleicht auch andere Möglichkeiten, um zu erfahren, wann die Sounddatei beendet ist, um mit der nächsten zu beginnen, bzw. den Charakter bildlich verstummen zu lassen?