Commit Graph

168 Commits

Author SHA1 Message Date
1c23a75e16 Added kitchen cabinets 2025-11-26 15:24:22 +01:00
43c5052c54 Moved Placeholder Folder to the right location 2025-11-26 13:04:41 +01:00
97c25737b1 Asset dump 2025-11-26 11:59:06 +01:00
9aafafece4 Added the Rube Goldberg MAchine 2025-11-25 20:41:14 +01:00
17d48c5812 Flower and belt puzzle steps added (WIP, just skeleton) 2025-11-25 19:42:40 +01:00
c5736f836a Disabled Saves, moved Folders adn renamed Data files, and added a state machine to the cookie puzzle 2025-11-25 16:02:55 +01:00
57be1a941c Added Cement Factory Puzzle Data 2025-11-25 03:52:47 +01:00
9d936c06ac Merge branch 'main' into DamianBranch 2025-11-24 17:09:06 +01:00
86c1df55f2 First pass over MPV for the cement-statue-sticker minigame (#63)
Co-authored-by: Michal Pikulski <michal.a.pikulski@gmail.com>
Co-authored-by: Michal Pikulski <michal@foolhardyhorizons.com>
Reviewed-on: #63
2025-11-24 14:55:45 +00:00
a05baeb957 Merge branch 'main' into DamianBranch 2025-11-23 22:35:06 +01:00
a40c73a90d Placeholders for the cement factory 2025-11-23 22:34:51 +01:00
311d6066be Added new boostie bois icon 2025-11-20 17:06:05 +01:00
058af331e0 pooper_minigame (#62)
Co-authored-by: Michal Pikulski <michal.a.pikulski@gmail.com>
Reviewed-on: #62
2025-11-20 15:16:57 +00:00
ce110d23ae Modified the overworld scene and also the cement factory prefab. 2025-11-19 21:07:48 +01:00
f878521dab Added butterfly bottle 2025-11-18 17:06:06 +01:00
219f2239a1 Added number of photos scoring 2025-11-18 11:33:16 +01:00
DamianCorazza
19be64a75f Butterfly Distraction 2025-11-14 00:04:33 +01:00
c3639bbb93 Added the Flying Butterfly WIP 2025-11-12 16:25:32 +01:00
MacBuilder
d647bb5707 Target eliminated, good job 47 2025-11-10 15:55:28 +01:00
e27bb7bfb6 Refactor interactions, introduce template-method lifecycle management, work on save-load system (#51)
# Lifecycle Management & Save System Revamp

## Overview
Complete overhaul of game lifecycle management, interactable system, and save/load architecture. Introduces centralized `ManagedBehaviour` base class for consistent initialization ordering and lifecycle hooks across all systems.

## Core Architecture

### New Lifecycle System
- **`LifecycleManager`**: Centralized coordinator for all managed objects
- **`ManagedBehaviour`**: Base class replacing ad-hoc initialization patterns
  - `OnManagedAwake()`: Priority-based initialization (0-100, lower = earlier)
  - `OnSceneReady()`: Scene-specific setup after managers ready
  - Replaces `BootCompletionService` (deleted)
- **Priority groups**: Infrastructure (0-20) → Game Systems (30-50) → Data (60-80) → UI/Gameplay (90-100)
- **Editor support**: `EditorLifecycleBootstrap` ensures lifecycle works in editor mode

### Unified SaveID System
- Consistent format: `{ParentName}_{ComponentType}`
- Auto-registration via `AutoRegisterForSave = true`
- New `DebugSaveIds` editor tool for inspection

## Save/Load Improvements

### Enhanced State Management
- **Extended SaveLoadData**: Unlocked minigames, card collection states, combination items, slot occupancy
- **Async loading**: `ApplyCardCollectionState()` waits for card definitions before restoring
- **New `SaveablePlayableDirector`**: Timeline sequences save/restore playback state
- **Fixed race conditions**: Proper initialization ordering prevents data corruption

## Interactable & Pickup System

- Migrated to `OnManagedAwake()` for consistent initialization
- Template method pattern for state restoration (`RestoreInteractionState()`)
- Fixed combination item save/load bugs (items in slots vs. follower hand)
- Dynamic spawning support for combined items on load
- **Breaking**: `Interactable.Awake()` now sealed, use `OnManagedAwake()` instead

##  UI System Changes

- **AlbumViewPage** and **BoosterNotificationDot**: Migrated to `ManagedBehaviour`
- **Fixed menu persistence bug**: Menus no longer reappear after scene transitions
- **Pause Menu**: Now reacts to all scene loads (not just first scene)
- **Orientation Enforcer**: Enforces per-scene via `SceneManagementService`
- **Loading Screen**: Integrated with new lifecycle

## ⚠️ Breaking Changes

1. **`BootCompletionService` removed** → Use `ManagedBehaviour.OnManagedAwake()` with priority
2. **`Interactable.Awake()` sealed** → Override `OnManagedAwake()` instead
3. **SaveID format changed** → Now `{ParentName}_{ComponentType}` consistently
4. **MonoBehaviours needing init ordering** → Must inherit from `ManagedBehaviour`

Co-authored-by: Michal Pikulski <michal.a.pikulski@gmail.com>
Co-authored-by: Michal Pikulski <michal@foolhardyhorizons.com>
Reviewed-on: #51
2025-11-07 15:38:31 +00:00
5c4b8825ee Card Creation 2025-11-07 13:57:36 +01:00
355c3fabc8 Merge branch 'main' into DamianBranch 2025-11-07 13:35:19 +01:00
d7d9d74a7b Change to Card NamePlaque, and Card Album Prefabs 2025-11-07 13:34:30 +01:00
6aacd9234c ExtraConfirmations Screens and WIP for the diving minigame end screen 2025-11-07 13:01:22 +01:00
DamianCorazza
3a1eef8a12 Cut up the Prefab and reset some pivots 2025-11-06 23:43:38 +01:00
153ab2bb08 Merge branch 'main' into DamianBranch 2025-11-06 21:31:12 +00:00
journaliciouz
f576dad677 New and crispy apple map 2025-11-06 22:28:38 +01:00
DamianCorazza
3ac90bea1e Added New Card Graphics 2025-11-06 22:17:43 +01:00
69e628ceb8 Added New art for level selection 2025-11-06 19:22:26 +01:00
2b3154c22b Level Change and Confirmation popups art change 2025-11-06 14:11:52 +01:00
DamianCorazza
1442a2426b Changed ScrapBook Icon 2025-11-05 23:14:27 +01:00
629b137421 Added New Map TExture 2025-11-05 17:46:56 +01:00
0dc3f3e803 Added New Menu Background Textures 2025-11-05 17:25:26 +01:00
journaliciouz
949bd6d32b You can close the card album again 2025-11-05 16:36:00 +01:00
1a6324b054 Clarifying name changes for cards 2025-11-05 12:59:57 +01:00
035fdda2be Added the textures for a smaller version of the scrapbook. 2025-11-04 18:51:42 +01:00
DamianCorazza
d00d20121c WIP Moving work from home to the office. 2025-11-04 12:21:02 +01:00
DamianCorazza
7051267c33 ScrapBookPrefab and textures 2025-11-04 04:59:33 +01:00
DamianCorazza
eb63086466 Added New Glow for the Combination of items, changed the position of gardener dialogue, changed position of the balls, changed soundbird cameraswitcher, changed hammerbird lurespot sprite order. 2025-11-03 11:43:05 +01:00
Michal Pikulski
a020e9af04 Update level select menu with icons and scrollable view 2025-10-29 14:37:11 +01:00
d5d01e46ea Test the new cards and organized card textures in folders 2025-10-29 13:23:55 +01:00
2ce6452d90 Trying to make text Warp 2025-10-28 19:10:56 +01:00
7743fbdd8f Merge branch 'main' into DamianCardStyles 2025-10-28 09:51:42 +00:00
2a18489f44 Added A new tiles material and the two levels to the build 2025-10-28 10:49:37 +01:00
3a35024fbf WIP Added New Tiles (not working properly now) 2025-10-27 18:10:38 +01:00
Michal Pikulski
fdfddaec95 Make combine animations and smacks ground Pulve 2025-10-27 14:43:24 +01:00
2524d4dcdd WIP Card Reformatting 2025-10-24 18:07:18 +02:00
2e05e500c9 Added the art for cards 2025-10-23 16:55:01 +02:00
c80089e5fc Pushed app icons to get Steve Jobs off my back 2025-10-22 10:58:51 +02:00
DamianCorazza
0a240da9a7 Merge branch 'main' of https://homelab.tailf7f81b.ts.net/tschesky/AppleHillsProduction 2025-10-21 14:54:08 +02:00