Update 0.27 docs (#484)
* update doc/*/scripting/builtins/libinventory.md * add doc/*/scripting/builtins/libgfx-weather.md * update doc/*/scripting/builtins/libfile.md * update doc/*/item-properties & update doc/*/scripting/builtins/libinventory.md * add inventory.decrement docs * update doc/*/scripting/builtins/libinventory.md
This commit is contained in:
@@ -11,7 +11,7 @@ inventory.get(
|
||||
slot: int
|
||||
) -> int, int
|
||||
|
||||
-- Устанавливает содержимое слота.
|
||||
-- Устанавливает содержимое слота, удаляя содержащиеся данные.
|
||||
inventory.set(
|
||||
-- id инвентаря
|
||||
invid: int,
|
||||
@@ -23,6 +23,16 @@ inventory.set(
|
||||
count: int
|
||||
)
|
||||
|
||||
-- Устанавливает количество предмета в слоте не затрагивая данные при ненулевом значении аргумента.
|
||||
inventory.set_count(
|
||||
-- id инвентаря
|
||||
invid: int,
|
||||
-- индекс слота
|
||||
slot: int,
|
||||
-- количество предмета
|
||||
count: int
|
||||
)
|
||||
|
||||
-- Возвращает размер инвентаря (число слотов).
|
||||
-- Если указанного инвентаря не существует, бросает исключение.
|
||||
inventory.size(invid: int) -> int
|
||||
@@ -70,6 +80,65 @@ inventory.remove(invid: int)
|
||||
> [!WARNING]
|
||||
> Инвентари, не привязанные ни к одному из блоков, удаляются при выходе из мира.
|
||||
|
||||
|
||||
Локальные свойства предмета - данные прикреплённые к последнему предмету в стеке.
|
||||
При разделении стека (ПКМ) данные не копируются а перемемещаются в новый стек.
|
||||
Свойства могут иметь любой сериализуемый тип, включая таблицы.
|
||||
В отличие от полей блоков имена свойств не требуется регистрировать в определении предмета.
|
||||
|
||||
Сочетание
|
||||
```lua
|
||||
inventory.get(...)
|
||||
inventory.get_all_data(...)
|
||||
inventory.set(...)
|
||||
inventory.set_all_data(...)
|
||||
```
|
||||
для перемещения вляется неэффективным, используйте inventory.move или inventory.move_range.
|
||||
|
||||
```lua
|
||||
-- Проверяет наличие локального свойства по имени без копирования его значения.
|
||||
-- Предпочтительно для таблиц, но не примитивных типов.
|
||||
inventory.has_data(
|
||||
-- id инвентаря
|
||||
invid: int,
|
||||
-- индекс слота
|
||||
slot: int,
|
||||
-- имя свойства
|
||||
name: str
|
||||
) -> bool
|
||||
|
||||
-- Возвращает копию значения локального свойства предмета по имени или nil.
|
||||
inventory.get_data(
|
||||
-- id инвентаря
|
||||
invid: int,
|
||||
-- индекс слота
|
||||
slot: int,
|
||||
-- имя свойства
|
||||
name: str
|
||||
) -> any
|
||||
|
||||
-- Устанавливает значение локального свойства предмета по имени.
|
||||
-- Значение nil удаляет свойство.
|
||||
inventory.set_data(
|
||||
-- id инвентаря
|
||||
invid: int,
|
||||
-- индекс слота
|
||||
slot: int,
|
||||
-- имя свойства
|
||||
name: str
|
||||
-- значение
|
||||
value: any
|
||||
)
|
||||
|
||||
-- Возвращает копию таблицы всех локальных свойств предмета.
|
||||
inventory.get_all_data(
|
||||
-- id инвентаря
|
||||
invid: int,
|
||||
-- индекс слота
|
||||
slot: int,
|
||||
) -> table
|
||||
```
|
||||
|
||||
```lua
|
||||
-- Создаёт инвентарь и возвращает id.
|
||||
inventory.create(size: int) -> int
|
||||
@@ -97,4 +166,26 @@ inventory.move_range(
|
||||
rangeBegin: int,
|
||||
[опционально] rangeEnd: int
|
||||
)
|
||||
|
||||
-- Уменьшает количество предмета в слоте на 1.
|
||||
inventory.decrement(
|
||||
-- id инвентаря
|
||||
invid: int,
|
||||
-- индекс слота
|
||||
slot: int,
|
||||
-- вычитаемое количество
|
||||
[опционально] count: int = 1
|
||||
)
|
||||
|
||||
-- Уменьшает счётчик оставшихся использований / прочность предмета,
|
||||
-- создавая локальное свойство `uses` при отсутствии.
|
||||
-- Удаляет один предмет из слота при достижении нулевого значения счётчика.
|
||||
-- При отсутствии в JSON предмета свойства `uses` ничего не делает.
|
||||
-- См. [свойство `uses`](../../item-properties.md#число-использований-прочность---uses)
|
||||
inventory.use(
|
||||
-- id инвентаря
|
||||
invid: int,
|
||||
-- индекс слота
|
||||
slot: int
|
||||
)
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user