代码拉取完成,页面将自动刷新
#pragma once
#define 供需关系权子系数 1.0f
#define 供需关系权母系数 1.0f
#define 供需关系内系数 1.0f
#define 供需关系外系数 1.0f
#define 囤积居奇系数 1.0f
#define 有价无市系数 1.0f
#include <unordered_map>
//产品
class Product
{
int guid; // 产品的唯一标识
};
typedef std::unordered_map<int, Product> ProductMap;
//企业单位
typedef std::unordered_map<int, Enterprise> EnterpriseMap;
class EnterpriseDecision // 企业决策,意思是企业对于一种具体产品/物资的依赖信息
{
public:
int quantity; // 对这种产品/物资的依赖数量
int power; // 对这种产品/物资的依赖权级,企业内部使用时就是企业内部对这种资源的缺失或者产品的滞销带来的影响的权级,企业对外使用时就是企业在争取这种资源和这种市场时对市场影响力的权级
// 这种权级可以理解成为一种能用金钱衡量的东西?
};
typedef std::unordered_map<Product, EnterpriseDecision> GoodsStream;
class Enterprise
{
public:
void Initiate()
{
; // 初始化各种数据
DailyOperate(); // 第一轮运营
} // 初始化企业
GoodsStream * GetRequirement() { return &m_Requirement; }
GoodsStream * GetProduced() { return &m_Products; }
void Run(GoodsStream Bought, GoodsStream Sold);
private:
int HealthPoint; // 数值为金钱,企业承受风险的能力,公司的一切资产以及可动用的储备及关系折算成金钱的总和
// 公司要给员工开工资,要交税,要股东分红,要交各种费用……但是这些支出的最终去向,都是在市场上购买商品——生存物资和生产工具。所以这些内容合并到公司的运营需求中,不另外计算。
// 它们对公司的影响力,使用影响系数来实现
// 要注意,这个模型没有给银行的存在留位置。
GoodsStream m_Requirement;
GoodsStream m_Products;
// 内部运作使用
GoodsStream m_ProductLeft;
GoodsStream m_ResourceGot;
int GetImportance(); //计算单种产品的权级,根据市场价格来计算
void GetResourceTemplate(); //计算资源权级
void GetProductTemplate(); //计算产品权级
void DailyOperate();
void MakeProducingPlan(); //计算可生产产品数
void Produce(); //消耗资源,生产出最大可生产产品数
bool Evaluation();
void DeterminePrice();
class CoreTechnic
{
public:
GoodsStream m_ResourceTemplate;
GoodsStream m_ProductTemplate;
};
// 计划生产数量
int ProducedCount = 0;
// 持有资金量
int power = 0;
CoreTechnic Technic;
};
//市场
typedef std::unordered_map<Product, int> MarketChaosDegree;
class Market
{
public:
Market(EnterpriseMap* enterprises = nullptr)
{
m_Enterprises = *enterprises; // 初始化时获得,但实际上并非必要。比如说查询价格时。
}
void Initiate(EnterpriseMap* enterprises = nullptr);
void LifeCyrcle(ProductMap& input, ProductMap& output, float ChaosAdjust = 1.0f);
float GetPrice(Product product);
bool HasGood(Product product);
private:
struct PriceValue
{
float price;
bool hasGood;
};
typedef std::unordered_map<Product, PriceValue> PriceMap;
EnterpriseMap m_Enterprises;
static PriceMap m_Prices;
GoodsStream m_Products;
GoodsStream m_Requirement;
MarketChaosDegree m_Chaos;
};
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。