reckfellENGINE

TileSetScenesCollectionSource

Предоставляет набор сцен в виде плиток для ресурса TileSet.

На этой странице
class TileSetScenesCollectionSourceReckfellSharpНаследует TileSetSource

Предоставляет набор сцен в виде плиток для ресурса TileSet.

При размещении на TileMapLayer плитки из TileSetScenesCollectionSource автоматически создают экземпляр связанной сцены в позиции ячейки в TileMapLayer. Сцены создаются как дочерние элементы TileMapLayer после того, как он попадает в дерево, в конце кадра (их создание откладывается). Если вы добавляете/удаляете плитку сцены в TileMapLayer, которая уже находится внутри дерева, TileMapLayer автоматически создаст/освободит сцену соответствующим образом. Примечание: Все плитки сцены занимают один слот плитки и вместо этого используют альтернативный идентификатор плитки для определения индекса сцены. TileSetSource.GetTilesCount всегда будет возвращать 1. Используйте TileSetScenesCollectionSource.GetSceneTilesCount для получения количества сцен в TileSetScenesCollectionSource. Используйте этот код, если вы хотите найти путь сцены на заданном тайле в TileMapLayer:

C#
int sourceId = tileMapLayer.GetCellSourceId(new Vector2I(x, y));
if (sourceId > -1)
{
    TileSetSource source = tileMapLayer.TileSet.GetSource(sourceId);
    if (source is TileSetScenesCollectionSource sceneSource)
    {
        int altId = tileMapLayer.GetCellAlternativeTile(new Vector2I(x, y));
        // The assigned PackedEntity.
        PackedEntity scene = sceneSource.GetSceneTileScene(altId);
    }
}

Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.

Конструкторы1

TileSetScenesCollectionSourceКонструктор
# TileSetScenesCollectionSource
C#
public TileSetScenesCollectionSource();

Методы11

CreateSceneTileint
# CreateSceneTile
C#
public int CreateSceneTile(PackedEntity packedScene, int idOverride = -1);

Создает тайл на основе сцены из заданной сцены. Возвращает новый сгенерированный уникальный идентификатор.

Параметры
ИмяТипПо умолчанию
packedScenePackedEntity—
idOverrideint-1
Возвращает int
GetNextSceneTileIdint
# GetNextSceneTileId
C#
public int GetNextSceneTileId();

Возвращает идентификатор сцены, который вернет следующий вызов TileSetScenesCollectionSource.CreateSceneTile.

Возвращает int
GetSceneTileDisplayPlaceholderbool
# GetSceneTileDisplayPlaceholder
C#
public bool GetSceneTileDisplayPlaceholder(int id);

Возвращает, отображает ли тайл-сцена с идентификатором id заполнитель в редакторе.

Параметры
ИмяТипПо умолчанию
idint—
Возвращает bool
GetSceneTileIdint
# GetSceneTileId
C#
public int GetSceneTileId(int index);

Возвращает идентификатор фрагмента сцены для фрагмента сцены по адресу index.

Параметры
ИмяТипПо умолчанию
indexint—
Возвращает int
GetSceneTileScenePackedEntity
# GetSceneTileScene
C#
public PackedEntity GetSceneTileScene(int id);

Возвращает ресурс PackedEntity тайла-сцены с id.

Параметры
ИмяТипПо умолчанию
idint—
Возвращает PackedEntity
GetSceneTilesCountint
# GetSceneTilesCount
C#
public int GetSceneTilesCount();

Возвращает количество плиток сцены, имеющихся в этом источнике TileSet.

Возвращает int
HasSceneTileIdbool
# HasSceneTileId
C#
public bool HasSceneTileId(int id);

Возвращает, имеет ли этот источник TileSet тайл-сцены с id.

Параметры
ИмяТипПо умолчанию
idint—
Возвращает bool
RemoveSceneTilevoid
# RemoveSceneTile
C#
public void RemoveSceneTile(int id);

Удалить тайл-сцену с id.

Параметры
ИмяТипПо умолчанию
idint—
SetSceneTileDisplayPlaceholdervoid
# SetSceneTileDisplayPlaceholder
C#
public void SetSceneTileDisplayPlaceholder(int id, bool displayPlaceholder);

Устанавливает, должен ли тайл-сцена с id отображать заполнитель в редакторе. Это может быть полезно для сцен, которые не видны.

Параметры
ИмяТипПо умолчанию
idint—
displayPlaceholderbool—
SetSceneTileIdvoid
# SetSceneTileId
C#
public void SetSceneTileId(int id, int newId);

Изменяет идентификатор тайла-сцены с id на new_id. Это завершится ошибкой, если уже есть тайл с идентификатором, равным new_id.

Параметры
ИмяТипПо умолчанию
idint—
newIdint—
SetSceneTileScenevoid
# SetSceneTileScene
C#
public void SetSceneTileScene(int id, PackedEntity packedScene);

Назначает ресурс PackedEntity тайлу-сцене с id. Это не сработает, если сцена не расширяет CanvasItem, поскольку для размещения сцены на TileMapLayer необходимы свойства позиционирования.

Параметры
ИмяТипПо умолчанию
idint—
packedScenePackedEntity—
Документация Reckfell EngineНаверх ↑
БЫСТРЫЙ ПЕРЕХОДНачало работыEntity и иерархияC# & .NET 10Сцены и префабы
Руководства и полный API Reckfell K
reckfellENGINE
RECKFELL ACCOUNT

Вход в аккаунт

Войдите в аккаунт Reckfell.

Один аккаунт для всей платформы Reckfell.