繁体   English   中英

Unity Google Play游戏IsConnectedToRoom检查

[英]Unity Google Play Games IsConnectedToRoom Check

我无法检查参与者是否仍连接到房间。

我这样写:

bool status=GooglePlayGames.Native.PInvoke.MultiplayerParticipant.AutomatchingSentinel().IsConnectedToRoom();

if (status = true) 
{
    this.gameObject.GetComponent<Text> ().text = "participant is connected";
}

if (status = false) 
{
    this.gameObject.GetComponent<Text> ().text = "participant left";
}`

连接播放器后,将显示“连接参与者”。

但是,当玩家按下主屏幕按钮并返回屏幕时,参与者被呼叫OnPeersDisconnected并离开会议室。 但是对于实际的播放器,仍然显示“参与者已连接”。

我怎么知道IsConnectedToRoom()为假?

这可能仍然取决于实现的方式。 根据文件

确保仔细构造您的游戏逻辑,以考虑每个参与者的状态和联系。 例如,要确定所有赛车手是否都越过终点线,您的游戏应仅考虑连接的参与者; 有些人可能离开了房间,或者从未接受过邀请。

检测播放器何时断开连接

您的播放器可能由于网络连接或服务器问题而与房间断开了连接。 要在玩家与房间断开连接时得到通知,请实现OnConnectedSetChanged方法。

virtual void OnConnectedSetChanged(RealTimeRoom const &room) {
  // Check the room's participants to see who connected/disconnected.
}

希望这可以帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM