载入中...
搜索中...
未找到
单条修改器。附加在某个属性上,参与最终值计算。 更多...
#include <AttributeTypes.h>
Public 属性 | |
| std::string | id |
| 唯一 id(由 AttributeSystem 生成),用于精确移除 | |
| std::string | source |
| 来源标签(如 "effect:12" / "skill:fireball" / 自定义),用于批量移除 | |
| std::string | op = "add" |
| double | value = 0.0 |
| int | priority = 0 |
| 计算顺序,数值小的先应用;同优先级按插入顺序 | |
详细描述
单条修改器。附加在某个属性上,参与最终值计算。
op 内置语义: "add" — 所有 add 修改器直接求和后加到 base 上 "mulAdd" — 所有 mulAdd 修改器的 value 视为百分比,求和后一次性相乘: result *= (1 + sum(value)) "mulMul" — 每条 mulMul 修改器独立相乘:result *= (1 + value) "override" — 直接覆盖当前结果为 value(多条时取 priority 最大的一条生效) "clampMin" — result = max(result, value) "clampMax" — result = min(result, value) 其余字符串会在 AttributeSystem 的自定义 op 注册表中查找;找不到则忽略该修改器。
在文件 AttributeTypes.h 第 30 行定义.
类成员变量说明
◆ id
| std::string eve::rpg::AttributeModifier::id |
唯一 id(由 AttributeSystem 生成),用于精确移除
在文件 AttributeTypes.h 第 31 行定义.
◆ op
| std::string eve::rpg::AttributeModifier::op = "add" |
在文件 AttributeTypes.h 第 33 行定义.
◆ priority
| int eve::rpg::AttributeModifier::priority = 0 |
计算顺序,数值小的先应用;同优先级按插入顺序
在文件 AttributeTypes.h 第 35 行定义.
◆ source
| std::string eve::rpg::AttributeModifier::source |
来源标签(如 "effect:12" / "skill:fireball" / 自定义),用于批量移除
在文件 AttributeTypes.h 第 32 行定义.
◆ value
| double eve::rpg::AttributeModifier::value = 0.0 |
在文件 AttributeTypes.h 第 34 行定义.
该结构体的文档由以下文件生成:
- src/modules/rpg/AttributeTypes.h