我正在尝试构建一个实时多人游戏,现在我正在探索谷歌为多人提供的示例游戏。链接是...
https://github.com/playgameservices/android-samples/tree/master/ButtonClicker
问题是当我根据我的要求更改自动匹配标准配置时
void startQuickGame() {
final int MIN_OPPONENTS = 1, MAX_OPPONENTS = 3;
Bundle autoMatchCriteria = RoomConfig.createAutoMatchCriteria(MIN_OPPONENTS,
MAX_OPPONENTS, 0);
RoomConfig.Builder rtmConfigBuilder = RoomConfig.builder(this);
rtmConfigBuilder.setMessageReceivedListener(this);
rtmConfigBuilder.setAutoMatchCriteria(autoMatchCriteria);
rtmConfigBuilder.setRoomStatusUpdateListener(this);
getGamesClient().createRoom(rtmConfigBuilder.build());
}
然后此代码不等待房间中的第 3 或第 4 位玩家(正如我在 MAX_OPPONENTS 中设置的那样),游戏立即以 2 位玩家(1 位对手)开始。我想在这里添加计时器,游戏在指定时间之后开始。
令人惊讶的是,在房间创建后,MIN_PLAYER 值在默认房间 UI 的这段代码中根本不起作用。
final int MIN_PLAYERS = 2;
Intent i = getGamesClient().getRealTimeWaitingRoomIntent(room, MIN_PLAYERS);
// show waiting room UI
startActivityForResult(i, RC_WAITING_ROOM);
我的要求是在房间创建后我想等待一个特定的时间,然后游戏从加入的玩家开始。无论它们是 2 、 3 还是 4。