载入中...
搜索中...
未找到
eve::rpg::EffectDefinition结构体 参考
#include <Effect.h>
Public 成员函数 | |
| bool | hasTag (const std::string &tag) const |
| std::string | getExtra (const std::string &key, const std::string &fallback={}) const |
Public 属性 | |
| std::string | id |
| std::string | durationPolicy = "instant" |
| "instant" | "duration" | "infinite"(未知值按 "instant" 处理)。 | |
| float | duration = 0.f |
| durationPolicy == "duration" 时使用(秒) | |
| float | period = 0.f |
| > 0 时为周期效果:每隔 period 秒产生一次 StatusTickEvent。 | |
| std::string | stackPolicy = "none" |
| "none" | "refresh" | "extend" | "stack",或 StatusSystem::registerStackPolicy 注册的名字。 未知且未注册时按 "none" 处理。 | |
| int | maxStacks = 1 |
| std::vector< EffectModifierSpec > | modifiers |
| durationPolicy 为 duration/infinite 且 period<=0 时,apply 会直接写入这些修改器。 | |
| std::vector< std::string > | tags |
| std::unordered_map< std::string, std::string > | extra |
| 游戏自定义附加数据(图标路径、特效名、脚本钩子……)。 | |
详细描述
成员函数说明
◆ getExtra()
| std::string eve::rpg::EffectDefinition::getExtra | ( | const std::string & | key, |
| const std::string & | fallback = {} |
||
| ) | const |
在文件 Effect.cpp 第 15 行定义.
引用了 extra.
◆ hasTag()
| bool eve::rpg::EffectDefinition::hasTag | ( | const std::string & | tag | ) | const |
在文件 Effect.cpp 第 11 行定义.
引用了 tags.
被这些函数引用 eve::rpg::StatusSystem::hasTag() , 以及 eve::rpg::StatusSystem::removeByTag().
类成员变量说明
◆ duration
| float eve::rpg::EffectDefinition::duration = 0.f |
◆ durationPolicy
| std::string eve::rpg::EffectDefinition::durationPolicy = "instant" |
"instant" | "duration" | "infinite"(未知值按 "instant" 处理)。
被这些函数引用 eve::rpg::StatusSystem::apply().
◆ extra
| std::unordered_map<std::string, std::string> eve::rpg::EffectDefinition::extra |
◆ id
| std::string eve::rpg::EffectDefinition::id |
◆ maxStacks
| int eve::rpg::EffectDefinition::maxStacks = 1 |
被这些函数引用 eve::rpg::StatusSystem::apply().
◆ modifiers
| std::vector<EffectModifierSpec> eve::rpg::EffectDefinition::modifiers |
durationPolicy 为 duration/infinite 且 period<=0 时,apply 会直接写入这些修改器。
被这些函数引用 eve::rpg::StatusSystem::apply().
◆ period
| float eve::rpg::EffectDefinition::period = 0.f |
> 0 时为周期效果:每隔 period 秒产生一次 StatusTickEvent。
被这些函数引用 eve::rpg::StatusSystem::apply() , 以及 eve::rpg::StatusSystem::update().
◆ stackPolicy
| std::string eve::rpg::EffectDefinition::stackPolicy = "none" |
"none" | "refresh" | "extend" | "stack",或 StatusSystem::registerStackPolicy 注册的名字。 未知且未注册时按 "none" 处理。
被这些函数引用 eve::rpg::StatusSystem::apply().
◆ tags
该结构体的文档由以下文件生成:
- src/modules/rpg/Effect.h
- src/modules/rpg/Effect.cpp