Strengthen battle UI text legibility

This commit is contained in:
2026-06-20 10:33:54 +09:00
parent 3ef61316e2
commit afba4197b0
2 changed files with 15 additions and 4 deletions

View File

@@ -3293,6 +3293,10 @@ func _check_core_text_visibility(failures: Array[String]) -> void:
failures.append("could not load battle scene state for text visibility")
scene.free()
return
scene._show_briefing()
_check_readable_text_control(failures, scene.briefing_title_label, "briefing title", 18)
_check_readable_text_control(failures, scene.briefing_objective_label, "briefing objective", 12)
_check_readable_text_control(failures, scene.briefing_label, "briefing body", 12)
scene._hide_opening_prologue()
scene.battle_started = true
scene.briefing_panel.visible = false
@@ -3301,6 +3305,11 @@ func _check_core_text_visibility(failures: Array[String]) -> void:
_check_readable_text_control(failures, scene.status_label, "top turn status", 11)
_check_readable_text_control(failures, scene.objective_label, "top objective", 11)
_check_readable_text_control(failures, scene.campaign_status_label, "top campaign status", 11)
scene._show_command_notice("군령 갱신", "목표: 성채를 장악하라.\n주의: 조조가 퇴각하면 패한다.")
_check_readable_text_control(failures, scene.objective_notice_label, "command notice", 13)
_check_readable_text_control(failures, scene.auto_end_turn_prompt_label, "auto end turn prompt", 13)
_check_readable_text_control(failures, scene.auto_end_turn_yes_button, "auto end turn confirm", 12)
_check_readable_text_control(failures, scene.auto_end_turn_no_button, "auto end turn decline", 12)
var lines := scene._normalized_dialogue_lines([{"speaker": "Cao Cao", "display_speaker": "조조", "text": "영천으로 향한다. 백성이 빠져나갈 길을 연다."}])
scene.active_dialogue_lines = lines
@@ -3334,11 +3343,13 @@ func _check_readable_text_control(failures: Array[String], control: Control, con
var outline_size := control.get_theme_constant("outline_size")
if outline_size < 1:
failures.append("%s text should carry a thin outline for image-backed panels" % context)
if font_size >= 13 and outline_size < 2:
failures.append("%s text should carry a stronger outline on generated panels: %d" % [context, outline_size])
var outline_color := control.get_theme_color("font_outline_color")
if outline_color.a < 0.25:
failures.append("%s outline should be visible enough: %s" % [context, str(outline_color)])
var shadow_color := control.get_theme_color("font_shadow_color")
if shadow_color.a < 0.20:
if shadow_color.a < 0.32:
failures.append("%s text should keep a soft shadow: %s" % [context, str(shadow_color)])