游戏诉求
游戏场景中,提供玩家锁定房间的功能,锁定过程可能发生在创建房间时,也可能在加入房间后。锁定的房间其他玩家可见。同时提供隐藏房间功能,隐藏的房间其他玩家不可见。
解决方案
锁定房间功能
在创建房间时锁定,在调用创建房间接口中,通过设置client.createRoom对象参数CreateRoomConfig中isLock为1。在加入房间后锁定,可以通过修改房间属性接口来实现,在调用room.updateRoomProperties(roomProperties)时,设置roomProperties中isLock为1.
Lock的房间,其他人可以通过获取房间列表查询到,但无法加入,尝试加入会报错,101142 ROOM_IS_LOCK房间已被锁定。
隐藏房间
在在创建房间时隐藏,在调用创建房间接口中,通过设置client.createRoom对象参数CreateRoomConfig中isPrivate为1。在加入房间后隐藏,可以通过修改房间属性接口来实现,在调用room.updateRoomProperties(roomProperties)时,设置roomProperties中isPrivate为1.
隐藏后的房间,其他玩家通过获取房间列表是查询不到的。