1
This commit is contained in:
parent
8e278d5817
commit
1e3f4023fa
@ -15,6 +15,8 @@ public:
|
||||
std::list<MetaData::Parameter> parameter_list;
|
||||
std::list<metatable::Map> map_meta_list;
|
||||
std::list<MetaData::Map> map_list;
|
||||
std::list<metatable::Snake> snake_meta_list;
|
||||
std::list<MetaData::Snake> snake_list;
|
||||
std::list<metatable::RankReward> rankreward_meta_list;
|
||||
std::list<MetaData::RankReward> rankreward_list;
|
||||
std::list<metatable::KillReward> killreward_meta_list;
|
||||
@ -28,6 +30,7 @@ public:
|
||||
|
||||
std::map<std::string, MetaData::Parameter*> parameter_hash;
|
||||
std::map<int, MetaData::Map*> gamemap_hash;
|
||||
std::map<int, MetaData::Snake*> snake_hash;
|
||||
std::map<int, MetaData::RankReward*> rankreward_hash;
|
||||
std::map<int, MetaData::KillReward*> killreward_hash;
|
||||
std::map<int, MetaData::RankPoint*> rankpoint_hash;
|
||||
@ -53,6 +56,7 @@ public:
|
||||
|
||||
f8::ReadCsvMetaFile(res_path + "parameter@parameter.csv", parameter_meta_list);
|
||||
f8::ReadCsvMetaFile(res_path + "map@map.csv", map_meta_list);
|
||||
f8::ReadCsvMetaFile(res_path + "snake@snake.csv", snake_meta_list);
|
||||
f8::ReadCsvMetaFile(res_path + "rankReward@rankReward.csv", rankreward_meta_list);
|
||||
f8::ReadCsvMetaFile(res_path + "killReward@killReward.csv", killreward_meta_list);
|
||||
f8::ReadCsvMetaFile(res_path + "killPoint@killPoint.csv", killpoint_meta_list);
|
||||
@ -100,6 +104,15 @@ private:
|
||||
}
|
||||
}
|
||||
|
||||
{
|
||||
for (auto& meta : snake_meta_list) {
|
||||
MetaData::Snake& item = a8::FastAppend(snake_list);
|
||||
item.p = &meta;
|
||||
item.Init();
|
||||
snake_hash[item.p->snake_id()] = &item;
|
||||
}
|
||||
}
|
||||
|
||||
for (auto& meta : rankreward_meta_list) {
|
||||
MetaData::RankReward& item = a8::FastAppend(rankreward_list);
|
||||
item.p = &meta;
|
||||
@ -182,6 +195,12 @@ MetaData::Map* MetaMgr::GetMap(int map_id)
|
||||
return itr != loader_->gamemap_hash.end() ? itr->second : nullptr;
|
||||
}
|
||||
|
||||
MetaData::Snake* MetaMgr::GetSnake(int snake_id)
|
||||
{
|
||||
auto itr = loader_->snake_hash.find(snake_id);
|
||||
return itr != loader_->snake_hash.end() ? itr->second : nullptr;
|
||||
}
|
||||
|
||||
float MetaMgr::GetRankRewardParam(int rank)
|
||||
{
|
||||
auto itr = loader_->rankreward_hash.find(rank);
|
||||
|
@ -20,6 +20,7 @@ class MetaMgr : public a8::Singleton<MetaMgr>
|
||||
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::Snake* GetSnake(int snake_id);
|
||||
float GetRankRewardParam(int rank);
|
||||
float GetKillRewardParam(int kill_num);
|
||||
int GetRankPointParam1(int rank);
|
||||
|
@ -14,7 +14,8 @@ message Parameter
|
||||
|
||||
message Snake
|
||||
{
|
||||
optional float radius = 1;
|
||||
optional int32 snake_id = 100;
|
||||
optional float init_radius = 1;
|
||||
optional float interval = 2;
|
||||
optional float speed_normal = 3;
|
||||
optional float level_of_accelation = 4;
|
||||
@ -29,7 +30,7 @@ message Snake
|
||||
optional float attenuation_interval = 13;
|
||||
optional float single_value = 14;
|
||||
optional float stop_accelation = 15;
|
||||
optional int32 body_num = 16;
|
||||
optional int32 init_body_size = 16;
|
||||
optional int32 begin_length = 17;
|
||||
optional float body_index = 18;
|
||||
optional float max_body = 19;
|
||||
|
Loading…
x
Reference in New Issue
Block a user