击杀金币ok

This commit is contained in:
aozhiwei 2019-05-23 17:41:00 +08:00
parent 15ac657d30
commit c400f00536
5 changed files with 36 additions and 5 deletions

View File

@ -1808,7 +1808,10 @@ void Human::GenBattleReportData(a8::MutableXObject* params)
params->SetVal("rescue_member", stats.rescue_member);
{
int coin_num = (rank * MetaMgr::Instance()->rank_param) + (stats.kills * MetaMgr::Instance()->kill_param);
float rank_param = MetaMgr::Instance()->GetRankRewardParam(rank);
float kill_param = MetaMgr::Instance()->GetKillRewardParam(stats.kills);
int coin_num = (rank_param * MetaMgr::Instance()->rank_param) +
(kill_param * MetaMgr::Instance()->kill_param);
stats.gold = coin_num;
params->SetVal("coin_num", coin_num);
}

View File

@ -156,4 +156,9 @@ namespace MetaData
const metatable::RankReward* i = nullptr;
};
struct KillReward
{
const metatable::KillReward* i = nullptr;
};
}

View File

@ -41,6 +41,8 @@ public:
std::list<MetaData::RankReward> rankreward_list;
std::list<metatable::EquipUpgrade> equipupgrade_meta_list;
std::list<MetaData::EquipUpgrade> equipupgrade_list;
std::list<metatable::KillReward> killreward_meta_list;
std::list<MetaData::KillReward> killreward_list;
std::map<std::string, MetaData::Parameter*> parameter_hash;
std::map<int, MetaData::Map*> gamemap_hash;
@ -57,6 +59,7 @@ public:
std::map<int, MetaData::Dress*> dress_hash;
std::map<int, MetaData::Skill*> skill_hash;
std::map<int, MetaData::RankReward*> rankreward_hash;
std::map<int, MetaData::KillReward*> killreward_hash;
std::map<long long, MetaData::EquipUpgrade*> equipupgrade_hash;
void Load()
@ -91,6 +94,7 @@ public:
f8::ReadCsvMetaFile(res_path + "dress@dress.csv", dress_meta_list);
f8::ReadCsvMetaFile(res_path + "skill@skill.csv", skill_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 + "equipUpgrade@equipUpgrade.csv", equipupgrade_meta_list);
BindToMetaData();
#if 1
@ -236,6 +240,12 @@ private:
rankreward_hash[item.i->rank()] = &item;
}
for (auto& meta : killreward_meta_list) {
MetaData::KillReward& item = a8::FastAppend(killreward_list);
item.i = &meta;
killreward_hash[item.i->kill_num()] = &item;
}
for (auto& meta : equipupgrade_meta_list) {
MetaData::EquipUpgrade& item = a8::FastAppend(equipupgrade_list);
item.i = &meta;
@ -372,8 +382,14 @@ MetaData::Dress* MetaMgr::GetDress(int dress_id)
return itr != loader_->dress_hash.end() ? itr->second : nullptr;
}
MetaData::RankReward* MetaMgr::GetRankReward(int rank)
float MetaMgr::GetRankRewardParam(int rank)
{
auto itr = loader_->rankreward_hash.find(rank);
return itr != loader_->rankreward_hash.end() ? itr->second : nullptr;
return itr != loader_->rankreward_hash.end() ? itr->second->i->parameter() : 0.0f;
}
float MetaMgr::GetKillRewardParam(int kill_num)
{
auto itr = loader_->killreward_hash.find(kill_num);
return itr != loader_->killreward_hash.end() ? itr->second->i->parameter() : 0.0f;
}

View File

@ -33,7 +33,8 @@ class MetaMgr : public a8::Singleton<MetaMgr>
MetaData::AirLine* RandAirLine();
MetaData::Skill* GetSkill(int skill_id);
MetaData::Dress* GetDress(int dress_id);
MetaData::RankReward* GetRankReward(int rank);
float GetRankRewardParam(int rank);
float GetKillRewardParam(int kill_num);
int gas_inactive_time = 10;
int jump_time = 10;

View File

@ -150,7 +150,13 @@ message Dress
message RankReward
{
optional int32 rank = 1;
optional int32 parameter = 2;
optional float parameter = 2;
}
message KillReward
{
optional int32 kill_num = 1;
optional float parameter = 2;
}
//end