Cabin demo: bump height 8×6 → 8×7 so beds fit

Beds are 1×2 (foot tile + head tile extending up), but the seeded cabin
was 8×6 with the north interior row at y=24 directly below the perimeter
wall at y=23. Bed headboards clipped into the wall.

Shift cabin origin up one row (44, 23 → 44, 22) and bump height (6 → 7)
so the interior is now 6×5 (rows 23..27). Bed at row 24 has its head
land in the new row 23 — interior floor, not wall.

Affected: _seed_phase5_demo_buildings and _prestamp_cabin_for_room_detector
(must stay in sync). Bottom wall + door + workbench + bed + torch + crate
positions all unchanged in absolute coords — only the top wall moved up.
Interior crate now sits at (50, 23) instead of (50, 24); comment updated.

The user mentioned eventually wanting no premade buildings at all. That's
a future change (probably Phase 19 onboarding or Phase 20 polish); kept
out of scope.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
megaproxy 2026-05-15 19:23:41 +01:00
parent c78962a432
commit 6abd53c6f5

View file

@ -436,15 +436,18 @@ func _seed_phase5_demo_buildings() -> void:
# Pre-queue a furnished cabin so the construction loop runs end-to-end
# without needing player-paint UI (deferred to Phase 17).
#
# Layout — 8×6 stone cabin at (44, 23), south door, wood floor inside:
# Layout — 8×7 stone cabin at (44, 22), south door, wood floor inside:
# • Perimeter walls (skipping the door slot)
# • Door at (47, 28) — middle of the south wall
# • Wood floor across the 6×4 interior
# • Wood floor across the 6×5 interior (rows 23..27)
# • One pre-built crate inside (north-east corner of the interior)
# • Two stockpile-target crates outside (Phase 4 hauling target)
var origin := Vector2i(44, 23)
# Bumped from 8×6 → 8×7 so the north interior row (23) is free for the
# bed sprites to extend into (beds are 1×2, anchored at the foot, head
# extends one tile up). Previously the headboards clipped into the wall.
var origin := Vector2i(44, 22)
var w := 8
var h := 6
var h := 7
var door_x := w / 2 - 1 # 3 → tile (47, y_bottom). Centred door.
var door_tile := origin + Vector2i(door_x, h - 1)
@ -476,7 +479,7 @@ func _seed_phase5_demo_buildings() -> void:
# Auto-built so the cabin shows furnished on first frame.
var interior_crate: Crate = CRATE_SCENE.instantiate()
add_child(interior_crate)
interior_crate.setup(origin + Vector2i(w - 2, 1)) # (50, 24)
interior_crate.setup(origin + Vector2i(w - 2, 1)) # (50, 23) — top-right of interior
while interior_crate.is_buildable():
interior_crate.on_build_tick()
@ -877,9 +880,10 @@ func _apply_season_tint(season: StringName) -> void:
# Layout mirrors _seed_phase5_demo_buildings: 8×6 cabin at (44, 23),
# door at (47, 28), 6×4 wood floor interior.
func _prestamp_cabin_for_room_detector() -> void:
var origin := Vector2i(44, 23)
# Matches _seed_phase5_demo_buildings: 8×7 cabin at (44, 22), 6×5 interior.
var origin := Vector2i(44, 22)
var w := 8
var h := 6
var h := 7
var door_x := w / 2 - 1 # 3 → tile x=47
var door_tile := origin + Vector2i(door_x, h - 1)