载入中...
搜索中...
未找到
Item.h
浏览该文件的文档.
1#pragma once
2
3// 物品定义注册表:数据驱动的 ItemDefinition(C++ 注册或 JSON 批量加载)。
4
6
7#include <string>
8#include <unordered_map>
9
10namespace eve::inventory {
11
13public:
14 static void registerItem(const ItemDefinition &def);
15 static const ItemDefinition *find(const std::string &id);
16 static bool remove(const std::string &id);
17 static void clear();
18 static int count();
19
30 static int loadFromJson(const std::string &json, std::string *error = nullptr);
31
32private:
33 static std::unordered_map<std::string, ItemDefinition> &table();
34};
35
36} // namespace eve::inventory
std::string error
static bool remove(const std::string &id)
Definition Item.cpp:59
static int loadFromJson(const std::string &json, std::string *error=nullptr)
从 JSON 数组或单对象批量注册,返回成功数量。 元素形如: { "id": "potion.hp", "displayName": "治疗药水", "maxStack": 20,...
Definition Item.cpp:84
static void registerItem(const ItemDefinition &def)
Definition Item.cpp:45
static const ItemDefinition * find(const std::string &id)
Definition Item.cpp:53
运行时容器:固定格数的背包 / 箱子 / 商店栏等。 行为由 InventorySystem 提供;本类暴露便于脚本绑定的薄封装方法。
Definition Bag.cpp:6
物品模板(进程级注册表中的定义,不含运行时数量)。
Definition ItemTypes.h:13