public static void Update(float deltaTime) { ServerType type = NetworkManager.GetCurrentServerType(); if ((type == ServerType.GameServer || type == ServerType.LobbyServer) & NetworkManager.IsCurrentClientConnected()) { pingTime -= deltaTime; if (pingTime <= 0) { pingTime = GameConstants.PING_TIME; PingServer(type); } } if (connectSocialServer) { if (NetworkManager.IsClientConnected(ServerType.SocialServer)) { pingSocialServerTime -= deltaTime; if (pingSocialServerTime <= 0) { pingSocialServerTime = GameConstants.PING_TIME; PingServer(ServerType.SocialServer); } } } }
public static void PingServer(ServerType type) { if (NetworkManager.IsClientConnected(type)) { if (type == ServerType.GameServer) { PingGameC2S message = new PingGameC2S(); byte[] data = ProtobufUtils.Serialize(message); NetworkManager.SendRequest(type, MsgCode.PingGameMessage, data); } else if (type == ServerType.LobbyServer) { PingLobbyC2S message = new PingLobbyC2S(); byte[] data = ProtobufUtils.Serialize(message); NetworkManager.SendRequest(type, MsgCode.PingLobbyMessage, data); } else if (type == ServerType.SocialServer) { PingSocialC2S message = new PingSocialC2S(); byte[] data = ProtobufUtils.Serialize(message); NetworkManager.SendRequest(ServerType.SocialServer, MsgCode.PingSocialServer, data); } else { } } }