Refine ancient UI wording

This commit is contained in:
2026-06-19 01:39:19 +09:00
parent 0be2cadb9f
commit 539053c032
3 changed files with 132 additions and 132 deletions

View File

@@ -35,18 +35,18 @@ func _init() -> void:
"choice_label": ""
}
var result_text: String = scene._format_battle_result_summary()
_check_contains(failures, "reward section", result_text, "Rewards")
_check_contains(failures, "reward section", result_text, "Spoils")
_check_contains(failures, "gold reward", result_text, "Gold +100")
_check_contains(failures, "item reward", result_text, "Bean x2")
_check_contains(failures, "roster section", result_text, "Joined: Dian Wei")
_check_contains(failures, "growth section", result_text, "Cao Cao Lv.2")
_check_contains(failures, "campaign section", result_text, "Next: Sishui Gate")
_check_contains(failures, "next camp section", result_text, "Next Camp")
_check_contains(failures, "campaign section", result_text, "Next March: Sishui Gate")
_check_contains(failures, "next camp section", result_text, "Next Encampment")
_check_contains(failures, "next camp location", result_text, "Sishui Gate, 190 CE")
_check_contains(failures, "next camp talk", result_text, "Talk 3")
_check_contains(failures, "next camp shop", result_text, "Shop 6 goods")
_check_contains(failures, "next camp deploy", result_text, "Deploy 2/3")
_check_contains(failures, "next camp formation", result_text, "Formation 6 tiles")
_check_contains(failures, "next camp talk", result_text, "Council 3")
_check_contains(failures, "next camp shop", result_text, "Market 6 goods")
_check_contains(failures, "next camp deploy", result_text, "Muster 2/3")
_check_contains(failures, "next camp formation", result_text, "Array 6 tiles")
scene.battle_result_summary = {
"saved": false,
@@ -63,8 +63,8 @@ func _init() -> void:
"choice_label": ""
}
var failed_save_text: String = scene._format_battle_result_summary()
_check_contains(failures, "failed rewards", failed_save_text, "Not applied")
_check_contains(failures, "failed save", failed_save_text, "Campaign save failed")
_check_contains(failures, "failed rewards", failed_save_text, "Not recorded")
_check_contains(failures, "failed save", failed_save_text, "Chronicle seal failed")
scene.battle_result_summary = {
"saved": true,
@@ -77,13 +77,13 @@ func _init() -> void:
failures,
"pending choice prompt",
pending_choice_text,
"Select a campaign response"
"Select a response"
)
_check_not_contains(
failures,
"pending choice should wait for response before next camp preview",
pending_choice_text,
"Next Camp"
"Next Encampment"
)
scene.battle_result_summary = {

View File

@@ -1101,7 +1101,7 @@ func _check_scene_texture_loading(failures: Array[String]) -> void:
if not merchant_notice.contains("Camp Merchant") or not merchant_notice.contains("Roadside stores"):
failures.append("shop merchant notice should include name and flavor lines")
var camp_overview := scene._format_briefing_camp_overview_text(scene.state.get_briefing(), false)
for expected in ["Yingchuan, 184 CE", "Gold 0G", "Talk 3", "1 supply", "Shop 2 buy", "Deploy 2/2", "Formation 4 tiles", "Armory ready"]:
for expected in ["Yingchuan, 184 CE", "Treasury 0G", "Council 3", "1 supply", "Market 2 goods", "Muster 2/2", "Array 4 tiles", "Arsenal ready"]:
if not camp_overview.contains(expected):
failures.append("camp overview should include %s: %s" % [expected, camp_overview])
var bean: Dictionary = scene.state.get_item_def("bean")
@@ -1119,7 +1119,7 @@ func _check_scene_texture_loading(failures: Array[String]) -> void:
if not sell_detail.contains("Half-price sale") or not sell_detail.contains("Owned x2"):
failures.append("shop sell detail should summarize sale rule and owned count")
var bean_action := scene._format_shop_buy_action_text("bean", bean, int(bean.get("price", 0)))
if not bean_action.contains("Buy Bean") or not bean_action.contains("50G"):
if not bean_action.contains("Acquire Bean") or not bean_action.contains("50G"):
failures.append("shop buy action should be concise and priced")
var bean_tooltip := scene._format_shop_item_tooltip_text(
scene._format_shop_item_button_text("bean", bean, int(bean.get("price", 0)), 0),
@@ -1164,28 +1164,28 @@ func _check_hud_focus_text(failures: Array[String]) -> void:
var cao_text := scene._format_unit_focus_text(cao_cao, "Selected")
if not cao_text.contains("Command tactics"):
failures.append("Cao Cao HUD focus should describe command role: %s" % cao_text)
if not cao_text.contains("Move 4 (Foot)") or not cao_text.contains("Attack range 1-1"):
if not cao_text.contains("March 4 (Foot)") or not cao_text.contains("Strike reach 1-1"):
failures.append("Cao Cao HUD focus should clarify move/attack affordance: %s" % cao_text)
if not cao_text.contains("Action:") or not cao_text.contains("Move") or not cao_text.contains("Attack") or not cao_text.contains("Tactic") or not cao_text.contains("Equip") or not cao_text.contains("Wait"):
if not cao_text.contains("Order:") or not cao_text.contains("March") or not cao_text.contains("Strike") or not cao_text.contains("Tactic") or not cao_text.contains("Arms") or not cao_text.contains("Wait"):
failures.append("Cao Cao HUD focus should summarize available actions: %s" % cao_text)
if not cao_text.contains("Tile 2,4"):
if not cao_text.contains("Ground 2,4"):
failures.append("Cao Cao HUD focus should include current tile: %s" % cao_text)
if not cao_text.contains("Cost 1"):
if not cao_text.contains("March 1"):
failures.append("Cao Cao HUD focus should include terrain move cost: %s" % cao_text)
if not cao_text.contains("DEF +0"):
if not cao_text.contains("Guard +0"):
failures.append("Cao Cao HUD focus should include terrain defense: %s" % cao_text)
var xiahou_dun: Dictionary = scene.state.get_unit("xiahou_dun")
xiahou_dun["pos"] = Vector2i(3, 1)
var forest_text := scene._unit_current_terrain_text(xiahou_dun)
if not forest_text.contains("Forest") or not forest_text.contains("Cost 3"):
if not forest_text.contains("Forest") or not forest_text.contains("March 3"):
failures.append("Cavalry movement should use mounted move_type cost on forest: %s" % forest_text)
var archer: Dictionary = scene.state.get_unit("yellow_turban_3")
var archer_text := scene._format_unit_focus_text(archer, "Hover")
if not archer_text.contains("Ranged pressure"):
failures.append("Archer HUD focus should describe ranged role: %s" % archer_text)
if not archer_text.contains("Move 4 (Archer)") or not archer_text.contains("Attack range 2-2"):
if not archer_text.contains("March 4 (Archer)") or not archer_text.contains("Strike reach 2-2"):
failures.append("Archer HUD focus should clarify ranged attack affordance: %s" % archer_text)
if not archer_text.contains("Action: Enemy AI"):
if not archer_text.contains("Order: Enemy command"):
failures.append("Enemy archer HUD focus should describe enemy control: %s" % archer_text)
if not scene._unit_current_terrain_text(archer).contains("Plain"):
failures.append("Archer terrain text should reflect its current plain tile")
@@ -1212,10 +1212,10 @@ func _check_ancient_ui_theme(failures: Array[String]) -> void:
_check_panel_style_fill(failures, scene.dialogue_portrait_panel, "dialogue portrait panel", Color(0.055, 0.025, 0.016, 1.0))
_check_panel_style_fill(failures, scene.dialogue_speaker_panel, "dialogue speaker seal panel", Color(0.32, 0.025, 0.016, 1.0))
_check_panel_style_fill(failures, scene.dialogue_text_panel, "dialogue text scroll panel", Color(0.76, 0.64, 0.43, 0.98))
if scene.dialogue_continue_button == null or scene.dialogue_continue_button.text != "Continue":
failures.append("dialogue continue button should use ancient continue text")
if scene.dialogue_previous_button == null or scene.dialogue_previous_button.text != "Prior":
failures.append("dialogue previous button should use ancient prior text")
if scene.dialogue_continue_button == null or scene.dialogue_continue_button.text != "Advance":
failures.append("dialogue continue button should use ancient advance text")
if scene.dialogue_previous_button == null or scene.dialogue_previous_button.text != "Recall":
failures.append("dialogue previous button should use ancient recall text")
_check_panel_style_fill(failures, scene.result_panel, "result panel", Color(0.66, 0.55, 0.36, 0.97))
scene.free()