添加gm账号判断

This commit is contained in:
aozhiwei 2020-06-02 16:51:14 +08:00
parent 4b332b2057
commit 10a74eb413
2 changed files with 23 additions and 7 deletions

View File

@ -31,13 +31,10 @@ static RoomType_e GetHumanRoomType(const cs::CMJoin& msg)
}
//游戏次数,吃鸡数,击杀数
int game_times = a8::XValue(tmp_strings[0]);
if (!f8::IsOnlineEnv()) {
int channel = f8::ExtractChannelIdFromAccountId(msg.account_id());
if (channel != 6000) {
game_times = 0;
if (!msg.team_uuid().empty()) {
game_times = 1;
}
if (RoomMgr::Instance()->IsGM(msg)) {
game_times = 0;
if (!msg.team_uuid().empty()) {
game_times = 1;
}
}
#if 0
@ -55,6 +52,7 @@ static RoomType_e GetHumanRoomType(const cs::CMJoin& msg)
void RoomMgr::Init()
{
InstallReportStateTimer();
gm_hash_["6001_2004_oTR6b5d0UzpqJ1w-QbdUawWimgz0"] = 1;
}
void RoomMgr::UnInit()
@ -385,3 +383,19 @@ void RoomMgr::JoinErrorHandle(const cs::CMJoin& msg, int error_code, int socket_
PlayerMgr::Instance()->OnlineNum(),
});
}
bool RoomMgr::IsGM(const cs::CMJoin& msg)
{
if (gm_hash_.find(msg.account_id()) == gm_hash_.end()) {
return false;
}
for (int equip_id : msg.prepare_items()) {
MetaData::Equip* item_meta = MetaMgr::Instance()->GetEquip(equip_id);
if (item_meta) {
if (item_meta->i->equip_type() == EQUIP_TYPE_CAR) {
return true;
}
}
}
return false;
}

View File

@ -28,6 +28,7 @@ class RoomMgr : public a8::Singleton<RoomMgr>
int OverRoomNum();
Room* GetRoomByUuid(long long uuid);
void AddOverRoom(long long room_uuid);
bool IsGM(const cs::CMJoin& msg);
private:
void InstallReportStateTimer();
@ -49,4 +50,5 @@ class RoomMgr : public a8::Singleton<RoomMgr>
std::map<int, Room*> room_idx_hash_;
std::map<long long, Room*> over_room_hash_;
a8::TimerAttacher reportstate_timer_attacher_;
std::map<std::string, int> gm_hash_;
};