Blockbuster 767
README.md
Focus
Menu focus navigation for the cards of BLOCKBUSTER 767. A controller has no pointer, so every menu carries an ordered ring of focusable ids and exactly one of them is lit; this module walks that ring.
Focus.open(list, prefer)— open a menu: the ids in stick order, and which starts lit.Focus.axis(v, dt)— feed thenavigateaxis; one flick is one step, a held stick repeats.Focus.point(id)— a mouse crossing a row or a finger tapping it moves the focus there.Focus.id()/Focus.items()— read it.Focus.step(delta)/Focus.close()/Focus.release().
Which menu is open lives in modules.state(), so editing this file leaves the
card on screen with its rows still walkable.
Fed by game/input/console.inputMap; consumed by game.ui.Screens, which asks
it which row to draw lit. Installed from ZeroMind and owned by the presentation
slice.