63 lines
2.1 KiB
C++
Executable File
63 lines
2.1 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::Map* RandMap();
|
|
MetaData::MapThing* GetMapThing(int mapthing_id);
|
|
MetaData::Player* GetPlayer(int id);
|
|
MetaData::Equip* GetEquip(int id);
|
|
MetaData::Equip* GetEquipBySlotId(int slot_id);
|
|
MetaData::Building* GetBuilding(int building_id);
|
|
MetaData::Drop* GetDrop(int drop_id);
|
|
MetaData::SafeArea* GetSafeArea(int area_id);
|
|
std::vector<MetaData::MapTplThing>* GetMapTplThing(const std::string& map_name);
|
|
std::vector<MetaData::MapTplThing>* GetMapBornPoints(const std::string& map_name);
|
|
bool GetMapTplSize(const std::string& map_name, int& width, int& height);
|
|
MetaData::Skill* GetSkill(int skill_id);
|
|
MetaData::Buff* GetBuff(int buff_id);
|
|
MetaData::Attr* GetAttrById(int attr_id);
|
|
MetaData::Attr* GetAttrByName(const std::string& attr_name);
|
|
MetaData::Driver* GetDriver(int driver_id);
|
|
MetaData::Tank* GetTank(int tank_id);
|
|
MetaData::TankSkin* GetTankSkin(int tank_id);
|
|
int RandTank();
|
|
float GetRankRewardParam(int rank);
|
|
float GetKillRewardParam(int kill_num);
|
|
std::vector<MetaData::Robot>* GetRobotList();
|
|
MetaData::Robot* GetRobot(int robot_id);
|
|
|
|
int gas_inactive_time = 10;
|
|
float K = 100.0f;
|
|
float kill_param = 0.0f;
|
|
float rank_param = 0.0f;
|
|
int fighting_mode = 0;
|
|
int revive_time = 5;
|
|
int game_duration = 60 * 2;
|
|
float grass_invisible_time = 0.5;
|
|
float grass_show_time = 0.5f;
|
|
float grass_invisible_time2 = 2.0f;
|
|
float robot_pursuit_range = 800.0f;
|
|
float robot_attack_range = 256.0f;
|
|
|
|
private:
|
|
MetaDataLoader* loader_ = nullptr;
|
|
};
|