Commit Graph

71 Commits

Author SHA1 Message Date
Steven Wroblewski 1a9d916293 feat(character): add outfit layer API (set/clear/get_outfit per layer 1-3) 2026-05-08 22:07:53 +02:00
Steven Wroblewski 9be67c8dfe feat(character): add animation state API (set/get_animation_state) 2026-05-08 22:02:59 +02:00
Steven Wroblewski 15ac8666f8 feat(character-data): add outfit array field for three outfit layer slots 2026-05-08 22:01:18 +02:00
Steven Wroblewski 2c576ad419 feat(character): add AnimatedSprite2D, OutfitLayers, HandSlots, SnapReceiver to Character scene
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-08 21:59:30 +02:00
Steven Wroblewski 80cecf732d feat(snap-receiver): add SnapReceiver stub (full implementation in sprint-15 task 8) 2026-05-08 21:57:47 +02:00
Steven Wroblewski cc5f205a7e feat(snap-point): add SnapPoint node with pose, baby_only filter, and occupant tracking
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-08 21:56:50 +02:00
Steven Wroblewski 65e17caaf9 docs: add comprehensive Game Design Document (GDD) covering all systems and sprints 15-22 2026-05-07 21:58:34 +02:00
Steven Wroblewski 325dc97645 chore(tooling): merge GUT v9.6.0 TDD setup — 42 unit tests for GameState, RoomNavigator, GiftBox 2026-04-17 23:05:24 +02:00
Steven Wroblewski 100fcef593 feat(home): merge Sprint 14 — Zuhause & Garten area with HomeButton, GiftBox, TeaPot, GardenParty 2026-04-17 23:05:15 +02:00
Steven Wroblewski a89238b08e docs(claude): update testing conventions to reflect GUT TDD workflow
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-17 22:49:57 +02:00
Steven Wroblewski d905f837e8 feat(gift-box): add GiftBox scene and FSM implementation 2026-04-17 22:45:44 +02:00
Steven Wroblewski 1e445263a7 test(gift-box): add unit tests for CLOSED/OPENING/OPEN state machine 2026-04-17 22:45:26 +02:00
Steven Wroblewski 4d74f19490 fix(room-navigator): sync implementation with Sprint 14 canonical version 2026-04-17 22:43:26 +02:00
Steven Wroblewski 286498804d test(room-navigator): add missing is_at_home and go_to_hospital tests
Adds 7 new test cases covering home/hospital navigation state:
- is_at_home() initial state and transitions
- go_to_home() with idempotence check
- go_to_hospital() state restoration and guards
- is_at_home flag cleanup on room navigation

Implements corresponding methods in RoomNavigator:
- is_at_home(): Returns home state
- go_to_home(): Navigates to home (0,0) and saves hospital position
- go_to_hospital(): Returns to previously saved hospital location
- _go_to_room_internal(): Helper to avoid flag interference

