updating Gdx.audio on separate thread

This commit is contained in:
minjaesong
2023-11-08 23:42:17 +09:00
parent beb7f1fb73
commit 2f11988353
8 changed files with 722 additions and 31 deletions

View File

@@ -25,7 +25,11 @@ class TerrarumMusicGovernor : MusicGovernor() {
MusicContainer(
it.nameWithoutExtension.replace('_', ' ').split(" ").map { it.capitalize() }.joinToString(" "),
it,
Gdx.audio.newMusic(Gdx.files.absolute(it.absolutePath))
Gdx.audio.newMusic(Gdx.files.absolute(it.absolutePath)).also {
it.setOnCompletionListener {
stopMusic()
}
}
)
}
catch (e: GdxRuntimeException) {
@@ -98,9 +102,7 @@ class TerrarumMusicGovernor : MusicGovernor() {
}
}
STATE_PLAYING -> {
if (AudioManager.currentMusic?.gdxMusic?.isPlaying == false) {
// stopMusic()
}
// stopMusic() will be called when the music finishes; it's on the setOnCompletionListener
}
STATE_INTERMISSION -> {
intermissionAkku += delta