From fb12f6f2673eb677e841034ddf1185870ff9b906 Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Tue, 23 Jul 2019 17:01:37 +0800 Subject: [PATCH] 1 --- server/gameserver/human.cc | 38 +++++++++++++++++++++++-- server/gameserver/types.h | 2 ++ server/tools/protobuild/metatable.proto | 1 - 3 files changed, 37 insertions(+), 4 deletions(-) diff --git a/server/gameserver/human.cc b/server/gameserver/human.cc index c716076..36a6004 100644 --- a/server/gameserver/human.cc +++ b/server/gameserver/human.cc @@ -2057,12 +2057,43 @@ void Human::GenBattleReportData(a8::MutableXObject* params) params->SetVal("rank", stats.rank); params->SetVal("kills", stats.kills); params->SetVal("harm", stats.damage_amount_out); - params->SetVal("skill", 0); + params->SetVal("skill", stats.use_skill_times); params->SetVal("tank1_kill", 0); params->SetVal("tank2_kill", 0); params->SetVal("tank3_kill", 0); - params->SetVal("coin_num", 0); - params->SetVal("score", 0); + if (tank_meta_) { + switch (tank_meta_->i->type()) { + case 1: + { + params->SetVal("tank1_kill", stats.kills); + } + break; + case 2: + { + params->SetVal("tank2_kill", stats.kills); + } + break; + case 3: + { + params->SetVal("tank3_kill", stats.kills); + } + break; + default: + break; + } + } + { + float rank_param = MetaMgr::Instance()->GetRankRewardParam(stats.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); + } + { + stats.score = stats.rank; + params->SetVal("score", stats.score); + } params->SetVal("room_uuid", room->room_uuid); } @@ -2165,3 +2196,4 @@ void Human::InternalSendGameOver() delete params; sending_gameover_ = true; } + diff --git a/server/gameserver/types.h b/server/gameserver/types.h index 25c1cdd..f7282cb 100755 --- a/server/gameserver/types.h +++ b/server/gameserver/types.h @@ -106,6 +106,8 @@ struct PlayerStats int rank = 0; int cup = 0; std::vector> extra_drop; + + int use_skill_times = 0; }; struct HumanAbility diff --git a/server/tools/protobuild/metatable.proto b/server/tools/protobuild/metatable.proto index 476b33d..14f3b0c 100755 --- a/server/tools/protobuild/metatable.proto +++ b/server/tools/protobuild/metatable.proto @@ -223,7 +223,6 @@ message TankSkin required int32 id = 1; optional int32 tank_id = 2; } - //end message DoorObjJson