feat: implement global SFXManager singleton and integrate into main scene initialization
This commit is contained in:
@@ -15,10 +15,16 @@ func _load_sounds():
|
||||
dir.list_dir_begin()
|
||||
var file_name = dir.get_next()
|
||||
while file_name != "":
|
||||
if not dir.current_is_dir() and (file_name.ends_with(".mp3") or file_name.ends_with(".wav") or file_name.ends_with(".ogg")):
|
||||
var base_name = file_name.get_basename()
|
||||
sounds[base_name] = load(sfx_path + file_name)
|
||||
# print("[SfxManager] Loaded: ", base_name)
|
||||
if not dir.current_is_dir():
|
||||
# Remove .import extension if it exists (Godot adds this to imported resources in exported builds)
|
||||
var clean_name = file_name.replace(".import", "")
|
||||
|
||||
if clean_name.ends_with(".mp3") or clean_name.ends_with(".wav") or clean_name.ends_with(".ogg"):
|
||||
var base_name = clean_name.get_basename() # Ex: "jump.wav" -> "jump"
|
||||
# Only load the original extension, Godot's resource loader handles the .import remapping automatically.
|
||||
if not sounds.has(base_name):
|
||||
sounds[base_name] = load(sfx_path + clean_name)
|
||||
|
||||
file_name = dir.get_next()
|
||||
dir.list_dir_end()
|
||||
else:
|
||||
|
||||
Reference in New Issue
Block a user