plugin bugeado
#1
Problemas con este plugin esta bugeado solo muestra la informacion de un solo server , podrian ayudarme a arregla eso de este plugin

Código PHP:
#include <amxmodx>
#include <server_query>

#pragma semicolon 1

#define PLUGIN_NAME "Servers Hud"
#define PLUGIN_AUTHOR "exo"

#define SZPREFIX "!g[SERVER]!y"

const MAX_SERVERS 2;

new const 
SERVERS_IP[MAX_SERVERS][] =
{
    "131.61.83.93:4254",
    "131.61.83.93:3045"
 
};

new 
g_server_name[32][256];
new 
g_server_map[32][32];
new 
g_server_maxplayers[32];
new 
g_server_online_players[32];

public 
plugin_init()
{
    register_plugin(PLUGIN_NAMEAMXX_VERSION_STRPLUGIN_AUTHOR);

    register_event("HLTV""event_HLTV""a""1=0""2=0");
}

public 
event_HLTV()
{
    new i;
    for (1MAX_SERVERSi++)
    {
        ServerInfo(SERVERS_IP[i], "getServerInfo");
    }

    set_task(1.2"task_ShowServers");
}

public 
task_ShowServers(id)
{
    new isBuffer[512];
    for (1MAX_SERVERSi++)
    {
        formatex(sBuffercharsmax(sBuffer), "%s [%s] (%d/%d)^n%s"g_server_name[i], g_server_map[i], g_server_online_players[i], g_server_maxplayers[i], sBuffer);
        
        set_hudmessage
(000100255, -1.00.0100.010.00.50.101);
        show_hudmessage(idsBuffer);
    }
}

