What problem does it solve? Phaser games need a consistent way to store custom data on game objects, scenes, and globally, while reacting to state changes without tightly coupling game systems. This Skill provides the patterns and API knowledge to use Phaser's DataManager correctly across all three levels. ## Core Features & Use Cases - Three-Level Data Storage: Store key-value data per-GameObject (setData/getData), per-Scene (this.data), and globally across scenes (this.registry). - Event-Driven Reactivity: Listen to setdata, changedata, changedata-{key}, and removedata events to update UI or trigger game logic when values change. - Use Case: Build a HUD that automatically updates when the score changes by listening to 'changedata-score' on the global registry, while the game scene simply calls this.registry.set('score', value). ## Quick Start Ask the AI to show how to store player health on a sprite with setData and update a health bar whenever the changedata-hp event fires.