Surface key battle events as command notices

This commit is contained in:
2026-06-20 13:36:34 +09:00
parent 323d399f0a
commit 960db49b3a
2 changed files with 58 additions and 0 deletions

View File

@@ -3669,6 +3669,29 @@ func _check_ancient_ui_theme(failures: Array[String]) -> void:
failures.append("player turn notice should show generated visual command icons")
elif not _has_descendant_texture(scene.objective_notice_icon_strip):
failures.append("player turn notice icons should use generated textures")
if scene.objective_notice_panel != null:
scene.objective_notice_panel.visible = false
scene.battle_started = false
scene._on_log_added("동쪽 들판에서 황건 잔병이 합류했다.")
if scene.objective_notice_panel != null and scene.objective_notice_panel.visible:
failures.append("pre-battle event-like logs should not create battlefield command notices")
scene.battle_started = true
scene._on_log_added("조조군이 마을 앞 유인선에 닿았다.")
if scene.objective_notice_label == null or not scene.objective_notice_label.text.contains("적 경계 변화") or not scene.objective_notice_label.text.contains("유인선"):
failures.append("lure-line event log should become a readable battlefield notice: %s" % ("" if scene.objective_notice_label == null else scene.objective_notice_label.text))
if scene.objective_notice_icon_strip == null or not scene.objective_notice_icon_strip.visible or not _has_descendant_texture(scene.objective_notice_icon_strip):
failures.append("lure-line event notice should show generated visual icons")
scene._on_log_added("동쪽 들판에서 황건 잔병이 합류했다.")
if scene.objective_notice_label == null or not scene.objective_notice_label.text.contains("적 증원") or not scene.objective_notice_label.text.contains("잔병"):
failures.append("reinforcement event log should become a battlefield notice: %s" % ("" if scene.objective_notice_label == null else scene.objective_notice_label.text))
if scene.objective_notice_icon_strip == null or scene.objective_notice_icon_strip.get_child_count() < 2:
failures.append("reinforcement event notice should include threat and warning icons")
scene._on_log_added("북쪽 숲 보급고를 거두었다.")
if scene.objective_notice_label == null or not scene.objective_notice_label.text.contains("보급 확보") or not scene.objective_notice_label.text.contains("보급고"):
failures.append("supply event log should become a battlefield notice: %s" % ("" if scene.objective_notice_label == null else scene.objective_notice_label.text))
scene._on_log_added("조조군이 동쪽 성채에 발을 들였다.")
if scene.objective_notice_label == null or not scene.objective_notice_label.text.contains("거점 변화") or not scene.objective_notice_label.text.contains("성채"):
failures.append("castle event log should become a battlefield notice: %s" % ("" if scene.objective_notice_label == null else scene.objective_notice_label.text))
var localized_lines := scene._normalized_dialogue_lines([{"speaker": "Cao Cao", "display_speaker": "조조", "text": "군령을 전하라."}])
if localized_lines.is_empty() or str((localized_lines[0] as Dictionary).get("speaker", "")) != "조조":
failures.append("dialogue normalization should preserve display_speaker for localized names")