Show auto attack origins on the map
This commit is contained in:
@@ -613,6 +613,26 @@ func _check_scene_auto_attack_safe_origin_and_counter_preview(failures: Array[St
|
||||
failures.append("safe auto attack marker should expose no counter risk: %s" % str(safe_marker))
|
||||
if str(safe_marker.get("kind", "")) != "advance":
|
||||
failures.append("safe auto attack marker should use advance color: %s" % str(safe_marker))
|
||||
var origin_marker_rect: Rect2 = scene._auto_attack_origin_marker_rect(safe_marker.get("origin", Vector2i.ZERO))
|
||||
if not scene._rect_for_cell(Vector2i(3, 3)).encloses(origin_marker_rect):
|
||||
failures.append("auto attack origin marker should fit inside the chosen origin cell: %s" % str(origin_marker_rect))
|
||||
var route_points: PackedVector2Array = scene._auto_attack_route_points(safe_marker.get("origin", Vector2i.ZERO), safe_marker.get("cell", Vector2i.ZERO))
|
||||
if route_points.size() != 2:
|
||||
failures.append("auto attack route should expose two drawable points: %s" % str(route_points))
|
||||
elif not scene._rect_for_cell(Vector2i(3, 3)).has_point(route_points[0]) or not scene._rect_for_cell(Vector2i(5, 3)).has_point(route_points[1]):
|
||||
failures.append("auto attack route should connect the origin and target cells: %s" % str(route_points))
|
||||
var far_route_points: PackedVector2Array = scene._auto_attack_route_points(Vector2i(-1, -1), safe_marker.get("cell", Vector2i.ZERO))
|
||||
if not far_route_points.is_empty():
|
||||
failures.append("auto attack route should not draw from invalid off-board origins: %s" % str(far_route_points))
|
||||
|
||||
scene.basic_attack_targeting = true
|
||||
scene.attack_cells.clear()
|
||||
scene.attack_cells.append(Vector2i(5, 3))
|
||||
for marker in scene._target_selection_marker_entries():
|
||||
if bool(marker.get("requires_move", false)):
|
||||
failures.append("formal attack targeting should not show move+attack origin routes: %s" % str(marker))
|
||||
scene.basic_attack_targeting = false
|
||||
scene._refresh_ranges()
|
||||
|
||||
scene.hover_cell = Vector2i(5, 3)
|
||||
var safe_badge := scene._target_preview_badge()
|
||||
|
||||
Reference in New Issue
Block a user