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 tight coupling between 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 build reactive UI and game logic without polling. - Helpers and Utilities: Use incData, toggleData, merge, query, pop, and freeze for common state operations, plus localStorage persistence patterns. - Use Case: Build a HUD scene that watches the global registry for score changes set by the gameplay scene, updating the score text automatically whenever the value changes. ## Quick Start Ask the AI to store player health on a sprite with setData and update a health bar whenever the changedata-hp event fires.