GFCombatActionModifier¶
API Reference / Combat / 类索引
- 路径:
addons/gf/extensions/combat/actions/gf_combat_action_modifier.gd - 模块:
Combat - 继承:
Resource - API:
public - 类别:资源定义 (
resource_definition) - 首次版本:
3.17.0
通用战斗动作修正器。 按动作类别和标签过滤后,调整动作数值或操作。它不解释动作业务语义, 只负责把一个 GFCombatAction 转换为另一个 GFCombatAction。
成员概览¶
| 类型 | 名称 | 签名 |
|---|---|---|
| 属性 | modifier_id |
var modifier_id: StringName = &"" |
| 属性 | accepted_action_kinds |
var accepted_action_kinds: Array[StringName] = [] |
| 属性 | rejected_action_kinds |
var rejected_action_kinds: Array[StringName] = [] |
| 属性 | required_tags |
var required_tags: Array[StringName] = [] |
| 属性 | amount_add |
var amount_add: float = 0.0 |
| 属性 | amount_multiplier |
var amount_multiplier: float = 1.0 |
| 属性 | override_operation |
var override_operation: bool = false |
| 属性 | operation |
var operation: GFCombatAction.Operation = GFCombatAction.Operation.SUBTRACT |
| 属性 | override_action_kind |
var override_action_kind: bool = false |
| 属性 | action_kind |
var action_kind: StringName = &"" |
| 属性 | metadata |
var metadata: Dictionary = {} |
| 方法 | matches |
func matches(action: GFCombatAction) -> bool: |
| 方法 | apply |
func apply(action: GFCombatAction) -> GFCombatAction: |
| 方法 | duplicate_modifier |
func duplicate_modifier() -> GFCombatActionModifier: |
属性¶
modifier_id¶
- API:
public
修正器标识。
accepted_action_kinds¶
- API:
public
非空时,只匹配这些动作类别。
rejected_action_kinds¶
- API:
public
始终拒绝匹配的动作类别。
required_tags¶
- API:
public
非空时,动作必须包含这些标签。
amount_add¶
- API:
public
数值加成。
amount_multiplier¶
- API:
public
数值乘区。
override_operation¶
- API:
public
是否覆盖动作操作。
operation¶
- API:
public
覆盖后的动作操作。
override_action_kind¶
- API:
public
是否覆盖动作类别。
action_kind¶
- API:
public
覆盖后的动作类别。
metadata¶
- API:
public
修正器元数据。
结构:
metadata: Dictionary,项目自定义元数据;应用修正器时复制到动作结果的 modifiers 记录中。
方法¶
matches¶
- API:
public
检查修正器是否匹配动作。
参数:
| 名称 | 说明 |
|---|---|
action |
原始动作。 |
返回:匹配时返回 true。
apply¶
- API:
public
应用修正器。
参数:
| 名称 | 说明 |
|---|---|
action |
原始动作。 |
返回:修正后的动作副本。
duplicate_modifier¶
- API:
public
复制修正器。
返回:新修正器。