Up to date
This page is up to date for Godot 4.2
.
If you still find outdated information, please open an issue.
TileSetScenesCollectionSource¶
继承: TileSetSource < Resource < RefCounted < Object
以图块的形式向 TileSet 资源暴露一组场景。
描述¶
当放置在 TileMap 上时,来自 TileSetScenesCollectionSource 中的图块将在 TileMap 中的单元格位置自动实例化一个关联场景。
当该 TileMap 进入树时,场景被实例化为该 TileMap 的子级。如果在已在树内的 TileMap 中添加/移除一个场景图块,则该 TileMap 将相应地自动实例化/释放该场景。
方法¶
create_scene_tile ( PackedScene packed_scene, int id_override=-1 ) |
|
get_next_scene_tile_id ( ) const |
|
get_scene_tile_display_placeholder ( int id ) const |
|
get_scene_tile_id ( int index ) |
|
get_scene_tile_scene ( int id ) const |
|
has_scene_tile_id ( int id ) |
|
void |
remove_scene_tile ( int id ) |
void |
set_scene_tile_display_placeholder ( int id, bool display_placeholder ) |
void |
set_scene_tile_id ( int id, int new_id ) |
void |
set_scene_tile_scene ( int id, PackedScene packed_scene ) |
方法说明¶
int create_scene_tile ( PackedScene packed_scene, int id_override=-1 )
从给定的场景创建基于场景的图块。
返回新生成的唯一 ID。
int get_next_scene_tile_id ( ) const
返回后续调用 create_scene_tile 时会返回的场景 ID。
bool get_scene_tile_display_placeholder ( int id ) const
返回 ID 为 id
的场景图块是否在编辑器中显示占位图。
int get_scene_tile_id ( int index )
返回索引为 index
的场景图块的场景图块 ID。
PackedScene get_scene_tile_scene ( int id ) const
返回 ID 为 id
的场景图块的 PackedScene 资源。
int get_scene_tiles_count ( )
返回该 TileSet 源中场景图块的数量。
bool has_scene_tile_id ( int id )
返回该 TileSet 源是否包含 ID 为 id
的场景图块。
void remove_scene_tile ( int id )
移除 ID 为 id
的场景图块。
void set_scene_tile_display_placeholder ( int id, bool display_placeholder )
设置 ID 为 id
的场景图块是否应该在编辑器中显示为占位符。对不可见的场景可能有用。
void set_scene_tile_id ( int id, int new_id )
将场景图块的 ID 从 id
改为 new_id
。如果已经存在 ID 为 new_id
的图块则会失败。
void set_scene_tile_scene ( int id, PackedScene packed_scene )
将 PackedScene 资源分配给 ID 为 id
的场景图块。如果该场景扩展的不是 CanvasItem 则会失败,因为将场景放置到 TileMap 上需要位置属性。