2019-11-20 15:49:25 +08:00

60 lines
1.9 KiB
C++
Executable File

#pragma once
#include "metadata.h"
class MetaDataLoader;
class MetaMgr : public a8::Singleton<MetaMgr>
{
private:
MetaMgr() {};
friend class a8::Singleton<MetaMgr>;
public:
void Init();
void UnInit();
void Reload();
int GetSysParamAsInt(const std::string& param_name, int def_val = 0);
double GetSysParamAsFloat(const std::string& param_name, double def_val = 0.0f);
std::string GetSysParamAsString(const std::string& param_name, const char* def_val = "");
MetaData::Map* GetMap(int map_id);
MetaData::MapThing* GetMapThing(int mapthing_id);
MetaData::Player* GetPlayer(int id);
MetaData::Equip* GetEquip(int id);
MetaData::Equip* GetEquipBySlotId(int slot_id);
MetaData::EquipUpgrade* GetEquipUpgrade(int equip_id);
MetaData::Building* GetBuilding(int building_id);
MetaData::Drop* GetDrop(int drop_id);
MetaData::SafeArea* GetSafeArea(int area_id);
std::vector<MetaData::MapTplThing>* GetMapTplThing(std::string& map_name);
std::list<MetaData::AirDrop>& GetAirDrops();
MetaData::AirLine* RandAirLine(int map_id);
MetaData::Skill* GetSkill(int skill_id);
MetaData::Dress* GetDress(int dress_id);
float GetRankRewardParam(int rank);
float GetKillRewardParam(int kill_num);
int GetRankPointParam1(int rank);
int GetRankPointParam2(int rank);
int GetKillPointParam1(int kill_num);
int GetKillPointParam2(int kill_num);
std::vector<MetaData::Robot>* GetRobotList();
MetaData::Robot* GetRobot(int robot_id);
int gas_inactive_time = 10;
int jump_time = 10;
float K = 100.0f;
float kill_param = 0.0f;
float rank_param = 0.0f;
int fighting_mode = 0;
float tank_damage1 = 0.0f;
float tank_damage2 = 0.0f;
float tank_damage_interval = 0.0f;
float average_oil = 0.0f;
float max_oil = 0.0f;
private:
MetaDataLoader* loader_ = nullptr;
};