aozhiwei 706f2fa8c3 1
2019-04-12 14:10:51 +08:00

35 lines
655 B
C++

#pragma once
namespace cs
{
class CMJoin;
}
class Room;
class RoomMgr : public a8::Singleton<RoomMgr>
{
public:
enum { HID = HID_RoomMgr };
private:
RoomMgr() {};
friend class a8::Singleton<RoomMgr>;
public:
void Init();
void UnInit();
void Update(int delta_time);
void _CMJoin(f8::MsgHdr& hdr, const cs::CMJoin& msg);
void RemoveFromInactiveRoomHash(long long room_uuid);
int RoomNum();
private:
Room* GetJoinableRoom(const std::string& account_id);
Room* GetRoomByUuid(long long uuid);
private:
std::map<long long, Room*> inactive_room_hash_;
std::map<long long, Room*> room_hash_;
};