mirror of
https://github.com/cliffe/BreakEscape.git
synced 2026-02-21 19:28:03 +00:00
User correctly pointed out the loading UI was over-engineered. ## Simplifications: ### Before (over-complicated): - Complex timeline management - Success/failure flash effects (green/red) - Spinner alternatives - Stored references on sprites - Timeline cleanup logic - ~150 lines of code ### After (simple): - startThrob(sprite) - Blue tint + pulsing alpha - stopThrob(sprite) - Kill tweens, reset - ~20 lines of code ## Why This Works: 1. **Door sprites get removed anyway** when they open 2. **Container items transition** to next state automatically 3. **Game already shows alerts** for success/error 4. **Only need feedback** during the ~100-300ms API call ## API Changes: - showUnlockLoading() → startThrob() - clearUnlockLoading() → stopThrob() - No success/failure parameter needed - No stored references to clean up ## Result: From 150+ lines down to ~30 lines total. Same UX, much simpler implementation. User feedback: "Just set the door or item to throb, and remove when the loading finishes (the door sprite is removed anyway), and if it's a container, just follow the unlock with a removal of the animation."