/* Código de Neee...eeel.- (Community Info) */
public getServerInfo(const szServer[], _A2A_TYPE, const Response[], lensuccesslatency)
    {
    if (!success)
    {
        return;
    }

    new serverId = -1;
    for (new 1MAX_SERVERSi++)
    {
        if (equal(SERVERS_IP[i], szServer))
        {
            serverId i;
            break;
        }
    }

    if (serverId == -1)
    {
        return;
    }

    new szName[256], szMap[64], szDirectory[64], szDescription[64];
    new iPlayers 0;
    new iMaxPlayers 0;

    ServerResponseParseInfo(ResponseszNamecharsmax(szName), szMapcharsmax(szMap), szDirectorycharsmax(szDirectory), szDescriptioncharsmax(szDescription), iPlayersiMaxPlayers);

    copy(g_server_name[serverId], charsmax(g_server_name[]), szName);
    copy(g_server_map[serverId], charsmax(g_server_map[]), szMap);
    g_server_online_players[serverId] = iPlayers;
    g_server_maxplayers[serverId] = iMaxPlayers;

Responder
#2
(19/02/2021, 04:09 PM)MalitoMaloso escribió: Problemas con este plugin esta bugeado solo muestra la informacion de un solo server , podrian ayudarme a arregla eso de este plugin

Código PHP:
#include <amxmodx>
#include <server_query>

#pragma semicolon 1

#define PLUGIN_NAME "Servers Hud"
#define PLUGIN_AUTHOR "exo"

#define SZPREFIX "!g[SERVER]!y"

const MAX_SERVERS 2;

new const 
SERVERS_IP[MAX_SERVERS][] =
{
    "131.61.83.93:4254",
    "131.61.83.93:3045"
 
};

new 
g_server_name[32][256];
new 
g_server_map[32][32];
new 
g_server_maxplayers[32];
new 
g_server_online_players[32];

public 
plugin_init()
{
    register_plugin(PLUGIN_NAMEAMXX_VERSION_STRPLUGIN_AUTHOR);

    register_event("HLTV""event_HLTV""a""1=0""2=0");
}

public 
event_HLTV()
{
    new i;
    for (1MAX_SERVERSi++)
    {
        ServerInfo(SERVERS_IP[i], "getServerInfo");
    }

    set_task(1.2"task_ShowServers");
}

public 
task_ShowServers(id)
{
    new isBuffer[512];
    for (1MAX_SERVERSi++)
    {
        formatex(sBuffercharsmax(sBuffer), "%s [%s] (%d/%d)^n%s"g_server_name[i], g_server_map[i], g_server_online_players[i], g_server_maxplayers[i], sBuffer);
        
        set_hudmessage
(000100255, -1.00.0100.010.00.50.101);
        show_hudmessage(idsBuffer);
    }
}

/* Código de Neee...eeel.- (Community Info) */
public getServerInfo(const szServer[], _A2A_TYPE, const Response[], lensuccesslatency)
    {
    if (!success)
    {
        return;
    }

    new serverId = -1;
    for (new 1MAX_SERVERSi++)
    {
        if (equal(SERVERS_IP[i], szServer))
        {
            serverId i;
            break;
        }
    }

    if (serverId == -1)
    {
        return;
    }

    new szName[256], szMap[64], szDirectory[64], szDescription[64];
    new iPlayers 0;
    new iMaxPlayers 0;

    ServerResponseParseInfo(ResponseszNamecharsmax(szName), szMapcharsmax(szMap), szDirectorycharsmax(szDirectory), szDescriptioncharsmax(szDescription), iPlayersiMaxPlayers);

    copy(g_server_name[serverId], charsmax(g_server_name[]), szName);
    copy(g_server_map[serverId], charsmax(g_server_map[]), szMap);
    g_server_online_players[serverId] = iPlayers;
    g_server_maxplayers[serverId] = iMaxPlayers;


Código PHP:
for (new 1MAX_SERVERSi++)
-->
for (new 
0MAX_SERVERSi++) 

En todas las líneas que tengan ese for haces lo mismo

Responder
#3
gracias bro lo probare

mira lo puse haci , ahora me tira la informacion 3 veces



sale asi

[.CL] Server publico cs 1.6 [PUBLICO]
[.CL] Server publico cs 1.6 [PUBLICO]
[.CL] Server publico cs 1.6 [PUBLICO]


LA IDEA ES QUE SALGA LOS 2 SV PERO CON LA INFORMACION BIEN
[.CL] Server publico cs 1.6 1 [PUBLICO]
[.CL] Server publico cs 1.6 2 [PUBLICO]


Código PHP:
#include <amxmodx>
#include <server_query>

#pragma semicolon 1

#define PLUGIN_NAME "Servers Hud"
#define PLUGIN_AUTHOR "exo"

#define SZPREFIX "!g[SERVER]!y"

const MAX_SERVERS 2;

new const 
SERVERS_IP[MAX_SERVERS][] =
{
    
"133.53.566.3323",
    
"131.232.54.6566"
 
};

new 
g_server_name[32][256];
new 
g_server_map[32][32];
new 
g_server_maxplayers[32];
new 
g_server_online_players[32];

public 
plugin_init()
{
    
register_plugin(PLUGIN_NAMEAMXX_VERSION_STRPLUGIN_AUTHOR);

    
register_event("HLTV""event_HLTV""a""1=0""2=0");
}

public 
event_HLTV()
{
    new 
i;
  for (new 
0MAX_SERVERSi++) 
    {
        
ServerInfo(SERVERS_IP[i], "getServerInfo");
    }

    
set_task(1.2"task_ShowServers");
}

public 
task_ShowServers(id)
{
    new 
isBuffer[512];
    for (new 
0MAX_SERVERSi++) 
    {
        
formatex(sBuffercharsmax(sBuffer), "%s [%s] (%d/%d)^n%s"g_server_name[i], g_server_map[i], g_server_online_players[i], g_server_maxplayers[i], sBuffer);
        
        
set_hudmessage(000100255, -1.00.0100.010.00.50.101);
        
show_hudmessage(idsBuffer);
    }
}

/* Código de Neee...eeel.- (Community Info) */
public getServerInfo(const szServer[], _A2A_TYPE, const Response[], lensuccesslatency)
    {
    if (!
success)
    {
        return;
    }

    new 
serverId = -1;
    for (new 
0MAX_SERVERSi++) 
 
    {
        if (
equal(SERVERS_IP[i], szServer))
        {
            
serverId i;
            break;
        }
    }

    if (
serverId == -1)
    {
        return;
    }

    new 
szName[256], szMap[64], szDirectory[64], szDescription[64];
    new 
iPlayers 0;
    new 
iMaxPlayers 0;

    
ServerResponseParseInfo(ResponseszNamecharsmax(szName), szMapcharsmax(szMap), szDirectorycharsmax(szDirectory), szDescriptioncharsmax(szDescription), iPlayersiMaxPlayers);

    
copy(g_server_name[serverId], charsmax(g_server_name[]), szName);
    
copy(g_server_map[serverId], charsmax(g_server_map[]), szMap);
    
g_server_online_players[serverId] = iPlayers;
    
g_server_maxplayers[serverId] = iMaxPlayers;

Responder
#4
Skylar ayudaaaaa
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)