跳转至

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
var modifier_id: StringName = &""

修正器标识。

accepted_action_kinds

  • API:public
var accepted_action_kinds: Array[StringName] = []

非空时,只匹配这些动作类别。

rejected_action_kinds

  • API:public
var rejected_action_kinds: Array[StringName] = []

始终拒绝匹配的动作类别。

required_tags

  • API:public
var required_tags: Array[StringName] = []

非空时,动作必须包含这些标签。

amount_add

  • API:public
var amount_add: float = 0.0

数值加成。

amount_multiplier

  • API:public
var amount_multiplier: float = 1.0

数值乘区。

override_operation

  • API:public
var override_operation: bool = false

是否覆盖动作操作。

operation

  • API:public
var operation: GFCombatAction.Operation = GFCombatAction.Operation.SUBTRACT

覆盖后的动作操作。

override_action_kind

  • API:public
var override_action_kind: bool = false

是否覆盖动作类别。

action_kind

  • API:public
var action_kind: StringName = &""

覆盖后的动作类别。

metadata

  • API:public
var metadata: Dictionary = {}

修正器元数据。

结构:

  • metadata: Dictionary,项目自定义元数据;应用修正器时复制到动作结果的 modifiers 记录中。

方法

matches

  • API:public
func matches(action: GFCombatAction) -> bool:

检查修正器是否匹配动作。

参数:

名称 说明
action 原始动作。

返回:匹配时返回 true。

apply

  • API:public
func apply(action: GFCombatAction) -> GFCombatAction:

应用修正器。

参数:

名称 说明
action 原始动作。

返回:修正后的动作副本。

duplicate_modifier

  • API:public
func duplicate_modifier() -> GFCombatActionModifier:

复制修正器。

返回:新修正器。