载入中...
搜索中...
未找到
BuildingDef.cpp
浏览该文件的文档.
static void registerBuilding(const BuildingDefinition &def)
Definition BuildingDef.cpp:64
static int loadFromJson(const std::string &json, std::string *error=nullptr)
从 JSON 数组或单对象批量注册,返回成功数量。 元素形如: { "id": "house.wood", "displayName": "木屋", "category": "housing",...
Definition BuildingDef.cpp:126
static const BuildingDefinition * find(const std::string &id)
Definition BuildingDef.cpp:80
static bool remove(const std::string &id)
Definition BuildingDef.cpp:86
Definition Json.h:96
static Document parse(const std::string &text, std::string *error=nullptr)
Definition Json.cpp:449
Definition Json.h:32
std::string getString(const char *key, const std::string &fallback={}) const
Definition Json.cpp:390
std::vector< std::string > getStringArray(const char *key) const
Definition Json.cpp:402
std::unordered_map< std::string, int > getIntMap(const char *key) const
Definition Json.cpp:432
std::unordered_map< std::string, std::string > getStringMap(const char *key) const
Definition Json.cpp:424
std::vector< int > getIntArray(const char *key) const
Definition Json.cpp:406
建筑放置模块入口:定义 / 放置世界 / 鬼影 / 变更事件的脚本绑定点。 设计文档:docs/dev/建筑放置系统设计.md
Definition Building.cpp:7
std::unordered_map< std::string, std::string > visual2d
Definition BuildingTypes.h:46
std::unordered_map< std::string, int > cost
Definition BuildingTypes.h:43
std::unordered_map< std::string, std::string > visual3d
Definition BuildingTypes.h:48
bool maskAt(int localX, int localY) const
占地掩码在局部坐标 (localX, localY) 处是否占用。
Definition BuildingDef.cpp:38
std::unordered_map< std::string, std::string > extra
Definition BuildingTypes.h:44
std::string getVisual2d(const std::string &key, const std::string &fallback={}) const
Definition BuildingDef.cpp:21
int getCost(const std::string &resource, int fallback=0) const
Definition BuildingDef.cpp:33
std::string getExtra(const std::string &key, const std::string &fallback={}) const
Definition BuildingDef.cpp:15
std::vector< uint8_t > footprintMask
可选占地掩码,长度 footprintW*footprintH;空表示实心矩形。行主序、原点在最小 x/y。
Definition BuildingTypes.h:28
std::vector< int > forbidTerrain
Definition BuildingTypes.h:38
std::string getVisual3d(const std::string &key, const std::string &fallback={}) const
Definition BuildingDef.cpp:27
void setProp(const std::string &key, const std::string &value)
Definition BuildingDef.cpp:55
std::string getProp(const std::string &key, const std::string &fallback={}) const
Definition BuildingDef.cpp:50
std::unordered_map< std::string, std::string > props
Definition BuildingTypes.h:72
bool hasTag(const std::string &tag) const
Definition BuildingDef.cpp:46