我正在使用Google Play服务进行多人实时实施。 目标是让4名玩家在一个房间里一起玩,但如果一次没有玩家,那么游戏应该只有2或3名玩家开始。理想情况下,有一个计时器要求第一批玩家等一下。
解决方案1: 我使用RoomConfig.createAutoMatchCriteria(1,3,0); 但在这种情况下,自动匹配从不尝试连接3或4个玩家,但总是只用2个玩家启动游戏(onRoomConnected()调用2个玩家加入,其他人无法加入房间)
解决方案2: 我使用RoomConfig.createAutoMatchCriteria(3,3,0); 它适用于4名玩家。 但我不能手动启动游戏"没有调用回叫的2或3个玩家,特别是onPeersConnected()的方法永远不会在线有2个或3个玩家调用,但只有4个玩家连接时(顺便说一下,等候室是没用的,因为我们可以'看到其他2名玩家在等我们,当第3名玩家连接时,我们会看到所有其他3名玩家并收到所有相应的回调。)
我尝试设置Games.RealTimeMultiplayer.getWaitingRoomIntent(mGoogleApiClient,room,2); 但是(正如文档所说,至少有2名玩家应该可以)在没有等待失踪玩家的情况下启动游戏的按钮从未显示过(它只说:"没有让玩家开始#34;)。 [编辑:它似乎很正常,它只适用于邀请,而不是自动匹配。]
所以我为实现我的想法而陷入困境......
它总能与2名玩家一起工作(createAutoMatchCriteria(1,1,0)。
它总是与4名玩家一起工作(createAutoMatchCriteria(3,3,0),除非我们无法看到其他玩家是否在等候室等我们。
感谢您的帮助!