- Introduce the Marketplace system, managed by MarketManager, to facilitate buying and selling items, enhancing player engagement and resource management. - Update GameStateManager to integrate the new MarketManager, ensuring seamless data handling and persistence for market transactions. - Add specifications for the Marketplace UI, detailing layout, functionality, and conditions of acceptance to ensure a robust user experience. - Refactor existing components to support the new marketplace features, including dynamic inventory updates and currency management. - Enhance testing coverage for the MarketManager and MarketplaceScreen to validate functionality and integration within the game architecture.
947 B
947 B
| description | globs | alwaysApply |
|---|---|---|
| Standards for gameplay logic, AI, and Effect processing. | src/systems/*.js, src/managers/*.js** | false |
Logic Systems Standards
Effect Processor
- The Rulebook: All game state mutations (Damage, Move, Spawn) MUST go through EffectProcessor.process().
- Statelessness: The processor should not hold state. It acts on the Unit and Grid passed to it.
- Schema: Effects must adhere to the EffectDefinition interface (Type + Params).
AI Controller
- Pattern: Utility-Based Decision Making.
- Execution: AI does not cheat. It must use the same Pathfinding and SkillManager checks as the player.
- Archetypes: Logic must be driven by AIBehaviorProfile (e.g., Bruiser vs Kiter).
Unit Manager
- Role: Single Source of Truth for "Who is alive?".
- Queries: Use getUnitsInRange() for spatial lookups. Do not iterate the Grid manually to find units.