Skip to content

feat(sprint14a): Phaser top-down block scene + police raid mini-game + sprites - #93

Merged
BrandDead merged 1 commit into
main-tL2525from
feat/phaser-topdown-block
Aug 2, 2026
Merged

feat(sprint14a): Phaser top-down block scene + police raid mini-game + sprites#93
BrandDead merged 1 commit into
main-tL2525from
feat/phaser-topdown-block

Conversation

@BrandDead

Copy link
Copy Markdown
Owner

Sprint 14-A

What's in this PR

  • Phaser 3 top-down block scene — renders real satellite image as ground plane, places gang member sprites at grid positions with HP bars and zone tint overlays
  • PhaserTopDownBlock React wrapper — auto-activates over CSS grid when block has a real satellite URL
  • Police Raid mini-game — timed grid-clear: police advance from edges, player evacuates members before they're caught; wired into BlockModeView as new Raid tab (pulses red at heat 5)
  • policeRaidEngine.ts — pure game logic (no React/Phaser), fully testable
  • New pixel art sprites — police officer topdown + police car topdown (consistent with existing sprite set)

Test results

  • 308 tests passing across 20 test files
  • 0 TypeScript errors

…police/car sprites

- blockTopDownCoords.ts: pure coordinate math for Phaser top-down scene (cellToPixel, pixelToCell, cellOrigin, spriteUrlForRole, ROLE_TO_SPRITE, SPRITE_SCALE)
- BlockTopDownScene.ts: Phaser.Scene rendering satellite ground plane + member sprites with HP bars and zone tint overlays
- PhaserTopDownBlock.tsx: React wrapper for Phaser top-down scene, auto-selects over CSS grid when block has topdownBgUrl
- policeRaidEngine.ts: pure game logic for police raid (createRaidState, startEvacuation, tickRaid, getRaidSummary, membersAtRisk)
- PoliceRaidGame.tsx: React component for police raid mini-game with timed grid-clear gameplay
- BlockModeView.tsx: wired PoliceRaidGame as new Raid tab, auto-pulses when heat >= 5
- Assets: police officer topdown sprite + police car topdown sprite (pixel art, consistent with existing set)
- Tests: 308 passing, 0 TS errors (20 test files)
  - policeRaidEngine: 28 tests covering createRaidState, startEvacuation, tickRaid, membersAtRisk, getRaidSummary
  - blockTopDownCoords: 16 tests covering cellToPixel, pixelToCell, cellOrigin, sprite helpers, constants
@cursor

cursor Bot commented Aug 2, 2026

Copy link
Copy Markdown

Bugbot is not enabled for your account, so this pull request was not reviewed.

Enable Bugbot in the Cursor dashboard to get automatic reviews on future PRs.

@vercel

vercel Bot commented Aug 2, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
slide Building Building Preview Aug 2, 2026 4:40am

@BrandDead
BrandDead merged commit 069416a into main-tL2525 Aug 2, 2026
3 of 5 checks passed
@BrandDead
BrandDead deleted the feat/phaser-topdown-block branch August 10, 2026 17:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant