fix(sfx): duplicate OGG stream before setting loop to avoid shared resource mutation

This commit is contained in:
Steven Wroblewski
2026-05-10 21:53:51 +02:00
parent 80274b0294
commit b7757a5548
+8 -4
View File
@@ -33,11 +33,15 @@ func _setup_audio() -> void:
return
if not ResourceLoader.exists(_HEARTBEAT_PATH):
return
var stream: AudioStreamOggVorbis = load(_HEARTBEAT_PATH) as AudioStreamOggVorbis
if stream == null:
var base: AudioStream = load(_HEARTBEAT_PATH) as AudioStream
if base == null:
return
stream.loop = true
_audio.stream = stream
var ogg: AudioStreamOggVorbis = base as AudioStreamOggVorbis
if ogg == null:
return
ogg = ogg.duplicate() as AudioStreamOggVorbis
ogg.loop = true
_audio.stream = ogg
func _on_room_changed(floor_index: int, room_index: int) -> void: