【问题标题】:photon chat unity plugin - how to know if a friend is online or notphoton chat unity plugin - 如何知道朋友是否在线
【发布时间】:2015-02-14 05:30:40
【问题描述】:

我在 unity3d 多人游戏中使用光子聊天插件。我添加了一些朋友,可以给他们发私信。我想显示那个朋友是否在线。

我可以使用状态更新回调,但它只会显示更改状态的朋友。我怎样才能得到已经在线的朋友?

我已经浏览过 FriendInfo 的语法,但不知道如何使用它。 任何知道某个特定客户是否在线的小例子都会很有帮助。

谢谢!

【问题讨论】:

    标签: unity3d unityscript photon


    【解决方案1】:

    要获取朋友状态更新,您可以向 Photon 发送一个包含他们用户名的字符串数组。

    friends = new List<string>() { "Ford", "Zaphod", "Marvin", "Eddie" };
    chatClient.AddFriends(friends.ToArray());
    

    对于所有在线朋友,您将在 IChatClientListener 界面上收到OnStatusUpdate() 的当前状态的初始更新。

    OnStatusUpdate( string user, int status, bool gotMessage, object message )
    {
        Console.WriteLine( "Status change for: " + user + " to: " + status );
    }
    

    没有收到状态更新的朋友离线。

    【讨论】:

    • 这对我有用......它只是每次都提供状态更新。
    • 如果您缩小“不是……每次”的范围可能会有所帮助,这是我们无法每次都重现的情况……;))
    • not everytime... 意思是...每次我在 photon chay 中连接时,我都没有收到所有在线朋友的更新...所以显示当前在线朋友有问题。跨度>
    【解决方案2】:

    您可以调用每 5 秒通过 photon 更新好友列表的事件。在那个朋友列表中应该是这样的

    foreach(PhotonFriendInfo friend in friendList)
            {
             Status.text=friend.IsOnline? "Online":"Offline";
             }
    

    所以调用每 5 或 10 秒调用一次的事件

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-04-22
      • 2020-12-18
      • 1970-01-01
      • 1970-01-01
      • 2013-09-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多