From 13bad2274965e11f91d7e59367bb03a40f18371c Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Sun, 4 Feb 2024 19:02:24 +0800 Subject: [PATCH] 1 --- server/gameserver/custom_battle.cc | 4 ++-- server/gameserver/human.h | 14 ++++++++++++++ 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/server/gameserver/custom_battle.cc b/server/gameserver/custom_battle.cc index fdb95028..30ca5a2f 100644 --- a/server/gameserver/custom_battle.cc +++ b/server/gameserver/custom_battle.cc @@ -66,7 +66,7 @@ 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 MYDEBUG1 +#ifdef MYDEBUG if (IsMoba()) { member->account_id_ = member->account_id_ + "$$$$"; } @@ -83,7 +83,7 @@ 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 MYDEBUG1 +#ifdef MYDEBUG if (IsMoba()) { auto member = std::make_shared(); member->team_ = ob_team_.get(); diff --git a/server/gameserver/human.h b/server/gameserver/human.h index 47427290..999f2d9f 100644 --- a/server/gameserver/human.h +++ b/server/gameserver/human.h @@ -213,6 +213,20 @@ class Human : public Creature GGListener::Instance()->SendToClient(socket_handle, 0, msg); } } + template + void SendMsgSelfAndOb(T& msg) + { + TraverseObservers + ( + [this, &msg] (Human* ele_hum, bool& stop) + { + if (ele_hum == this || ele_hum->IsOb()) { + if (ele_hum->socket_handle != 0) { + GGListener::Instance()->SendToClient(ele_hum->socket_handle, 0, msg); + } + } + }); + } void SendGameOver(); void FollowTarget(Human* target); virtual void SendDebugMsg(const std::string& debug_msg) override;