载入中...
搜索中...
未找到
eve::rpg::TraitRegistry类 参考

进程级特征定义注册表。 更多...

#include <Trait.h>

静态 Public 成员函数

static void registerTrait (const TraitDefinition &def)
 Registers trait.
 
static const TraitDefinition * find (const std::string &id)
 Find a registered trait definition by id.
 
static bool remove (const std::string &id)
 Remove a trait by id (compatibility facade returning whether it was present).
 
static void clear ()
 Clears .
 
static int count ()
 Returns the number of .
 
static int loadFromJson (const std::string &json, std::string *error=nullptr)
 从 JSON 数组/对象批量注册,返回成功数量。元素形如: { "id":"fire_resist", "traits":[{"kind":"elementRate","target":"fire","value":0.5}, {"kind":"elementRate","target":"ice","value":1.5}], "tags":["defense"] }
 

详细描述

进程级特征定义注册表。

在文件 Trait.h 第 45 行定义.

成员函数说明

◆ clear()

void eve::rpg::TraitRegistry::clear ( )
static

Clears .

在文件 Trait.cpp 第 40 行定义.

被这些函数引用 eve::rpg::RPG::clearTraitDefinitions().

◆ count()

int eve::rpg::TraitRegistry::count ( )
static

Returns the number of .

在文件 Trait.cpp 第 42 行定义.

引用了 size.

被这些函数引用 eve::rpg::RPG::getTraitDefinitionCount().

◆ find()

const TraitDefinition * eve::rpg::TraitRegistry::find ( const std::string &  id)
static

Find a registered trait definition by id.

返回
Borrowed nullable definition owned by the process-local registry. @ownership TraitRegistry owns the definition; callers must not delete or mutate it. @lifetime Valid until remove(), clear(), or replacement of the same id; copy data before registry mutation.

在文件 Trait.cpp 第 32 行定义.

引用了 t.

◆ loadFromJson()

int eve::rpg::TraitRegistry::loadFromJson ( const std::string &  json,
std::string *  error = nullptr 
)
static

从 JSON 数组/对象批量注册,返回成功数量。元素形如: { "id":"fire_resist", "traits":[{"kind":"elementRate","target":"fire","value":0.5}, {"kind":"elementRate","target":"ice","value":1.5}], "tags":["defense"] }

在文件 Trait.cpp 第 44 行定义.

引用了 eve::json::Value::at(), error, eve::rpg::TraitDefinition::extra, eve::json::Value::get(), eve::rpg::TraitDefinition::id, eve::rpg::TraitSpec::kind, n, eve::json::Document::parse(), eve::json::Document::root(), root, eve::json::Value::size(), t, eve::rpg::TraitDefinition::tags, eve::rpg::TraitSpec::target, eve::rpg::TraitDefinition::traits, eve::json::Document::valid() , 以及 eve::rpg::TraitSpec::value.

被这些函数引用 eve::rpg::RPG::registerTraitsFromJson().

◆ registerTrait()

void eve::rpg::TraitRegistry::registerTrait ( const TraitDefinition &  def)
static

Registers trait.

在文件 Trait.cpp 第 27 行定义.

引用了 eve::rpg::TraitDefinition::id.

◆ remove()

bool eve::rpg::TraitRegistry::remove ( const std::string &  id)
static

Remove a trait by id (compatibility facade returning whether it was present).

在文件 Trait.cpp 第 38 行定义.


该类的文档由以下文件生成: