Commit Graph

14 Commits

Author SHA1 Message Date
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
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
5f33e16165 feat(xray): add XRayMachine component with plate slide-in animation 2026-04-17 14:25:04 +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
Steven Wroblewski
130317b516 feat(navigation): add NavigationArrow component for within-floor room navigation 2026-04-17 13:51:32 +02:00
Steven Wroblewski
22f4b23897 fix(objects): replace Area2D.input_event with _input() for reliable Android touch
Area2D.input_event is unreliable on Android with gl_compatibility renderer.
Switched to manual _input() hit detection using canvas_transform coordinate
conversion, consistent with the DragDropComponent approach already used in
this project.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-17 13:20:14 +02:00
Steven Wroblewski
6b0c41bbfd fix(core): resolve review findings in Sprint 3-4
- Fix SaveManager reset_game to use DirAccess.remove correctly
- Add null check for FileAccess.open in save_game
- Fix AudioManager crossfade tween callback chain
- Replace fragile absolute HUD path with relative onready
- Guard character position save against empty id
- Add GameState.has_character_position helper
- Emit room_changed signal after tween completes
- Add target_floor validation in ElevatorButton
- Persist audio settings via GameState
- Add class_name to RoomNavigator, AudioManager, HUD

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-17 12:22:27 +02:00
Steven Wroblewski
13db45bb04 feat(core): implement room navigation, character states, save/load and settings menu
- RoomNavigator autoload: smooth camera pan between floors
- Floor1 and Floor2 placeholder rooms with elevator buttons
- CharacterData Resource with State enum (HEALTHY/SICK/SLEEPING/TIRED)
- Character visual state feedback via ColorRect color
- Main scene loads saved state on startup
- SettingsMenu with music/sfx sliders and game reset
- HUD settings button to open SettingsMenu

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-17 12:17:56 +02:00
Steven Wroblewski
9a1e30d808 feat(poc): implement Sprint 1 proof of concept
- project.godot with autoload configuration
- Reception room with placeholder visuals
- Draggable Character with DragDropComponent
- Interactive flower object with bounce animation
- GameState, SaveManager, AudioManager, InputManager autoloads
- HUD with back button and music toggle

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-17 11:16:04 +02:00
Steven Wroblewski
d1b771ddcb chore: initialize project structure for Sprint 0 2026-04-17 10:23:48 +02:00