five-on-it / apps/client/src/ui/phone-view
apps/client/src/ui/phone-view
What the phone panel shows and does, as pure data (gui/phone-blocks.ts draws it, the game loop keeps it and sends what it asks): the page the player is on (home, messages, contacts, calls, the map, the camera, the radio, an app's screen), a conversation over everything while one rings or runs, what the world opens (a terminal's screen, a keypad, a conversation face to face, a call ringing) popping the phone open and putting it away again, and every button of the page in order: the panel numbers them and the keys 1–9 press them. The radio's page is the client's own (audio/radio.ts): its stations, off, and nothing for the server; a player with no phone of their own (free roam) takes out one that has only the radio. In the city (a hub's room, never a run's) the phone has the Jobs app too (jobs-view.ts: what the platform says there is to play, its choices the client's own, never the game server's).