Перейти к основному содержанию

res

7 июня 2024 г.

res

Этот модуль отвечает за загрузку ресурсов в ваших игровых проектах. С помощью этого модуля вы можете загружать дополнительные ресурсы во время игры.

Автоматически переведённая страница

К сожалению, на полный ручной перевод у нас не хватает ресурсов.
Если вы увидели ошибку — отправьте пул-риквест с исправлениями (ссылка для редактирования в конце страницы).

Получение существующих ассетов

res.getTexture(name: string): PIXI.Texture[];

Получает текстуру pixi.js из имени текстуры ct.js, чтобы ее можно было использовать в объектах pixi.js.

Возвращает массив всех кадров этой текстуры ct.js. Ниже приведен расширенный вариант res.getTexture, который возвращает отдельные кадры.

res.getTexture(name: string, frame: number): PIXI.Texture;

Получает pixi.js текстуру из имени текстуры ct.js, чтобы ее можно было использовать в объектах pixi.js.

Возвращает одиночную PIXI.Texture.

Просмотр дерева ассетов

Начиная с версии 4.0 ct.js может экспортировать частичную структуру вашего проекта как поле res.tree. Вы можете использовать его, например, для загрузки списка игровых карт динамически, чтобы не обновлять интерфейс вручную, или для создания случайных сущностей на основе того, как активы организованы в папках.

Эта функция по умолчанию выключена , поскольку она добавляет некоторую нагрузку к экспортируемым проектам и также может вызвать проблемы конфиденциальности, так как показывает используемые активы чистым и удобным для просмотра способом.

Чтобы включить эту функцию, перейдите в настройки вашего проекта (вкладка "Проект" в верхней части экрана) и включите ее в разделе экспорта. Вы также можете указать, какие активы должны присутствовать в дереве активов.

res.tree

Это массив корня вашего проекта с ассетами и папками как они выглядит в IDE. Каждый элемент имеет поля «name» и «type», где «type» может быть одним из:

Папки также имеют массив «entries», который содержит объекты такого же типа, как и в «res.tree».

res.getChildren(path?: string)

Получает прямых детей папки.

Аргумент путь - это строка в формате пути к файлу. Например, если у вас есть структура папок Корень > Ядро > Игрок, то путь к папке Игрок будет /Ядро/Игрок.

Вы также можете использовать обратную косую черту \ вместо косой черты /, если правильно экранируете ее в строках вашего кода, и первые и последние / являются необязательными. Эти пути эквивалентны:

Если аргумент path является ложным, или не указан, или равен /, то будут возвращены записи корневого каталога проекта.

Возвращает ExportedAsset[] — Массив всех активов в папке. Подпапки не включаются в массив.

res.getOfType(type: AssetType | 'folder', path?: string)

Получает прямых потомков папки, отфильтрованных по типу ассета. Аргумент path ведет себя так же, как и в res.getChildren.

Возвращает (ЭкспортированныйАссет | ЭкспортированнаяПапка)[] — Массив всех выбранных записей в папке.

Пример: установить текстуру копии на случайную текстуру из папки "Enemy ships"

JavaScript
var shipTextures = res.getOfType('textures', 'Enemies/Enemy ships');
// Нам понадобится включить котомод `random`
this.tex = random.from(shipTextures).name;

res.getAll(path?: строка)

Получает все ассеты внутри папки, включая в подпапках. Аргумент path работает так же, как и в res.getChildren.

Возвращает ExportedAsset[] — все ассеты в папке и ее подпапках. Сами папки не включаются в массив.

res.getAllOfType(type: AssetType | 'folder', path?: string)

Получает все ассеты внутри папки, включая подпапки, отфильтрованные по типу. Аргумент path работает так же, как и в функции res.getChildren.

Возвращает (ExportedAsset | ExportedFolder)[] — Все элементы внутри папки.

Загрузка и удаление ассетов

res.loadScript(url: string): Promise<void>

Загружает и выполняет скрипт по его URL-адресу. URL-адрес файла скрипта может быть как относительным, так и абсолютным.

res.loadTexture(url: string, name: string, textureOptions: ITextureOptions): Promise<PIXI.Texture[]>

Загружает отдельное изображение в виде названной текстуры ct.js.

Пример: загрузка дополнительной текстуры в ct.js

JavaScript
res.loadTexture('Background_42.png', 'Background_42', {
    anchor: {
        x: 0,
        y: 0
    }
})
.then(textureName => {
    // Добавляет фон в текущую комнату на глубине -100.
    ct.backgrounds.add(textureName, 0, -100);
});

res.loadAtlas(url: string): Promise<string[]>;

Загружает файл .json, совместимый с Texture Packer, со своими исходными изображениями, добавляя текстуры ct.js в игру.

Метод возвращает обещание, которое разрешается в массиве всех загруженных текстур ct.js (массив имен текстур).

res.unloadAtlas(url: string): Promise<void>;

Удаляет ранее загруженный атлас по его URL, удаляя все связанные текстуры из игры.

Метод возвращает обещание, которое выполняется пустым значением.

res.loadBitmapFont(url: string): Promise<string>;

Загружает битмап-шрифт по его XML-файлу.

Возвращает промис, который разрешается в загруженный битмап-шрифту.

res.unloadBitmapFont(url: string): Promise<void>

Удаляет ранее загруженный битмап-шрифт из игры.

Your primary language is en-US, do you want to switch to it?

Ваш основной язык - en-US, вы хотите переключиться на него?