GFTileRuleSet¶
API Reference / Standard / 类索引
- 路径:
addons/gf/standard/foundation/math/gf_tile_rule_set.gd - 模块:
Standard - 继承:
Resource - API:
public - 类别:资源定义 (
resource_definition) - 首次版本:
3.17.0
通用瓦片邻域规则表。 使用邻域值序列匹配结果,可用于自动铺砖、地形变体、网格装饰或任意 基于相邻格子状态的选择逻辑。规则只处理 Variant 值,不绑定 TileSet 语义。
成员概览¶
| 类型 | 名称 | 签名 |
|---|---|---|
| 属性 | fallback_neighbor_value |
var fallback_neighbor_value: Variant = 0 |
| 属性 | default_result |
var default_result: Variant = null |
| 属性 | deterministic_seed |
var deterministic_seed: int = 0 |
| 方法 | register_rule |
func register_rule(neighbor_values: Array, result: Variant, weight: float = 1.0) -> void: |
| 方法 | clear |
func clear() -> void: |
| 方法 | get_rule_count |
func get_rule_count() -> int: |
| 方法 | resolve |
func resolve(neighbor_values: Array, cell: Vector2i = Vector2i.ZERO, selection_seed: int = 0) -> Variant: |
| 方法 | has_rule |
func has_rule(neighbor_values: Array) -> bool: |
属性¶
fallback_neighbor_value¶
- API:
public
规则匹配失败时尝试使用的邻域回退值。
结构:
fallback_neighbor_value: Variant fallback neighbor value used while resolving rules.
default_result¶
- API:
public
没有匹配规则时返回的值。
结构:
default_result: Variant fallback result returned when no rule matches.
deterministic_seed¶
- API:
public
参与确定性加权选择的默认种子。
方法¶
register_rule¶
- API:
public
注册一条邻域规则。
参数:
| 名称 | 说明 |
|---|---|
neighbor_values |
邻域值序列。 |
result |
匹配结果。 |
weight |
同一邻域下多个结果的权重。 |
结构:
neighbor_values: Array ordered neighbor values used as a rule key.result: Variant result returned when the rule matches.
clear¶
- API:
public
清空全部规则。
get_rule_count¶
- API:
public
获取已注册规则数量。
返回:规则数量。
resolve¶
- API:
public
func resolve(neighbor_values: Array, cell: Vector2i = Vector2i.ZERO, selection_seed: int = 0) -> Variant:
根据邻域值解析结果。
参数:
| 名称 | 说明 |
|---|---|
neighbor_values |
邻域值序列。 |
cell |
可选格坐标,用于确定性加权选择。 |
selection_seed |
可选选择种子;为 0 时使用 deterministic_seed。 |
返回:匹配结果;没有匹配时返回 default_result。
结构:
neighbor_values: Array ordered neighbor values used as a rule key.return: Variant matched result or default_result.
has_rule¶
- API:
public
检查邻域值是否存在明确规则。
参数:
| 名称 | 说明 |
|---|---|
neighbor_values |
邻域值序列。 |
返回:存在规则时返回 true。
结构:
neighbor_values: Array ordered neighbor values used as a rule key.