From 52cc1c8213d9f51d43c6aec0ca94ca5044360b0b Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Wed, 31 Jan 2024 15:19:47 +0800 Subject: [PATCH] 1 --- server/gameserver/custom_battle.cc | 32 +++++++++++++++++++++++++----- 1 file changed, 27 insertions(+), 5 deletions(-) diff --git a/server/gameserver/custom_battle.cc b/server/gameserver/custom_battle.cc index 50e468de..30ca5a2f 100644 --- a/server/gameserver/custom_battle.cc +++ b/server/gameserver/custom_battle.cc @@ -7,7 +7,9 @@ void CustomBattle::Init() { - + ob_team_ = std::make_shared(); + ob_team_->team_uuid_ = ""; + ob_team_->is_view_ = true; } void CustomBattle::UnInit() @@ -52,7 +54,7 @@ void CustomBattle::ParseResult(a8::XObject& obj) if (!team) { team = std::make_shared(); team->team_uuid_ = team_uuid; - team->is_view_ = is_view ? true : false; + team->is_view_ = false; uuid_hash_[team->team_uuid_] = team; } for (int ii = 0; ii < member_list->Size(); ++ii) { @@ -64,6 +66,11 @@ void CustomBattle::ParseResult(a8::XObject& obj) auto member = std::make_shared(); member->team_ = team.get(); member->account_id_ = member_obj->Get("account_id").GetString(); +#ifdef MYDEBUG + if (IsMoba()) { + member->account_id_ = member->account_id_ + "$$$$"; + } +#endif member->session_id_ = member_obj->Get("session_id").GetString(); member->name_ = member_obj->Get("name").GetString(); member->sex_ = member_obj->Get("sex"); @@ -76,13 +83,28 @@ void CustomBattle::ParseResult(a8::XObject& obj) member_id_hash_[member->account_id_] = member; team->member_hash_[member->account_id_] = member; account_hash_[member->account_id_] = team; +#ifdef MYDEBUG + if (IsMoba()) { + auto member = std::make_shared(); + member->team_ = ob_team_.get(); + member->account_id_ = member_obj->Get("account_id").GetString(); + member->session_id_ = member_obj->Get("session_id").GetString(); + member->name_ = member_obj->Get("name").GetString(); + member->sex_ = member_obj->Get("sex"); + member->battle_context_ = std::make_shared(); + member->battle_context_->ParseResult(*member_obj); + if (!member->battle_context_->parse_ok) { + parse_ok_ = false; + return; + } + account_hash_[member->account_id_] = ob_team_; + ob_id_hash_[member->account_id_] = member; + } +#endif } } } { - auto ob_team_ = std::make_shared(); - ob_team_->team_uuid_ = ""; - ob_team_->is_view_ = true; auto ob_list = obj.At("ob_list"); if (ob_list && ob_list->IsArray()) { for (int i = 0; i < ob_list->Size(); ++i) {