/// <summary> /// 创建房间 /// </summary> /// <param name="msg"></param> public override IMessage OnCreateRoom(ByteString msg) { Request request = new Request(); ByteUtils.ByteStringToObject(request, msg); Reply reply = new Reply() { UserID = request.UserID, GameID = request.GameID, RoomID = request.RoomID, Errno = ErrorCode.Ok, ErrMsg = "OnCreateRoom success" }; ulong roomID = request.RoomID; Room room = roomMgr.GetRoom(roomID); if (room == null) { Logger.Info("DoCreateRoomV32, create Room, roomId={0}", request.RoomID); room = roomMgr.CreateRoom(request.RoomID, request.GameID); } Logger.Info("OnCreateRoom start, userId={0}, gameId={1}, roomId={2}", request.UserID, request.GameID, request.RoomID); CreateExtInfo createEx = new CreateExtInfo(); ByteUtils.ByteStringToObject(createEx, request.CpProto); Logger.Info("OnCreateRoom CreateExtInfo, userId={0}, roomId={1}, state={2}, CreateTime={3}", createEx.UserID, createEx.RoomID, createEx.State, createEx.CreateTime); return(reply); }