Ship the 0.9.0 production-quality milestone
Add mixer/accessibility settings, caption/reduce-motion hooks, audio volume clamping, a 24-NPC performance smoke and shortened coat/dress stride for hem clipping. Record the explicit Godot 4.3-CI/4.7-local matrix and the 0.9 production scope. Headless 250/250, Python 94/94, 24-NPC budget smoke passes.
This commit is contained in:
1 parent
b5d4d5fb87
commit
883626a067
19 files changed
+240
-131
No files matched your search
@@ -9,7 +9,7 @@ extends SceneTree
|
||||
const NpcAvatar := preload("res://src/game/npc_avatar.gd")
|
||||
const NpcProfile := preload("res://src/core/npc_profile.gd")
|
||||
const Rules := preload("res://src/core/rules.gd")
|
||||
const COUNT := 16
|
||||
const COUNT := 24
|
||||
const WARMUP_FRAMES := 60
|
||||
const SAMPLE_FRAMES := 180
|
||||
const BUDGET_MS := 50.0
|
||||
|
||||
@@ -66,6 +66,18 @@ func test_radio_crackle_methods() -> bool:
|
||||
audio.free()
|
||||
return a and b
|
||||
|
||||
func test_volume_settings_are_stored_and_applied() -> bool:
|
||||
var audio: Node = AudioFeedback.new()
|
||||
audio.set_volumes(0.8, 0.5, 0.2)
|
||||
var a := TestUtils.check(is_equal_approx(audio.master_volume, 0.8), "master volume stores")
|
||||
var b := TestUtils.check(is_equal_approx(audio.sfx_volume, 0.5), "sfx volume stores")
|
||||
var c := TestUtils.check(is_equal_approx(audio.ambience_volume, 0.2), "ambience volume stores")
|
||||
audio.set_volumes(3.0, -1.0, 0.5)
|
||||
var d := TestUtils.check(is_equal_approx(audio.master_volume, 1.0)
|
||||
and is_equal_approx(audio.sfx_volume, 0.0), "volumes clamp")
|
||||
audio.free()
|
||||
return a and b and c and d
|
||||
|
||||
func test_game_manager_wires_audio() -> bool:
|
||||
var src := FileAccess.get_file_as_string("res://src/game/game_manager.gd")
|
||||
var a := TestUtils.check(src.contains("audio.start_crowd_bed()"), "the bed starts with the shift")
|
||||
|
||||
@@ -81,7 +81,9 @@ func test_settings_defaults_present() -> bool:
|
||||
var ok := TestUtils.check(
|
||||
defaults.has("look_sensitivity") and defaults.has("hud_font_scale")
|
||||
and defaults.has("invert_y") and defaults.has("head_bob")
|
||||
and defaults.has("input_bindings"),
|
||||
and defaults.has("input_bindings")
|
||||
and defaults.has("master_volume") and defaults.has("sfx_volume")
|
||||
and defaults.has("ambience_volume") and defaults.has("captions_enabled"),
|
||||
"settings have documented defaults")
|
||||
save.free()
|
||||
return ok
|
||||
Reference in new issue
Block a user