PIXEL RELAY — Sprite Hook Reference

For Hardy’s pixel-art pass · replace the placeholder functions without touching physics

Runner A (baton)

Size: 16×24 px · Anchor: top-left (x, y)
Variants: idle, run-1, run-2, jump, baton-hold
drawRunner(x, y, w=16, h=24, color='#ff2a6d', hasBaton=true)

Runner B (no baton)

Size: 16×24 px · Palette: cyan (#05d9e8)
Eyes: currently at (x+4, y+4) and (x+4, y+10)
drawRunner(x, y, w=16, h=24, color='#05d9e8', hasBaton=false)

Platform

Ground: 720×40 · Small: ~100×12 · Goal platform: ~120×12
Tile left/center/right 16×16 if desired.
drawPlatform({x, y, w, h})

Goal Gate

Size: 50×40 px · any shape inside bounding box
drawGoal({x, y, w=50, h=40})

Hazard Spikes

Box: variable width × 20px tall · spikes render on top edge
drawHazard({x, y, w, h=20})

Orb / Butter Pearl

Radius: 5 px · glowing center + outer ring
drawOrb({x, y, r=5})

Crescent Bonus

Radius: 10–13 px · warm gold (#f7c95c) · subtle shimmer
drawCrescent({x, y, r≈12})

Handoff Zone

Box: 70×50 px · dashed border + label
drawHandoffZone({x, y, w=70, h=50})
← Play Pixel Relay v2.3 Play Croissant Nation →