GFLevelCatalog¶
API Reference / Domain / 类索引
- 路径:
addons/gf/extensions/domain/level/gf_level_catalog.gd - 模块:
Domain - 继承:
Resource - API:
public - 类别:资源定义 (
resource_definition) - 首次版本:
3.17.0
通用关卡目录资源。 用于按关卡包和排序值组织 GFLevelEntry,保持目录查询与具体关卡规则解耦。
成员概览¶
| 类型 | 名称 | 签名 |
|---|---|---|
| 属性 | entries |
var entries: Array[GFLevelEntry] = [] |
| 方法 | add_entry |
func add_entry(entry: GFLevelEntry) -> void: |
| 方法 | has_level |
func has_level(level_id: StringName) -> bool: |
| 方法 | get_entry |
func get_entry(level_id: StringName) -> GFLevelEntry: |
| 方法 | get_levels |
func get_levels(pack_id: StringName = &"") -> Array[GFLevelEntry]: |
| 方法 | get_pack_ids |
func get_pack_ids() -> Array[StringName]: |
| 方法 | get_next_level_id |
func get_next_level_id(level_id: StringName) -> StringName: |
| 方法 | get_previous_level_id |
func get_previous_level_id(level_id: StringName) -> StringName: |
属性¶
entries¶
- API:
public
关卡条目列表。
结构:
entries: Array[GFLevelEntry],关卡目录条目列表;查询方法会返回条目拷贝。
方法¶
add_entry¶
- API:
public
添加关卡条目。
参数:
| 名称 | 说明 |
|---|---|
entry |
关卡条目。 |
has_level¶
- API:
public
检查关卡是否存在。
参数:
| 名称 | 说明 |
|---|---|
level_id |
关卡 ID。 |
返回:存在时返回 true。
get_entry¶
- API:
public
获取关卡条目。
参数:
| 名称 | 说明 |
|---|---|
level_id |
关卡 ID。 |
返回:条目拷贝;不存在时返回 null。
get_levels¶
- API:
public
获取指定关卡扩展中的条目。
参数:
| 名称 | 说明 |
|---|---|
pack_id |
关卡扩展 ID;为空时返回全部。 |
返回:已排序的条目拷贝数组。
结构:
return: Array[GFLevelEntry],按 sort_order 与 level_id 排序后的关卡条目拷贝。
get_pack_ids¶
- API:
public
获取所有关卡扩展 ID。
返回:关卡扩展 ID 数组。
结构:
return: Array[StringName],已排序的关卡包或章节 ID 列表。
get_next_level_id¶
- API:
public
获取同关卡扩展内下一个关卡 ID。
参数:
| 名称 | 说明 |
|---|---|
level_id |
当前关卡 ID。 |
返回:后续关卡 ID;没有时返回空 StringName。
get_previous_level_id¶
- API:
public
获取同关卡扩展内上一个关卡 ID。
参数:
| 名称 | 说明 |
|---|---|
level_id |
当前关卡 ID。 |
返回:前序关卡 ID;没有时返回空 StringName。