/// <summary> /// 创建房间,交给服务器查询房间号是否重复 /// </summary> /// <param name="room">房间号及其配置</param> /// <returns>在房间中的id,-1为不成功</returns> public int CreateRoom(RoomDesc room, string password) { CreateRoomC2S createRoom = new CreateRoomC2S(room, password); Send(createRoom); //waitTimer.Start(); wait.WaitOne(); return((int)transmit); }
private void CreateRoom(UserToken userToken, CreateRoomC2S createRoom) { int roomId = createRoom.RoomDesc.ID; if (id2rooms.ContainsKey(roomId)) { SendData(userToken, new CreateRoomS2C(-1)); return; } BaseRoom room = new BaseRoom(createRoom.RoomDesc, createRoom.Password); id2rooms.Add(roomId, room); int playerIndex = room.PlayerJoin(userToken); SendData(userToken, new CreateRoomS2C(playerIndex)); }