跳转至

GFModifier

API Reference / Combat / 类索引

  • 路径:addons/gf/extensions/combat/attributes/gf_modifier.gd
  • 模块:Combat
  • 继承:RefCounted
  • API:public
  • 类别:值对象 (value_object)
  • 首次版本:3.17.0

属性修饰器数据类。 定义了如何修改一个通用属性(如加值、乘值)。 attribute_id 表示目标属性,source_id 表示来源,避免把“改谁”和“从哪来”混在一起。 通常由 Buff、装备或被动技能产生。

成员概览

类型 名称 签名
枚举 Type enum Type
属性 type var type: Type = Type.BASE_ADD
属性 value var value: float = 0.0
属性 attribute_id var attribute_id: StringName = &""
属性 source_id var source_id: StringName = &""
方法 create_base_add static func create_base_add( p_value: float, p_attribute_id: StringName = &"", p_source_id: StringName = &"" ) -> GFModifier:
方法 create_percent_add static func create_percent_add( p_value: float, p_attribute_id: StringName = &"", p_source_id: StringName = &"" ) -> GFModifier:
方法 create_final_add static func create_final_add( p_value: float, p_attribute_id: StringName = &"", p_source_id: StringName = &"" ) -> GFModifier:

枚举

Type

  • API:public
enum Type { ## 基础加值。 BASE_ADD, ## 百分比乘区。 PERCENT_ADD, ## 最终加值。 FINAL_ADD, }

修饰器计算类型。

属性

type

  • API:public
var type: Type = Type.BASE_ADD

修饰器类型。

value

  • API:public
var value: float = 0.0

修饰器的数值。

attribute_id

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

目标属性标识,例如 &"ATK"、&"HP"。

source_id

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

来源标识,例如 Buff ID、装备 ID 或被动技能 ID,用于查找和移除。

方法

create_base_add

  • API:public
static func create_base_add( p_value: float, p_attribute_id: StringName = &"", p_source_id: StringName = &"" ) -> GFModifier:

静态工厂方法:创建基础加值修饰器。

参数:

名称 说明
p_value 修饰器数值。
p_attribute_id 修饰器作用的属性标识。
p_source_id 修饰器来源标识。

返回:新修饰器。

create_percent_add

  • API:public
static func create_percent_add( p_value: float, p_attribute_id: StringName = &"", p_source_id: StringName = &"" ) -> GFModifier:

静态工厂方法:创建百分比加值修饰器。

参数:

名称 说明
p_value 修饰器数值。
p_attribute_id 修饰器作用的属性标识。
p_source_id 修饰器来源标识。

返回:新修饰器。

create_final_add

  • API:public
static func create_final_add( p_value: float, p_attribute_id: StringName = &"", p_source_id: StringName = &"" ) -> GFModifier:

静态工厂方法:创建最终加值修饰器。

参数:

名称 说明
p_value 修饰器数值。
p_attribute_id 修饰器作用的属性标识。
p_source_id 修饰器来源标识。

返回:新修饰器。