Ejemplo n.º 1
0
        private void getServerStats(int serverId, bool fullStats)
        {
            SampQuery api = new SampQuery(serversIp[serverId], serversPort[serverId], 'i');

            if (fullStats)
            {
                foreach (KeyValuePair <string, string> kvp in api.read(true))
                {
                    if (kvp.Key == "gamemode" || kvp.Key == "players" || kvp.Key == "maxplayers" || kvp.Key == "hostname")
                    {
                        serverInfo.Add(kvp.Value);
                    }
                }
            }
            else
            {
                foreach (KeyValuePair <string, string> kvp in api.read(true))
                {
                    if (kvp.Key == "players" || kvp.Key == "maxplayers")
                    {
                        serverInfo.Add(kvp.Value);
                    }
                }
            }
        }
Ejemplo n.º 2
0
        public async Task SampStatus(string ip, ushort port)
        {
            if (Context.Channel.Id == (ulong)609542348287770624)
            {
                SampQuery    api     = new SampQuery(ip, port, 'i');
                EmbedBuilder builder = new EmbedBuilder();

                string nombrecat = "";
                string valorcat  = "";

                foreach (KeyValuePair <string, string> kvp in api.read(true))
                {
                    switch (kvp.Key)
                    {
                    case "password":
                        nombrecat = "Contraseña";
                        break;

                    case "players":
                        nombrecat = "Jugadores en linea";
                        break;

                    case "maxplayers":
                        nombrecat = "Slots";
                        break;

                    case "hostname":
                        nombrecat = "Nombre del servidor";
                        break;

                    case "gamemode":
                        nombrecat = "Gamemode";
                        break;

                    case "mapname":
                        nombrecat = "Mapa";
                        break;

                    default:
                        nombrecat = kvp.Key;
                        break;
                    }

                    if (kvp.Value == "0")
                    {
                        valorcat = "No";
                    }
                    else if (kvp.Value == "1")
                    {
                        valorcat = "Si";
                    }
                    else
                    {
                        valorcat = kvp.Value;
                    }

                    builder.WithTitle($"Estadísticas de {ip}:{port}");
                    builder.AddField($"{nombrecat}", $"{valorcat}", true);    // true - for inline
                    builder.WithThumbnailUrl("http://i.imgur.com/QnqZoTC.png");
                }

                builder.WithColor(Color.Red);

                if (valorcat == nombrecat)
                {
                    await ReplyAsync("⚠️ Los datos proporcionados no muestran ningún servidor en linea.");
                }
                else
                {
                    await Context.Channel.SendMessageAsync("", false, builder.Build());
                }
            }
            else
            {
                await ReplyAsync("⚠️ Dirígete a #comandos-bot para usar mis comandos.");
            }
        }