diff --git a/server/gameserver/roommgr.cc b/server/gameserver/roommgr.cc index a6b60c08..d28cd77d 100644 --- a/server/gameserver/roommgr.cc +++ b/server/gameserver/roommgr.cc @@ -41,6 +41,8 @@ static const int ROOM_NUM_UP_LIMIT = 1000; static const int HUM_NUM_DOWN_LIMIT = 2500; +static const char CUSTOM_ROOM_TYPE = '1'; +static const char MOBA_ROOM_TYPE = '2'; static RoomType_e GetHumanRoomType(const std::shared_ptr netdata) { @@ -1160,7 +1162,23 @@ void RoomMgr::DispatchSpecRoom(f8::MsgHdr* hdr, const cs::CMJoin& msg) return; } if (msg.payload_data().at(0) == '?') { + switch (msg.payload_data().at(1)) { + case CUSTOM_ROOM_TYPE: + { + _CMJoinCustomBattle(hdr, msg); + } + break; + case MOBA_ROOM_TYPE: + { + } + break; + default: + { + return; + } + break; + } } else { _CMJoinCustomBattle(hdr, msg); }