From d387e9b6d39d9689b79da21fa263c93d2b26e840 Mon Sep 17 00:00:00 2001 From: DS Date: Thu, 3 Feb 2022 11:43:28 +0100 Subject: [PATCH] Add more documentation for the list[] fs element (#11979) --- doc/lua_api.txt | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/doc/lua_api.txt b/doc/lua_api.txt index e9140a972..7061a5b8a 100644 --- a/doc/lua_api.txt +++ b/doc/lua_api.txt @@ -2388,21 +2388,23 @@ Elements * End of a scroll_container, following elements are no longer bound to this container. -### `list[;;,;,;]` +### `list[;;,;,;]` -* Show an inventory list if it has been sent to the client. Nothing will - be shown if the inventory list is of size 0. +* Show an inventory list if it has been sent to the client. +* If the inventory list changes (eg. it didn't exist before, it's resized, or its items + are moved) while the formspec is open, the formspec element may (but is not guaranteed + to) adapt to the new inventory list. +* Item slots are drawn in a grid from left to right, then up to down, ordered + according to the slot index. +* `W` and `H` are in inventory slots, not in coordinates. +* `starting item index` (Optional): The index of the first (upper-left) item to draw. + Indices start at `0`. Default is `0`. +* The number of shown slots is the minimum of `W*H` and the inventory list's size minus + `starting item index`. * **Note**: With the new coordinate system, the spacing between inventory slots is one-fourth the size of an inventory slot by default. Also see [Styling Formspecs] for changing the size of slots and spacing. -### `list[;;,;,;]` - -* Show an inventory list if it has been sent to the client. Nothing will - be shown if the inventory list is of size 0. -* **Note**: With the new coordinate system, the spacing between inventory - slots is one-fourth the size of an inventory slot. - ### `listring[;]` * Allows to create a ring of inventory lists