diff --git a/public/games/age-of-dwarves/data/audio.json b/public/games/age-of-dwarves/data/audio.json index a1f9b4f5..fbdbcc71 100644 --- a/public/games/age-of-dwarves/data/audio.json +++ b/public/games/age-of-dwarves/data/audio.json @@ -437,6 +437,18 @@ "bus": "SFX", "description": "Light scholarly tap — research building completed." }, + "building.complete": { + "stream": "audio/sfx/buildings/infrastructure_complete.ogg", + "volume_db": -6.0, + "bus": "SFX", + "description": "Generic stone settle — kind-only fallback for any building category." + }, + "complete": { + "stream": "audio/sfx/buildings/infrastructure_complete.ogg", + "volume_db": -7.0, + "bus": "SFX", + "description": "Bare-kind fallback — last-resort for any 'complete' event." + }, "attack": { "stream": "audio/sfx/generic/attack.ogg", "volume_db": -7.0, diff --git a/src/game/engine/tests/unit/test_audio_manager.gd b/src/game/engine/tests/unit/test_audio_manager.gd index 2b0ee6f2..90c7b08a 100644 --- a/src/game/engine/tests/unit/test_audio_manager.gd +++ b/src/game/engine/tests/unit/test_audio_manager.gd @@ -239,11 +239,13 @@ func test_new_event_signals_are_connected() -> void: func _assert_chain_resolves(entity_id: String, kind: String) -> void: var keys: Array[String] = AudioManager._resolve_keys(entity_id, kind) + var found: bool = false for k: String in keys: if AudioManager._sfx_events.has(k): - return + found = true + break assert_true( - false, + found, "no manifest entry for chain %s.%s -> %s" % [entity_id, kind, str(keys)] )