All 34 tests passing.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-17 22:41:59 +02:00
Steven Wroblewski 297b57a3c1 test(room-navigator): add unit tests for floor/room state and camera navigation 2026-04-17 22:39:09 +02:00
Steven Wroblewski e3a93d3c52 test(game-state): add unit tests for character positions, object states, and save round-trip 2026-04-17 22:36:53 +02:00
Steven Wroblewski 978c8a5c80 chore(tooling): add GUT test infrastructure and smoke test
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-17 22:35:08 +02:00
Steven Wroblewski c8fb2d959f chore(tooling): install GUT v9.6.0 test framework
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-17 22:33:12 +02:00
Steven Wroblewski 257ff18a8b docs: add GUT TDD setup plan 2026-04-17 22:22:48 +02:00
Steven Wroblewski d0ea95ea47 feat(main): integrate Home/GardenParty below Floor0 with bidirectional navigation
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-17 21:25:48 +02:00
Steven Wroblewski 0247c30d45 feat(garden): add GardenParty scene with table, gifts, teapot, balloons, and return button 2026-04-17 21:24:17 +02:00
Steven Wroblewski a4620a7f14 feat(teapot): add TeaPot with tap-to-pour tilt animation 2026-04-17 21:23:03 +02:00
Steven Wroblewski da3c934e5d feat(gift-box): add GiftBox with tap-to-open lid animation and gift reveal 2026-04-17 21:21:39 +02:00
Steven Wroblewski 033d38887f fix(home-button): add busy guard against double-tap during navigation transition 2026-04-17 21:20:23 +02:00
Steven Wroblewski 1a5d7918ab feat(home-button): add HomeButton component for hospital/garden navigation 2026-04-17 21:18:52 +02:00
Steven Wroblewski e7d0036c61 fix(navigator): kill active tween before starting new navigation to prevent camera jitter 2026-04-17 21:17:58 +02:00
Steven Wroblewski 819f18b64c feat(navigator): add go_to_home / go_to_hospital with home_entered / hospital_entered signals 2026-04-17 21:16:07 +02:00
Steven Wroblewski 9f0ed163ae docs: add Sprint 14 and earlier plan files 2026-04-17 21:15:07 +02:00
Steven Wroblewski d897d84831 chore: add .worktrees/ to .gitignore 2026-04-17 21:14:26 +02:00
Steven Wroblewski 34c59710d5 docs: mark Sprint 11-13 as complete 2026-04-17 19:39:45 +02:00
Steven Wroblewski af2fd51ab2 feat(floor2): wire up all three second-floor rooms with navigation arrows 2026-04-17 16:36:56 +02:00
Steven Wroblewski 5f7ef73d4f feat(nursery): add Nursery room with rail and three rocking cradles 2026-04-17 16:35:15 +02:00
Steven Wroblewski 2303195207 feat(delivery): add DeliveryRoom with animated DeliveryBed 2026-04-17 16:34:22 +02:00
Steven Wroblewski c1f480ba69 feat(ultrasound): add Ultrasound room with exam table and UltrasoundMachine 2026-04-17 16:33:10 +02:00
Steven Wroblewski 5ea3a52ed4 feat(nursery): add Cradle component with pendulum rocking animation 2026-04-17 16:31:49 +02:00
Steven Wroblewski dfdf40ba8d feat(delivery): add DeliveryBed component with mama-arrives baby-appears animation 2026-04-17 16:30:31 +02:00
Steven Wroblewski a94cf61b79 feat(ultrasound): add UltrasoundMachine component with continuous heartbeat animation 2026-04-17 16:29:10 +02:00
Steven Wroblewski a8bc3123ac docs: add Sprint 11-13 implementation plan 2026-04-17 16:28:32 +02:00
Steven Wroblewski 92f65a2ab9 docs: mark Sprint 8-10 as complete 2026-04-17 16:18:07 +02:00
Steven Wroblewski e4ecae376e feat(floor1): wire up all four first-floor rooms with horizontal navigation arrows 2026-04-17 14:33:55 +02:00
Steven Wroblewski 9b91e78c20 feat(patientroom): add Patient Room with two beds, TV, and bedside table 2026-04-17 14:32:07 +02:00
Steven Wroblewski 8773ecfa6a feat(lab): add Lab room with bench, sink, and interactive lab equipment 2026-04-17 14:30:31 +02:00
Steven Wroblewski c1f742ae61 feat(pharmacy): add Pharmacy room with double medicine shelf and positive medicine objects 2026-04-17 14:28:48 +02:00
Steven Wroblewski e14303da9b feat(xray): add XRay Room scene with exam table and XRayMachine 2026-04-17 14:26:14 +02:00
Steven Wroblewski 5f33e16165 feat(xray): add XRayMachine component with plate slide-in animation 2026-04-17 14:25:04 +02:00
Steven Wroblewski 353efc100f docs: mark Sprint 5-7 as complete 2026-04-17 14:14:39 +02:00
Steven Wroblewski c4e33aef62 fix(emergency): explicitly set ambulance trigger_floor and trigger_room to prevent silent failure on room reorder 2026-04-17 14:01:56 +02:00
Steven Wroblewski c0c86b0998 feat(floor0): wire up all four ground-floor rooms with horizontal navigation arrows 2026-04-17 13:59:01 +02:00
Steven Wroblewski cc44519d62 feat(emergency): add Emergency Room scene with ambulance bay, medical table, and interactive objects 2026-04-17 13:57:30 +02:00
Steven Wroblewski 045aa8c3b6 feat(ambulance): add Ambulance component with drive-in/out animation triggered by room navigation
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-17 13:56:11 +02:00