update doc/ru/8.Скриптинг.md
This commit is contained in:
+96
-7
@@ -2,11 +2,7 @@
|
|||||||
|
|
||||||
В качестве языка сценариев используется LuaJIT
|
В качестве языка сценариев используется LuaJIT
|
||||||
|
|
||||||
## Функции, доступные в скриптах
|
|
||||||
|
|
||||||
```lua
|
```lua
|
||||||
load_script("контентпак:scripts/имя_скрипта.lua") -- загружает скрипт, если ещё не загружен
|
|
||||||
load_script("контентпак:scripts/имя_скрипта.lua", true) -- перезагружает скрипт
|
|
||||||
require "контентпак:имя_модуля" -- загружает lua модуль из папки modules (расширение не указывается)
|
require "контентпак:имя_модуля" -- загружает lua модуль из папки modules (расширение не указывается)
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -77,8 +73,23 @@ player.set_noclip(bool)
|
|||||||
|
|
||||||
Геттер и сеттер noclip режима (выключенная коллизия игрока)
|
Геттер и сеттер noclip режима (выключенная коллизия игрока)
|
||||||
|
|
||||||
|
```python
|
||||||
|
player.get_selected_block(playerid: int) -> x,y,z
|
||||||
|
```
|
||||||
|
|
||||||
|
Возвращает координаты выделенного блока, либо nil
|
||||||
|
|
||||||
## Библиотека world
|
## Библиотека world
|
||||||
|
|
||||||
|
```python
|
||||||
|
world.get_list() -> массив таблиц {
|
||||||
|
name: str,
|
||||||
|
icon: str
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
Возвращает информацию о мирах: название и предпросмотр (автоматически загружаемая текстура).
|
||||||
|
|
||||||
```python
|
```python
|
||||||
world.get_day_time() -> number
|
world.get_day_time() -> number
|
||||||
```
|
```
|
||||||
@@ -103,6 +114,12 @@ world.get_seed() -> int
|
|||||||
|
|
||||||
Возвращает зерно мира.
|
Возвращает зерно мира.
|
||||||
|
|
||||||
|
```python
|
||||||
|
world.exists() -> bool
|
||||||
|
```
|
||||||
|
|
||||||
|
Проверяет существование мира по имени.
|
||||||
|
|
||||||
## Библиотека pack
|
## Библиотека pack
|
||||||
|
|
||||||
```python
|
```python
|
||||||
@@ -123,6 +140,38 @@ pack.get_installed() -> массив строк
|
|||||||
|
|
||||||
Возращает id всех установленных в мире контент-паков
|
Возращает id всех установленных в мире контент-паков
|
||||||
|
|
||||||
|
```python
|
||||||
|
pack.get_available() -> массив строк
|
||||||
|
```
|
||||||
|
|
||||||
|
Возвращает id всех доступных, но не установленных в мире контент-паков
|
||||||
|
|
||||||
|
```python
|
||||||
|
pack.get_base_packs() -> массив строк
|
||||||
|
```
|
||||||
|
|
||||||
|
Возвращает id всех базовых паков (неудаляемых)
|
||||||
|
|
||||||
|
```python
|
||||||
|
pack.get_info(packid: str) -> {
|
||||||
|
id: str,
|
||||||
|
title: str,
|
||||||
|
creator: str,
|
||||||
|
description: str,
|
||||||
|
version: str,
|
||||||
|
icon: str,
|
||||||
|
dependencies: опциональный массив строк
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
Возвращает информацию о паке (не обязательно установленном).
|
||||||
|
- icon - название текстуры предпросмотра (загружается автоматически)
|
||||||
|
- dependencies - строки в формате `{lvl}{id}`, где lvl:
|
||||||
|
- `!` - required
|
||||||
|
- `?` - optional
|
||||||
|
- `~` - weak
|
||||||
|
например `!teal`
|
||||||
|
|
||||||
## Библиотека gui
|
## Библиотека gui
|
||||||
|
|
||||||
Библиотека содержит функции для доступа к свойствам UI элементов. Вместо gui следует использовать объектную обертку, предоставляющую доступ к свойствам через мета-методы __index, __newindex:
|
Библиотека содержит функции для доступа к свойствам UI элементов. Вместо gui следует использовать объектную обертку, предоставляющую доступ к свойствам через мета-методы __index, __newindex:
|
||||||
@@ -134,6 +183,12 @@ indentory_doc.some_button.text = "new text"
|
|||||||
|
|
||||||
В скрипте макета `layouts/файл_макета.xml` - `layouts/файл_макета.xml.lua` уже доступна переменная **document** содержащая объект класса Document
|
В скрипте макета `layouts/файл_макета.xml` - `layouts/файл_макета.xml.lua` уже доступна переменная **document** содержащая объект класса Document
|
||||||
|
|
||||||
|
```python
|
||||||
|
gui.str(text: str, context: str) -> str
|
||||||
|
```
|
||||||
|
|
||||||
|
Возращает переведенный текст.
|
||||||
|
|
||||||
## Библиотека inventory
|
## Библиотека inventory
|
||||||
|
|
||||||
Библиотека функций для работы с инвентарем.
|
Библиотека функций для работы с инвентарем.
|
||||||
@@ -211,6 +266,18 @@ block.index(name: str) -> int
|
|||||||
|
|
||||||
Возвращает числовой id блока, принимая в качестве агрумента строковый
|
Возвращает числовой id блока, принимая в качестве агрумента строковый
|
||||||
|
|
||||||
|
```python
|
||||||
|
block.material(blockid: int) -> str
|
||||||
|
```
|
||||||
|
|
||||||
|
Возвращает id материала блока.
|
||||||
|
|
||||||
|
```python
|
||||||
|
block.caption(blockid: int) -> str
|
||||||
|
```
|
||||||
|
|
||||||
|
Возвращает название блока, отображаемое в интерфейсе.
|
||||||
|
|
||||||
```python
|
```python
|
||||||
block.get(x: int, y: int, z: int) -> int
|
block.get(x: int, y: int, z: int) -> int
|
||||||
```
|
```
|
||||||
@@ -373,14 +440,36 @@ hud.close(layoutid: str)
|
|||||||
hud.get_block_inventory() -> int
|
hud.get_block_inventory() -> int
|
||||||
```
|
```
|
||||||
|
|
||||||
Получить ID инвентаря открытого блока или 0
|
Дает ID инвентаря открытого блока или 0
|
||||||
|
|
||||||
## Библиотеки движка
|
```python
|
||||||
|
hud.get_player() -> int
|
||||||
|
```
|
||||||
|
|
||||||
### time
|
Дает ID игрока, к которому привязан пользовательский интерфейс
|
||||||
|
|
||||||
|
```python
|
||||||
|
hud.pause()
|
||||||
|
```
|
||||||
|
|
||||||
|
Открывает меню паузы
|
||||||
|
|
||||||
|
```python
|
||||||
|
hud.resume()
|
||||||
|
```
|
||||||
|
|
||||||
|
Закрывает меню паузы.
|
||||||
|
|
||||||
|
## Библиотека time
|
||||||
|
|
||||||
```python
|
```python
|
||||||
time.uptime() -> float
|
time.uptime() -> float
|
||||||
```
|
```
|
||||||
|
|
||||||
Возвращает время с момента запуска движка в секундах
|
Возвращает время с момента запуска движка в секундах
|
||||||
|
|
||||||
|
```python
|
||||||
|
time.delta() -> float
|
||||||
|
```
|
||||||
|
|
||||||
|
Возвращает дельту времени (время прошедшее с предыдущего кадра)
|
||||||
|
|||||||
Reference in New Issue
Block a user