Esempio n. 1
0
        /* Private methods */
        async private Task <ServerStatus> GetServerInfo(Server _serverEntry)
        {
            try
            {
                QueryMaster.GameServer.Server serverQuery =
                    QueryMaster.GameServer.ServerQuery.GetServerInstance(
                        QueryMaster.EngineType.Source,
                        new IPEndPoint(IPAddress.Parse(_serverEntry.IPAddress),
                                       _serverEntry.Port), false, 2500, 2500, 1);

                QueryMaster.GameServer.ServerInfo serverInfo = serverQuery.GetInfo();

                if (serverInfo != null)
                {
                    var result = new ServerStatus()
                    {
                        Map        = serverInfo.Description,
                        World      = serverInfo.Map,
                        Online     = true,
                        Players    = serverInfo.Players,
                        MaxPlayers = serverInfo.MaxPlayers
                    };

                    return(result);
                }
                else
                {
                    return(new ServerStatus()
                    {
                        Online = false
                    });
                }
            }
            catch (Exception)
            {
                return(new ServerStatus()
                {
                    Online = false
                });
            }
        }
Esempio n. 2
0
 /// <summary>
 /// Create Connection Object Handler
 /// </summary>
 public ArkServer()
 {
     _server = QueryMaster.GameServer.ServerQuery.GetServerInstance(_game, _ip, _port);
 }