voxelcore/doc/ru/scripting/builtins/libpack.md
Xertis 32feb78002
Improved docs (#708)
* начало переписи доков

* extensions update

* libapp update

* libfile update

* io_stream update

* Update io_stream.md

* io_stream update x3

* io_stream update x4

* libtime update

* libgui update + make bytearray.md

* libinput update

* Update libapp.md

* Update libapp.md

* libgui update

* events.md ru fix

* да ну не надо так делать

--> не имеет смысла, ибо гитхаб -> показывает адекватно

* types refactoring

* fixes

* Update libblock.md

* Update libblock.md

* Update libbyteutil.md
2025-12-18 12:58:39 +03:00

3.3 KiB
Raw Blame History

Библиотека pack

pack.is_installed(packid: string) -> boolean

Проверяет наличие установленного пака в мире

pack.data_file(packid: string, filename: string) -> string
-- и
pack.shared_file(packid: string, filename: string) -> string

Возвращает путь к файлу данных и создает недостающие директории в пути.

  • Первый вариант возвращает: world:data/packid/filename
  • Второй вариант возвращает: config:packid/filename

Примеры:

file.write(pack.data_file(PACK_ID, "example.txt"), text)

Для пака containermod запишет текст в файл world:data/containermod/example.txt.

Используйте для хранения данных в мире.

file.write(pack.shared_file(PACK_ID, "example.txt"), text)

Для пака containermod запишет текст в файл config:containermod/example.txt

Используйте для хранения данных общих для всех миров.

pack.get_folder(packid: string) -> string

Возвращает путь к папке установленного контент-пака.

pack.is_installed(packid: string) -> boolean

Проверяет наличие контент-пака в мире

pack.get_installed() -> table<string>

Возращает id всех установленных в мире контент-паков.

pack.get_available() -> table<string>

Возвращает id всех доступных, но не установленных в мире контент-паков.

pack.get_base_packs() -> table<string>

Возвращает id всех базовых паков (неудаляемых)

pack.get_info(packid: string) -> {
	id: string,
	title: string,
	creator: string,
	description: string,
	version: string,
    path: string,
	icon: string, -- отсутствует в headless режиме
	dependencies: table<string> -- опциональный
}

Возвращает информацию о паке (не обязательно установленном).

  • icon - название текстуры предпросмотра (загружается автоматически)
  • dependencies - строки в формате {lvl}{id}, где lvl:
    • ! - required
    • ? - optional
    • ~ - weak например !teal

Для получения информации о нескольких паках используйте таблицу id, чтобы не производить сканирование для каждого пака:

pack.get_info(packids: table<string>) -> table<string, table>
pack.assemble(packids: table<string>) -> table<string>

Проверяет корректность конфигурации и добавляет зависимости, возвращая полную конфигурацию.

pack.request_writeable(packid: string, callback: function(string))

Запрашивает у пользователя право на модификацию пака. При подтвержении новая точка входа будет передана в callback.