xiandie/manager/audio_manager/audio_test.gd

27 lines
978 B
GDScript

extends CanvasLayer
@onready var container = %VBoxContainer
var root_dir = "res://config/audio/"
func _ready():
var dir_access = DirAccess.open(root_dir) as DirAccess
for dir in dir_access.get_directories():
container.add_child(HSeparator.new())
var current_grid_container = GridContainer.new()
current_grid_container.columns = 4
container.add_child(current_grid_container)
print("load dir=",dir)
for file in DirAccess.open(root_dir+dir).get_files():
var path = root_dir+dir+"/"+file
var audio_collection := load(path) as AudioStreamCollection
var btn = SoundButton.new()
if audio_collection!=null:
var audio_collections = [] as Array[AudioStreamCollection]
audio_collections.append(audio_collection)
btn.audio_collections = audio_collections
print("load file=",path," audio_collections=",audio_collections,"audio_collections[0].size=",audio_collection.audios.size())
btn.text = file
current_grid_container.add_child(btn)