载入中...
搜索中...
未找到
src
modules
economy
ResourceType.h
浏览该文件的文档.
1
#pragma once
2
#include "
common/Export.h
"
3
4
5
#include <string>
6
#include <unordered_map>
7
8
namespace
eve::economy
{
9
11
enum class
DepletionModel
{
12
Finite
,
// 采完即枯竭(SC 矿簇)
13
Renewable
,
// 可再生(AoE 农田复种)
14
Infinite
,
// 无限供给
15
Growing
// 随时间增长(C&C 泰伯利亚)
16
};
17
21
struct
ResourceTypeDef
{
22
std::string
id
;
// 唯一标识("minerals" / "food" ...)
23
std::string
category
=
"stock"
;
// 存量型 / 速率型 / 特殊(人口)
24
int
stockMax
= 0;
// 玩家持有上限;0 表示不限
25
DepletionModel
depletion
=
DepletionModel::Finite
;
// 供给模型
26
std::string
displayName
;
// UI 显示名(可空)
27
};
28
32
class
EVENGINE_API_FOUNDATION
ResourceTypeRegistry
{
33
public
:
35
static
bool
registerType(
const
ResourceTypeDef
& def);
37
static
const
ResourceTypeDef
* find(
const
std::string&
id
);
39
static
int
count
();
47
static
const
ResourceTypeDef
* typeAt(
int
index
);
49
static
void
clear();
50
51
private
:
52
static
std::unordered_map<std::string, ResourceTypeDef>& types();
53
};
54
55
}
// namespace eve::economy
Export.h
EVENGINE_API_FOUNDATION
#define EVENGINE_API_FOUNDATION
每个链接组(link group)各自的导出宏。
Definition
Export.h:106
count
std::uint32_t count
Definition
SourceTiff.cpp:24
index
uint32_t index
Definition
UnityVegetationMaterial.cpp:163
eve::economy::ResourceTypeRegistry
资源类型注册表:注册 / 查询 / 清理。
Definition
ResourceType.h:32
eve::economy
Definition
IEconomy.h:5
eve::economy::DepletionModel
DepletionModel
资源节点的供给模型。
Definition
ResourceType.h:11
eve::economy::DepletionModel::Renewable
@ Renewable
eve::economy::DepletionModel::Finite
@ Finite
eve::economy::DepletionModel::Growing
@ Growing
eve::economy::DepletionModel::Infinite
@ Infinite
eve::economy::ResourceTypeDef
资源类型的静态定义(数据驱动配置的最小单元)。
Definition
ResourceType.h:21
eve::economy::ResourceTypeDef::displayName
std::string displayName
Definition
ResourceType.h:26
eve::economy::ResourceTypeDef::id
std::string id
Definition
ResourceType.h:22
eve::economy::ResourceTypeDef::stockMax
int stockMax
Definition
ResourceType.h:24
eve::economy::ResourceTypeDef::depletion
DepletionModel depletion
Definition
ResourceType.h:25
eve::economy::ResourceTypeDef::category
std::string category
Definition
ResourceType.h:23