Scene and players
Call Effect or return value --- --- things() All things in the copy, including hidden stock named(name) Things with that exact name, as an array at(x, y) Thing
| Call | Effect or return value |
|---|---|
things() | All things in the copy, including hidden stock |
named(name) | Things with that exact name, as an array |
at(x, y) | Things on that tile |
players() | Players currently in the copy |
move(thing, x, y[, seconds]) | Move scenery; default glide is one tick, 0 snaps |
hide(thing), show(thing) | Hide scenery or restore it |
spawn(thing, x, y) | Reveal a hidden stock object at a tile |
tint(thingOrPlayer, "#rrggbb"[, seconds]) | Tint; optional duration fades it |
tint(thingOrPlayer) | Remove tint |
floor(x, y, "#rrggbb") | Colour a tile of the ground; floor(x, y) takes it off, floor() clears the whole floor as one effect |
walk(player, x, y) | Request normal walking |
teleport(player, x, y) | Place a player on a tile |
size(width, height) | Resize a copy within its authored room bounds |
lock(), unlock() | Close or reopen admission to the current copy |
input(mode), input(player, mode) | Set controls for the copy or one player |
Input modes: grid is ordinary walking and queued keys; keys sends keys immediately and disables ordinary walking; none ignores movement/game keys. Enter belongs to chat. Text fields capture their own typing. UI buttons still work when movement is disabled. Phone walking uses double tap; dragging pans.
The floor is a colour layer on the copy, not scenery: a painted arena needs no floor things, so a script may colour thousands of tiles (an event still counts each floor(x, y, colour) as one effect; floor() is one). Late joiners receive the whole floor. It is drawn in the isometric view.
Scene changes go through the server's room rules. spawn reuses authored stock; it does not manufacture arbitrary new items. Use unique names when selecting one object and check that named(name)[1] exists.
This page as markdown: /api/scene-and-players.md