batrix/scripts/audio/footsteps_player.gd
2025-03-03 22:04:34 +10:00

20 lines
452 B
GDScript

extends AudioStreamPlayer3D
@export var _footsteps: FootstepsBank
var _footsteps_shuffle: ShuffleBag = ShuffleBag.new()
var _polyphonic: AudioStreamPlaybackPolyphonic
func _ready() -> void:
if not _footsteps:
return
_footsteps_shuffle.fill(_footsteps.streams.size())
_polyphonic = get_stream_playback() as AudioStreamPlaybackPolyphonic
func play_footstep() -> void:
_polyphonic.play_stream(_footsteps.streams[_footsteps_shuffle.take()])