From 9bfe8aa154cd9574378d2d7832e9a9abb8a4068f Mon Sep 17 00:00:00 2001 From: Wickedness Date: Sat, 20 Jun 2026 11:36:33 +0900 Subject: [PATCH] Hide raw grid coordinates in battle UI --- scripts/scenes/battle_scene.gd | 16 ++++------------ tools/smoke_post_move_action_flow.gd | 6 ++++-- tools/smoke_visual_assets.gd | 4 +++- 3 files changed, 11 insertions(+), 15 deletions(-) diff --git a/scripts/scenes/battle_scene.gd b/scripts/scenes/battle_scene.gd index 1c91551..052dc7a 100644 --- a/scripts/scenes/battle_scene.gd +++ b/scripts/scenes/battle_scene.gd @@ -8270,7 +8270,7 @@ func _format_auto_attack_target_hint(preview: Dictionary) -> String: var parts: Array[String] = ["이동 후 공격"] var origin: Vector2i = preview.get("origin", Vector2i(-1, -1)) if state.is_inside(origin): - parts.append("진입 위치 %d,%d" % [origin.x + 1, origin.y + 1]) + parts.append("진입 지형 %s" % _battle_zone_label(origin)) parts.append("피해 %d, 명중 %d%%" % [ int(preview.get("damage", 0)), int(preview.get("hit_chance", 0)) @@ -10097,15 +10097,14 @@ func _format_auto_attack_forecast_text(selected: Dictionary, target: Dictionary) int(preview.get("counter_hit_chance", 0)), counter_defeat ] - return "전황: 진격 공격\n피해 %d%s, 명중 %d%%, 적 병력 %d/%d.%s\n진입 위치 %d,%d, 이동 %d칸%s" % [ + return "전황: 진격 공격\n피해 %d%s, 명중 %d%%, 적 병력 %d/%d.%s\n진입 지형 %s, 이동 %d칸%s" % [ int(preview.get("damage", 0)), directional_text, int(preview.get("hit_chance", 0)), int(preview.get("target_hp_after", 0)), int(target.get("max_hp", 1)), defeat_text, - origin.x + 1, - origin.y + 1, + _battle_zone_label(origin), move_distance, counter_text ] @@ -14409,7 +14408,7 @@ func _format_formation_unit_tooltip(unit: Dictionary, selected: bool) -> String: int(unit.get("level", 1)), _unit_class_display_name(unit) ], - "현재 위치: %s" % _format_cell_label(unit.get("pos", Vector2i.ZERO)) + "현재 배치: %s" % _battle_zone_label(unit.get("pos", Vector2i.ZERO)) ] if selected: lines.append("전장도의 금빛 진형 칸을 클릭하면 이 장수를 옮깁니다.") @@ -14418,13 +14417,6 @@ func _format_formation_unit_tooltip(unit: Dictionary, selected: bool) -> String: return _join_strings(lines, "\n") -func _format_cell_label(value) -> String: - var cell := _cell_label_value_to_vector(value) - if cell.x >= 0 and cell.y >= 0: - return "%d,%d" % [cell.x + 1, cell.y + 1] - return "-" - - func _cell_label_value_to_vector(value) -> Vector2i: if typeof(value) == TYPE_VECTOR2I: return value diff --git a/tools/smoke_post_move_action_flow.gd b/tools/smoke_post_move_action_flow.gd index 10e8396..063c98e 100644 --- a/tools/smoke_post_move_action_flow.gd +++ b/tools/smoke_post_move_action_flow.gd @@ -807,8 +807,10 @@ func _check_scene_auto_attack_safe_origin_and_counter_preview(failures: Array[St var safe_detail := str(scene.forecast_label.tooltip_text) if not safe_forecast.contains("진격 공격") or safe_forecast.contains("4,4") or safe_forecast.contains("사거리 밖"): failures.append("safe auto attack forecast should summarize without raw origin coordinates: %s" % safe_forecast) - if not safe_detail.contains("진입 위치 4,4"): - failures.append("safe auto attack tooltip should keep the chosen advance origin: %s" % safe_detail) + if safe_detail.contains("4,4") or safe_detail.contains("진입 위치"): + failures.append("safe auto attack tooltip should hide raw origin coordinates: %s" % safe_detail) + if not safe_detail.contains("진입 지형"): + failures.append("safe auto attack tooltip should keep the chosen advance origin as terrain context: %s" % safe_detail) scene._handle_board_click(_screen_for_cell(Vector2i(5, 3))) cao_cao = scene.state.get_unit("cao_cao") diff --git a/tools/smoke_visual_assets.gd b/tools/smoke_visual_assets.gd index 69dd5a2..0d9a378 100644 --- a/tools/smoke_visual_assets.gd +++ b/tools/smoke_visual_assets.gd @@ -3174,8 +3174,10 @@ func _check_scene_texture_loading(failures: Array[String]) -> void: failures.append("formation rows should show officer name and compact placement badges: %s" % formation_visible_text) if formation_visible_text.contains("좌표") or formation_visible_text.contains("전장도의") or formation_visible_text.contains("클릭하면"): failures.append("formation rows should keep placement instructions in hover text: %s" % formation_visible_text) - if not formation_tooltips.contains("금빛 진형 칸") or not formation_tooltips.contains("현재 위치"): + if not formation_tooltips.contains("금빛 진형 칸") or not formation_tooltips.contains("현재 배치"): failures.append("formation row tooltip should retain placement instructions: %s" % formation_tooltips) + if formation_tooltips.contains("2,7") or formation_tooltips.contains("1,6"): + failures.append("formation row tooltip should describe placement by battlefield zone, not raw coordinates: %s" % formation_tooltips) if not _has_descendant_texture(scene.formation_list): failures.append("formation rows should reuse officer portrait artwork") if scene._format_formation_unit_button_text(scene.state.get_unit("cao_cao")).contains(","):