Antique Dingtao briefing flow

This commit is contained in:
2026-06-19 07:27:01 +09:00
parent b1fc4d4597
commit aae9073e22
5 changed files with 101 additions and 72 deletions

View File

@@ -418,7 +418,7 @@ func _check_dingtao_branch_camp_conversations(failures: Array[String]) -> void:
if not base_scene._camp_conversation_by_id(DINGTAO_PRESSED_CONVERSATION_ID).is_empty():
failures.append("Dingtao pressed supplies should be hidden without pressed flag")
var merchant: Dictionary = base_scene.state.get_shop_merchant()
if str(merchant.get("name", "")) != "Dingtao Field Sutler":
if str(merchant.get("name", "")) != "정도 야상":
failures.append("Dingtao shop merchant name should be present")
var merchant_lines: Array = merchant.get("lines", [])
if merchant_lines.size() < 2:

View File

@@ -30,6 +30,11 @@ const SCENARIO_BACKGROUNDS := [
"background_path": "res://art/backgrounds/puyang_raid_camp.png",
"label": "005 Puyang raid camp background"
},
{
"scenario_path": "res://data/scenarios/006_dingtao_counterattack.json",
"background_path": "res://art/backgrounds/qingzhou_village_road.png",
"label": "006 Dingtao field background"
},
{
"scenario_path": "res://data/scenarios/008_wan_castle_escape.json",
"background_path": "res://art/backgrounds/wan_castle_escape.png",
@@ -270,7 +275,7 @@ func _check_battle_visual_data(failures: Array[String]) -> void:
_check_camp_conversation(failures, dingtao_conversations[0], "dingtao_countercharge_council", "officer", "cao_cao")
_check_camp_conversation(failures, dingtao_conversations[1], "dingtao_dian_wei_roadblock", "officer", "dian_wei")
var dingtao_merchant := dingtao_state.get_shop_merchant()
if str(dingtao_merchant.get("name", "")) != "Dingtao Field Sutler":
if str(dingtao_merchant.get("name", "")) != "정도 야상":
failures.append("006 shop should expose Dingtao merchant name")
if (dingtao_merchant.get("lines", []) as Array).size() < 2:
failures.append("006 shop should expose merchant flavor lines")
@@ -2552,7 +2557,7 @@ func _check_scene_texture_loading(failures: Array[String]) -> void:
if not merchant_notice.contains("군막 상인") or not merchant_notice.contains("길가의 물자"):
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 ["영천, 중평 원년", "군자금 0G", "군막 회의 · 3건", "보급 대기 1건", "군상 물품 · 2종", "출진 명부 2/2", "진형 배치 4칸", "병장고 비축"]:
for expected in ["영천, 중평 원년", "군자금 0", "군막 회의 · 3건", "보급 대기 1건", "군상 물품 · 2종", "출진 명부 2명 중 2명", "진형 배치 4칸", "병장고 비축"]:
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")