15#include <unordered_map>
35 std::vector<std::string>
tags;
36 std::unordered_map<std::string, std::string>
extra;
39 bool hasTag(
const std::string &
tag)
const;
41 std::string getExtra(
const std::string &
key,
const std::string &fallback = {})
const;
57 static bool remove(
const std::string &
id);
68 static int loadFromJson(
const std::string &json, std::string *
error =
nullptr);
#define EVENGINE_API_PLATFORM
RPG 模块的基础实体:把属性 / 状态 / 技能三张表挂到一个 ECS 实体上。
std::unordered_map< std::string, std::string > extra
std::vector< TraitSpec > traits
std::vector< std::string > tags
std::string kind
"paramRate" | "elementRate" | "stateRate" | "stateResist" | "exParam" | "attackElement" | "attackStat...
std::string target
目标名(参数/元素/状态/exParam 名);部分 kind 可空。
double value
倍率或加值;攻击次数为整数加值,其它多为倍率。