44 lines
2.6 KiB
Markdown
44 lines
2.6 KiB
Markdown
# Рекомендации по использованию движка
|
||
|
||
## Наименование контента
|
||
|
||
### ID контент-паков
|
||
|
||
Идентификатор контент-пака должен следовать следующим требованиям:
|
||
- название может состоять только из букв латиницы, цифр и символа подчёркивания '\_'
|
||
- название не может начинаться с цифры
|
||
- длина названия должна находиться в пределах от 2 до 24 включительно
|
||
|
||
### Блоки и предметы
|
||
|
||
- id блоков и предметов следуют тем же требованиям, что и ID контент-пака.
|
||
- окончание `.item` добавляется только для замены сгенерированного для блока предмета. Пример: `base:stone.item` - предмет сгенерированный для блока камня.
|
||
- поле **caption**, предназначенное для отображения названия в инвентаре, не указывается с заглавной буквы, без необходимости. Движок автоматически повышает регистр при отображении в интерфейсе.
|
||
|
||
## Хранение файлов
|
||
|
||
### Данные контент-паков
|
||
|
||
#### Данные в мире
|
||
|
||
Состояние, которое нужно сохранять в мире, должны находиться в `world:data/id_пака/`. Путь следует получать через специальную функцию:
|
||
```lua
|
||
local path = pack.data_file(PACK_ID, "имя_файла")
|
||
file.write(path, данные)
|
||
-- запишет данные в файл world:data/PACK_ID/имя_файла
|
||
```
|
||
Здесь PACK_ID является доступной константой, т.е не нужно вписывать имя пака самостоятельно.
|
||
|
||
Папка `world:data/PACK_ID` будет создана при вызове `pack.data_file`.
|
||
|
||
#### Общие данные
|
||
|
||
Настройки и иные данные, что должны быть доступны из всех миров, где используется пак, должны находиться в
|
||
`config:id_пака/`. Можно использовать специальную функцию:
|
||
|
||
```lua
|
||
local path = pack.shared_file(PACK_ID, "имя_файла")
|
||
file.write(path, данные)
|
||
-- запишет данные в файл config:PACK_ID/имя_файла
|
||
```
|