five-on-it / packages/world/src/spots
packages/world/src/spots
The spots of a level: where somebody sits (a bench's two seats, a log seat), waits for a bus (a bus stop's sign, a shelter: the head of its queue), sells from (beside a kiosk's or a market stall's counter, which a spot of kind vend points to), uses a cash machine (a street ATM, a bank's), and fills up (a petrol station's pumps). They are not authored: each comes with a kit piece of the level (SPOT_PIECES: its spots in the piece's own frame, front +z), so every level that places a bench has its seats, and a level file carries nothing new. levelSpots lists them in the world, once per level object, in the order of the placements, the same on the server and every client; a bus stop within STOP_MERGE of one listed before it (a shelter's sign) is the same stop.