0

我已经成功集成了 google play 游戏服务。我正在使用此服务的多人游戏功能。现在我面临一个问题。

在成功创建游戏房间并在 onRoomCreated() 方法中收到回调后

@Override
public void onRoomCreated(int statusCode, Room room) {
    Log.d(TAG, "onRoomCreated(" + statusCode + ", " + room + ")");
    if (statusCode != GamesClient.STATUS_OK) {
        Log.e(TAG, "*** Error: onRoomCreated, status " + statusCode);
        showGameError();
        return;
    }

    // show the waiting room UI
    final int MIN_PLAYERS = 2;
    Intent i = getGamesClient().getRealTimeWaitingRoomIntent(room, MIN_PLAYERS);
    startActivityForResult(i, RC_WAITING_ROOM);

   // here i want to add timer ***
}

在这里我想添加计时器。如果房间里至少有 2 个用户,我想在特定时间后强制开始游戏。我怎么能做到这一点。

我想在 onRoomConnected(int statusCode, Room room) 回调方法之后开始的特定时间后开始游戏。

谷歌播放服务在我们在 MIN_PLAYERS 中提到的特定用户计数后启动游戏。但我想在特定时间后开始游戏,而不是在特定用户数之后

getGamesClient().getRealTimeWaitingRoomIntent(room, MIN_PLAYERS);
4

1 回答 1

0

您可以避免使用getRealTimeWaitingRoomIntent意图并直接调用broadcastStart(); 游戏开始(真);这两种方法来自 Google Play 游戏服务的官方示例)在特定时间后使用您的计时器。

请记住,您必须管理一些房间更新回调,具体取决于您的用例,它可能是onPeerDeclinedonPeerJoinedonPeerLeft、 [...] 和/或onPeersConnected

如果您想显示玩家信息也是如此,您必须自己实现它。

于 2013-07-06T21:58:51.543 回答