【发布时间】:2016-04-15 02:51:58
【问题描述】:
我正在用 android (google developers) 编写一个实时多人问答游戏。我从 googles Button Clicker 2000 的代码开始。我的问答游戏正在运行,但我遇到了一些问题。所有玩家都应该同时开始。在方法中
@Override
public void onRoomConnected(int statusCode, Room room) {
我正在定义一个主机(1 个玩家)。主持人创建测验问题。创建后,他将问题发送给每个人。现在 onRoomConnected 方法完成了,游戏阶段开始了。但有时其他玩家没有足够早地收到他们的问题,我得到一个空指针异常。 有没有办法在所有玩家都收到问题后开始游戏?
提前致谢!
更新:
Ray Wenderlich 的实时多人游戏教程非常有帮助。一个有趣的章节是“同步游戏开始”。不幸的是,这不是我正在寻找的。 Tutorial Real Time Multiplayer
【问题讨论】:
-
当您获得 NPE 时,
statusCode不是STATUS_OK?如果发生这种情况,建议您必须处理onRoomConnected中的错误。 API 类处理调用,因此一旦调用onRoomConnected,我们就无法真正设置延迟计时器(如果我理解正确的话,即使您实现了 NPE 错误,它仍然会出现 NPE 错误)。 -
我总是得到 STATUS_OK 代码。 NPE 发生在我的游戏逻辑阶段的后期。
标签: android google-play-services real-time google-play-games multiplayer