AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Scripting Help (https://forums.alliedmods.net/forumdisplay.php?f=11)
-   -   Solved Change saved by name to SteamID (https://forums.alliedmods.net/showthread.php?t=334620)

Kelso 10-08-2021 22:16

Change saved by name to SteamID
 
Hi, a long time ago I tried this plugin that I found very good: https://amxmodx-es.com/showthread.php?tid=21823

But with a small detail, the saving system is by name and the server is only STEAM so when changing the name the same player comes out 2 times in the top.

PHP Code:

/*<!------ [ Enumeradores ] ------!>*/
enum _:DATA HeadShotsFragsDeathsDamagesHitsBPBDKnifes };
enum _:ADV_DATA Cargar 0Guardar };
/*<!------ [ Defines ] ------!>*/
#define is_player_valid(%1) ( (1<=get_user_team(%1)<=2) && is_user_connected(%1) && !is_user_hltv(%1) && !is_user_bot(%1) )
#define MAX_AVATAR_LENGHT 200
/*<!------ [ Librerias ] ------!>*/
#include <amxmodx>
#include <amxmisc>
#include <adv_vault>
#include <csx>
#include <steamdata>
/*<!------ [ Variables ] ------!>*/
new g_Plugin[ ][ ]= 
{
    
"AMXX-CsTop5",
    
"1.0",
    
"Alejandro-."
}

new 
g_DataBase [ ] = "AMXX-Top5";
new 
g_Tag [ ] = "^4[AMXX]^1";

new 
gz_DefaultAvatar [ ] = "https://i.ibb.co/HB7q1P9/profile.png";
new 
gz_bgCsStats [ ] = "https://imgfz.com/i/zh69Gtp.jpeg"
new 
gz_bgCsTop [ ] = "https://fotos.subefotos.com/711db44d9b7cbeaf0bc417b8b15dc688o.jpg";

new 
g_PlayerDataMAX_PLAYERS ][ _:DATA ],
g_playernameMAX_PLAYERS ][ MAX_NAME_LENGTH ],
g_PlayerAvatarMAX_PLAYERS ][ MAX_AVATAR_LENGHT ],
g_PlayerOldConexionMAX_PLAYERS ][ 30 ];

new 
iMaxPlayers;

new 
g_vault
g_sort;

new 
g_Campos_:DATA ];
new 
g_CampoAvatarg_CampoOldConexion;
/*<!------ [ Plugin init ] ------!>*/
public plugin_init( ) 
{
    
register_plugin(g_Plugin], g_Plugin], g_Plugin] );
    
/* COMANDOS */
    
register_clcmd("say /top5""DisplayTop");
    
register_clcmd("say top5""DisplayTop");
    
register_clcmd("say_team /top5""DisplayTop");
    
register_clcmd("say_team top5""DisplayTop");
    
register_concmd("amx_avatar""cmd_avatar"_"[URL AVATAR 640x640]");
    
register_concmd("say""hooksay");
    
register_concmd("say_team""hooksay");
    
/* EVENTOS */
    
register_event("DeathMsg""Event_Death""a");
    
register_event("Damage""Event_Dmg""b");

    
g_vault adv_vault_openg_DataBasefalse);
    
iMaxPlayers get_maxplayers();
 
    
/* ADV_VAULT */
    
static i;
    for( 
0<sizeofg_PlayerData[ ] ); i++ )
    {
        
g_Campos] =  adv_vault_register_field(g_vaultfmt"PLAYERDATA-#%d") );
    }
    
g_CampoAvatar adv_vault_register_field(g_vault"PLAYERDATA-AVATAR"DATATYPE_STRINGcharsmaxg_PlayerAvatar[ ] ) );
    
g_CampoOldConexion adv_vault_register_field(g_vault"PLAYERDATA-OLD"DATATYPE_STRINGcharsmaxg_PlayerOldConexion[ ] ) );

    
adv_vault_init(g_vault);
    
g_sort adv_vault_sort_create(g_vaultORDER_DESC02000g_CamposDamages ], g_CamposFrags ], g_CamposHeadShots ]);
}
/*<!------ [ Hook Say ] ------!>*/
public hooksayindex )
{
    new 
szMensaje74 ];
    
read_argsszMensajecharsmaxszMensaje ) );  
    
remove_quotesszMensaje ); 

    new 
Cmd15 ], PlayerMAX_NAME_LENGTH ];
    
parseszMensajeCmdcharsmaxCmd ), PlayercharsmaxPlayer ) );

    if( 
equalCmd"stats" ) || equalCmd"/stats" ) || equalCmd"/estadisticas" ) || equalCmd"estadisticas" ) )
    {
        new 
PlayerNameMAX_NAME_LENGTH ];
        new 
IndexNameMAX_NAME_LENGTH ];

        if( !
Player] ) get_user_nameindexPlayerNamecharsmaxPlayerName ) ); 
        else 
formatPlayerNamecharsmaxPlayerName ), Player );

        new 
iDatasizeofg_PlayerData[ ] ) ], 
            
szAvatar150 ], 
            
szOldConexion30 ];

        new 
szMotd1536 ];

        static 
iLen
        
iLen 0;

        if( !
adv_vault_get_prepareg_vault_PlayerName ) ) 
        {
            
client_print_colorindex print_chat"%s El jugador al cual quieres ver las estadisticas no existe"g_Tag );
            return 
PLUGIN_HANDLED;
        }

        static 
i;
        for( 
0<sizeofg_PlayerData[ ] ); i++ )
        {
            
Data] = adv_vault_get_fieldg_vaultg_Campos] );
        }

        
adv_vault_get_fieldg_vaultg_CampoAvatarszAvatar199 );
        
adv_vault_get_fieldg_vaultg_CampoOldConexionszOldConexion29 );

        
iLen += formatexszMotdiLen ], sizeof szMotd iLen,
            
"<body><style>\
            body{color:#121212;background:url(^"
%s^");\
            display: flex;\
            min-height: 100vh;\
            background-position: center center;\
            background-repeat: no-repeat;\
            background-attachment: fixed;\
            background-size: cover;\
            font-family:arial,sans-serif}\
            img{border-radius:110;width:40%%;}\
            h1{font-size:15px;background:#F4DA06}\
            h4{color:white}\
            .left,.right {width:38%%;text-align:center;margin-top:4%%;padding:3%%}\
            .left{float:left;margin-left:4.5%%}\
            .right{float:right;margin-right:4.5%%}\
            table{border:1px solid #F4DA06;font-size:10px}\
            th{background: #F4DA06}\
            td{border:1px solid #F4DA06;color:white}</style>"
gz_bgCsStats );
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"<div class=left><h1>PERFIL</h1></br><img src=%s></br><h4>%s</h4>"szAvatarPlayerName );
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"</div><div class=right>\
            <h1>ESTADISTICAS</h1>\
            </br>\
            <table width=100%%>\
            <tr align=center>\
            <th width=25%%>Frags\
            <th width=25%%>HeadShots\
            <th width=20%%>BP\
            <th width=30%%>Damage"
);
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"\
            <tr align=center>\
            <td>%s\
            <td>%s\
            <td>%s\
            <td>%s"
add_pointiDataFrags ] ), add_pointiDataHeadShots ] ),  add_pointiDataBP ] ), add_pointiDataDamages ] ) );
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"</table><table width=100%%>\
            <tr align=center>\
            <th width=25%%>Muertes\
            <th width=25%%>Cuchillo\
            <th width=20%%>BD\
            <th width=30%%>Hits"
);
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"\
            <tr align=center>\
            <td>%s\
            <td>%s\
            <td>%s\
            <td>%s"
add_pointiDataDeaths ] ), add_pointiDataKnifes ] ),  add_pointiDataBD ] ), add_pointiDataHits ] ) );
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"</table><table width=100%%>\
            <tr align=center>\
            <th width=25%%>Ultima vez jugando:" 
);
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"\
            <tr align=center>\
            <td>%s</table>"
szOldConexion );
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"</br>" );
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"</body>" );

        if( !
equalPlayerIndexName ) ) client_print_color0print_team_default"%s El jugador: ^4%s^1 esta viendo las estadisticas de: ^3%s"g_TagIndexNamePlayerName )
        
show_motdindexszMotdfmt"AMXX-STATS | %s"PlayerName ) );
        return 
PLUGIN_HANDLED;
 }
    return 
PLUGIN_CONTINUE;
}
/*<!------ [ Csx Bomb Planted ] ------!>*/
public bomb_plantedindex )
{
    if( !
is_user_connectedindex ) )
    return;

    
g_PlayerDataindex ][BP]++;
    
adv_dataindexGuardar );
}
/*<!------ [ Csx Bomb Defused ] ------!>*/
public bomb_defusedindex )
{
    if( !
is_user_connectedindex ) )
    return;

    
g_PlayerDataindex ][ BD ]++;
    
adv_dataindexGuardar );
}
/*<!------ [ Comand avatar ] ------!>*/
public cmd_avatarindexlevelcid )
{
    if( !
cmd_accessindexlevelcid2) )
    return 
PLUGIN_HANDLED;

    new 
arg150 ];
    
read_argv1argcharsmaxarg ) );
 
    if( !
containarg"https://" ) && !containarg"http://" ) && !containarg"www." )  )
    {
        
client_printindexprint_console"[ AMXX ] Debe ser un archivo subido a la web.")
        return 
PLUGIN_HANDLED;
    }

    if( 
strlenarg ) > 100 )
    { 
        
client_printindexprint_console"[ AMXX ] No puede ser un url mayor a 50 caracteres");
        return 
PLUGIN_HANDLED;
    }

    if( 
is_player_steamindex ) )
    {
        
client_printindexprint_console"[ AMXX ] Solo los no steam pueden cambiar el avatar" );
        return 
PLUGIN_HANDLED
    }

    
formatg_PlayerAvatarindex ], charsmaxg_PlayerAvatar[ ] ), arg );
    
client_printindexprint_console"[ AMXX ] Tu avatar fue insertado correctamente!!");
    
adv_dataindexGuardar );
    return 
PLUGIN_HANDLED;
}
/*<!------ [ Display Top 5 ] ------!>*/
public DisplayTopindex )
{
    new 
szMotd1520 ];
    static 
iLen;
    
iLen 0;

    new 
keyindex
        
pjMAX_NAME_LENGTH ], 
        
ount 0;

    new 
iDatasizeofg_PlayerData[ ] ) ], 
        
zAvatar199 ];

    new 
toploop minadv_vault_sort_numresult(g_vaultg_sort), );

    
iLen += formatexszMotdiLen ], sizeof szMotd iLen,
        
"<body><style>body{color:white;background:url(^"%s^");\
        font-family:Arial,sans-serif;\
        background-position: center center}\
        table{border:10px;width:87%%;margin-top:10%%;background:#121212}\
        td{font-size:13px;background:#272727}\
        th{color:black;font-size:14px;background:#F4DA06;padding:1%%}\
        </style>\
        <table align=center>\
        <tr align=center>\
        <th width=10%%>#\
        <th width=3%% height=5%%>Logo\
        <th width=30%%>Nombre\
        <th width=25%%>Frags\
        <th width=15%%>Muertes"
gz_bgCsTop );

    for( new 
position 1position <= toploopposition++ )
    {
        
keyindex adv_vault_sort_positiong_vaultg_sortposition )

        if( !
adv_vault_get_prepareg_vaultkeyindex ) ) 
            continue;

        static 
i;
        for( 
0<sizeofg_PlayerData[ ] ); i++ )
        {
            
iData] = adv_vault_get_fieldg_vaultg_Campos] );
        }

        
adv_vault_get_fieldg_vaultg_CampoAvatarszAvatar199 );
        
adv_vault_get_keynameg_vaultkeyindexpj31 );
 
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"<tr align=center>" );
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"<td>%d"position );
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"<td><img width=40px src=%s>"szAvatar );
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"<td>%s"pj);
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"<td>%d      (HS: %d)"iDataFrags ], iDataHeadShots ] );
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"<td>%d"iDataDeaths ] );
        
count++;
    }
 
    
iLen += formatexszMotdiLen ], sizeof szMotd iLen"</table></body>" );

    if( 
count 
        
show_motdindexszMotd"AMXX | TOP 5" );
    else 
        
client_print_colorindexprint_team_default"%s No se encontraron jugadores posicionados en este top."g_Tag );
}
/*<!------ [ Client Putinserver ] ------!>*/
public client_putinserverindex )
{
    
get_user_nameindexg_playernameindex ], charsmaxg_playername[ ] ) );

    static 
i;
    for( 
0<sizeofg_PlayerData[ ] ); i++ )
    {
        
g_PlayerDataindex ][ ] = EOS;
    }

    
g_PlayerOldConexionindex ] = "^0";
    
g_PlayerAvatarindex ] = "^0";

    if( 
is_player_steamindex ) )
    {
        
formatg_PlayerAvatarindex ], charsmaxg_PlayerAvatar[ ] ), gz_DefaultAvatar );
        
adv_dataindexCargar );
    } 
    else 
    {
        
et_task1.0"SteamLoadData"index );
    }
}
/*<!------ [ Steam Load Data ] ------!>*/
public SteamLoadDataindex )
{
    
adv_dataindexCargar );
    
get_steamdataindexg_PlayerAvatarindex ], charsmaxg_PlayerAvatar[ ] ), STD_AVATAR_FULL );
}
/*<!------ [ Client Disconected ] ------!>*/
public client_disconnectedindex )
{
    
get_time"%d/%m/%Y - %H:%M:%S"g_PlayerOldConexionindex ], charsmaxg_PlayerOldConexion[ ] ) );
    
adv_dataindexGuardar );
}

/*<!------ [ Evento Damage ] ------!>*/
public Event_Dmgindex )
{
    new 
get_user_attackerindex )
    new 
damage read_data(2)

    if(!
is_user_alive(a) || !(<= <= iMaxPlayers) || == index || damage <= 0)
    {
        return
    }

    
g_PlayerData][ Damages ] += damage
    g_PlayerData
][ Hits ] += 1
    adv_data
aGuardar );
}
/*<!------ [ Evento Death Msg ] ------!>*/
public Event_Death()
{
    new 
Atack read_data(1);
    new 
Victm read_data(2);
    new 
hs read_data(3);
    new 
Weapon get_user_weapon(Atack);

    if( !
is_player_validAtack ) || !is_player_validVictm ) )
    return;

    if(
Atack == Victm)
    {
        
g_PlayerDataAtack ][ Frags ] -= 1;
        
g_PlayerDataAtack ][ Deaths ]++;
        
adv_dataAtackGuardar );
        return;
    }

    if(
Weapon == CSW_KNIFEg_PlayerDataAtack ][ Knifes ]++;

    if(
hsg_PlayerDataAtack ][ HeadShots ]++;

    
g_PlayerDataAtack ][ Frags ]++;
    
g_PlayerDataVictm ][ Deaths ]++;
    
adv_dataVictmGuardar );
    
adv_dataAtackGuardar );
}
/*<!------ [ Adv Vault Save/Load ] ------!>*/
public adv_dataindextype_adv_use )
{
    if( !
is_user_connectedindex ) )
    return;

    switch( 
type_adv_use )
    {
        case 
Cargar:{

            
f( !adv_vault_get_prepareg_vault_g_playernameindex ] ) )    
            return;

            static 
i;
            for( 
0<sizeofg_PlayerData[ ] ); i++ )
            {
                
g_PlayerDataindex ][ ] = adv_vault_get_fieldg_vaultg_Campos] );
            }

            
adv_vault_get_fieldg_vaultg_CampoAvatarg_PlayerAvatarindex ], charsmaxg_PlayerAvatar[ ] ) );
            
adv_vault_get_fieldg_vaultg_CampoOldConexiong_PlayerOldConexionindex ], charsmaxg_PlayerOldConexion[ ] ) );
            return;
        }
        case 
Guardar:{

            
adv_vault_set_startg_vault );

            static 
i;
            for( 
0<sizeofg_PlayerData[ ] ); i++ )
            {
                
adv_vault_set_fieldg_vaultg_Campos], g_PlayerDataindex ][ ] );
            }

            
adv_vault_set_field(g_vaultg_CampoAvatarg_PlayerAvatarindex ] );
            
adv_vault_set_field(g_vaultg_CampoOldConexiong_PlayerOldConexionindex ] );
            
adv_vault_set_endg_vault0g_playernameindex ] );
            
adv_vault_sort_updateg_vaultg_sort );
        }
    }
    return;
}
/*<!------ [ Stock Add_Points ] ------!>*/
stock add_point(number)

    new 
countistr[29], str2[35], len
    num_to_str
(numberstrcharsmax(str))
    
len strlen(str)

    for (
0leni++)
 {
        if (
!= && ((len i) %== 0))
        {
            
add(str2charsmax(str2), "."1)
            
count++
            
add(str2[i+count], 1str[i], 1)
 }
 else
 
add(str2[i+count], 1str[i], 1)
 }

    return 
str2;


/*<!------ [ Stock Add_Points ] ------!>*/
stock bool:is_player_steam( const index )
{
    new 
authid25 ];
    
get_user_authidindexauthid24 );

    if( 
containiauthid"STEAM_" ) == -)
        return 
true;
    return 
false;



This plugin requires:

[API] Advanced Vault System 1.5
https://amxmodx-es.com/showthread.php?tid=2939

[ SDT ] Steam data info
https://amxmodx-es.com/showthread.php?tid=21650


I tried to change

Code:

get_user_name
To--->
Code:

get_user_authid
But it throws me the SteamID instead of the name at the top:cry:

fysiks 10-08-2021 23:47

Re: Change saved by name to SteamID
 
Right, that makes sense because you're displaying the string that you're storing. So, if you're storing SteamID, that's what you'll naturally see. To be able to handle both SteamID as the reference and have an associated name, it would require more complex handling.

I would guess that you'd need to add the name as a thing that you store in the vault and the retrieve that when you get the other data so that you can use it instead of the SteamID. The tricky part is that since people can easily change their name (even a lot if they want) you'll have to determine which name you store.

Bugsy 10-09-2021 12:16

Re: Change saved by name to SteamID
 
This plugin supports non-steam players.

"Only non-steam can change the avatar"
PHP Code:

    if( is_player_steamindex ) )
    {
        
client_printindexprint_console"[ AMXX ] Solo los no steam pueden cambiar el avatar" );
        return 
PLUGIN_HANDLED
    } 


fysiks 10-09-2021 13:38

Re: Change saved by name to SteamID
 
Quote:

Originally Posted by Bugsy (Post 2760083)
This plugin supports non-steam players.

"Only non-steam can change the avatar"
PHP Code:

    if( is_player_steamindex ) )
    {
        
client_printindexprint_console"[ AMXX ] Solo los no steam pueden cambiar el avatar" );
        return 
PLUGIN_HANDLED
    } 


If he's requesting that the plugin use SteamID as the primary key, does it really remain a non-Steam plugin?

Bugsy 10-09-2021 14:41

Re: Change saved by name to SteamID
 
If the plugin continues to support both steam and non-steam, I'd say so.

Kelso 10-09-2021 15:03

Re: Change saved by name to SteamID
 
Quote:

Originally Posted by Bugsy (Post 2760098)
If the plugin continues to support both steam and non-steam, I'd say so.

The server works only with STEAM, Unfortunately, I see the creator's idea was to save the rank/top by name so it works for non-Steam and that's the problem I want it to work for steam only :cry:

Bugsy 10-09-2021 16:18

Re: Change saved by name to SteamID
 
Can you send me the include files and required .sma(s) so I can compile this? I don't want to register on that forum just to get the files.

Kelso 10-09-2021 16:31

Re: Change saved by name to SteamID
 
1 Attachment(s)
Quote:

Originally Posted by Bugsy (Post 2760112)
Can you send me the include files and required .sma(s) so I can compile this? I don't want to register on that forum just to get the files.

Of course:)

Bugsy 10-09-2021 18:31

Re: Change saved by name to SteamID
 
Try this
PHP Code:

/*<!------ [ Enumeradores ] ------!>*/
enum _:DATA 

    
HeadShots
    
Frags
    
Deaths
    
Damages
    
Hits
    
BP
    
BD
    
Knifes 
};

enum _:ADV_DATA 

    
Cargar 0
    
Guardar 
};
/*<!------ [ Defines ] ------!>*/
#define is_player_valid(%1) ( (1<=get_user_team(%1)<=2) && is_user_connected(%1) && !is_user_hltv(%1) && !is_user_bot(%1) )
#define MAX_AVATAR_LENGHT 200
/*<!------ [ Librerias ] ------!>*/
#include <amxmodx>
#include <amxmisc>
#include <adv_vault>
#include <csx>
#include <steamdata>
/*<!------ [ Variables ] ------!>*/
new g_Plugin[ ][ ]= 
{
    
"AMXX-CsTop5",
    
"1.0",
    
"Alejandro-."
}

new 
g_DataBase[ ] = "AMXX-Top5";
new 
g_Tag[ ] = "^4[AMXX]^1";

new 
gz_DefaultAvatar[ ] = "https://i.ibb.co/HB7q1P9/profile.png";
new 
gz_bgCsStats[ ] = "https://imgfz.com/i/zh69Gtp.jpeg"
new 
gz_bgCsTop[ ] = "https://fotos.subefotos.com/711db44d9b7cbeaf0bc417b8b15dc688o.jpg";

new 
g_PlayerDataMAX_PLAYERS ][ _:DATA ],
g_authidMAX_PLAYERS ][ 35],
g_PlayerNameMAX_PLAYERS ][ MAX_NAME_LENGTH ] ,
g_PlayerAvatarMAX_PLAYERS ][ MAX_AVATAR_LENGHT ],
g_PlayerOldConexionMAX_PLAYERS ][ 30 ];

new 
iMaxPlayers;

new 
g_vaultg_sort;

new 
g_Campos_:DATA ];

new 
g_CampoName g_CampoAvatarg_CampoOldConexion;
/*<!------ [ Plugin init ] ------!>*/
public plugin_init( ) 
{
    
register_plugin(g_Plugin], g_Plugin], g_Plugin] );
    
/* COMANDOS */
    
register_clcmd("say /top5""DisplayTop");
    
register_clcmd("say top5""DisplayTop");
    
register_clcmd("say_team /top5""DisplayTop");
    
register_clcmd("say_team top5""DisplayTop");
    
register_concmd("amx_avatar""cmd_avatar"_"[URL AVATAR 640x640]");
    
register_concmd("say""hooksay");
    
register_concmd("say_team""hooksay");
    
/* EVENTOS */
    
register_event("DeathMsg""Event_Death""a");
    
register_event("Damage""Event_Dmg""b");

    
g_vault adv_vault_openg_DataBasefalse);
    
iMaxPlayers get_maxplayers();
    
    
/* ADV_VAULT */
    
static i;
    for( 
0<sizeofg_PlayerData[ ] ); i++ )
    {
        
g_Campos] =  adv_vault_register_field(g_vaultfmt"PLAYERDATA-#%d") );
    }
    
    
g_CampoName adv_vault_register_field(g_vault"PLAYERDATA-NAME"DATATYPE_STRINGcharsmaxg_PlayerName[ ] ) );
    
g_CampoAvatar adv_vault_register_field(g_vault"PLAYERDATA-AVATAR"DATATYPE_STRINGcharsmaxg_PlayerAvatar[ ] ) );
    
g_CampoOldConexion adv_vault_register_field(g_vault"PLAYERDATA-OLD"DATATYPE_STRINGcharsmaxg_PlayerOldConexion[ ] ) );

    
adv_vault_init(g_vault);
    
g_sort adv_vault_sort_create(g_vaultORDER_DESC02000g_CamposDamages ], g_CamposFrags ], g_CamposHeadShots ]);
}
/*<!------ [ Hook Say ] ------!>*/
public hooksayindex )
{
    new 
szMensaje74 ];
    
read_argsszMensajecharsmaxszMensaje ) );   
    
remove_quotesszMensaje ); 

    new 
Cmd15 ], PlayerMAX_NAME_LENGTH ];
    
parseszMensajeCmdcharsmaxCmd ), PlayercharsmaxPlayer ) );

    if( 
equalCmd"stats" ) || equalCmd"/stats" ) || equalCmd"/estadisticas" ) || equalCmd"estadisticas" ) )
    {
        new 
PlayerNameMAX_NAME_LENGTH ];
        new 
IndexNameMAX_NAME_LENGTH ];

        if( !
Player] ) get_user_nameindexPlayerNamecharsmaxPlayerName ) ); 
        else 
formatPlayerNamecharsmaxPlayerName ), Player );

        new 
iDatasizeofg_PlayerData[ ] ) ], 
            
szAvatar150 ], 
            
szOldConexion30 ],
            
szNameMAX_NAME_LENGTH ];

        new 
szMotd1536 ];

        static 
iLen;    
        
iLen 0;

        if( !
adv_vault_get_prepareg_vault_PlayerName ) ) 
        {
            
client_print_colorindex print_chat"%s El jugador al cual quieres ver las estadisticas no existe"g_Tag );
            return 
PLUGIN_HANDLED;
        }

        static 
i;
        for( 
0<sizeofg_PlayerData[ ] ); i++ )
        {
            
iData] = adv_vault_get_fieldg_vaultg_Campos] );
        }

        
adv_vault_get_fieldg_vaultg_CampoNameszName33 );
        
adv_vault_get_fieldg_vaultg_CampoAvatarszAvatar199 );
        
adv_vault_get_fieldg_vaultg_CampoOldConexionszOldConexion29 );

        
iLen += formatexszMotdiLen ], sizeof szMotd iLen,
            
"<body><style>\
            body{color:#121212;background:url(^"
%s^");\
            display: flex;\
            min-height: 100vh;\
            background-position: center center;\
            background-repeat: no-repeat;\
            background-attachment: fixed;\
            background-size: cover;\
            font-family:arial,sans-serif}\
            img{border-radius:110;width:40%%;}\
            h1{font-size:15px;background:#F4DA06}\
            h4{color:white}\
            .left,.right {width:38%%;text-align:center;margin-top:4%%;padding:3%%}\
            .left{float:left;margin-left:4.5%%}\
            .right{float:right;margin-right:4.5%%}\
            table{border:1px solid #F4DA06;font-size:10px}\
            th{background: #F4DA06}\
            td{border:1px solid #F4DA06;color:white}</style>"
gz_bgCsStats );
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"<div class=left><h1>PERFIL</h1></br><img src=%s></br><h4>%s</h4>"szAvatarPlayerName );
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"</div><div class=right>\
            <h1>ESTADISTICAS</h1>\
            </br>\
            <table width=100%%>\
            <tr align=center>\
            <th width=25%%>Frags\
            <th width=25%%>HeadShots\
            <th width=20%%>BP\
            <th width=30%%>Damage"
);
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"\
            <tr align=center>\
            <td>%s\
            <td>%s\
            <td>%s\
            <td>%s"
add_pointiDataFrags ] ), add_pointiDataHeadShots ] ),  add_pointiDataBP ] ), add_pointiDataDamages ] ) );
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"</table><table width=100%%>\
            <tr align=center>\
            <th width=25%%>Muertes\
            <th width=25%%>Cuchillo\
            <th width=20%%>BD\
            <th width=30%%>Hits"
);
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"\
            <tr align=center>\
            <td>%s\
            <td>%s\
            <td>%s\
            <td>%s"
add_pointiDataDeaths ] ), add_pointiDataKnifes ] ),  add_pointiDataBD ] ), add_pointiDataHits ] ) );
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"</table><table width=100%%>\
            <tr align=center>\
            <th width=25%%>Ultima vez jugando:" 
);
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"\
            <tr align=center>\
            <td>%s</table>"
szOldConexion );
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"</br>" );
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"</body>" );

        if( !
equalPlayerIndexName ) ) client_print_color0print_team_default"%s El jugador: ^4%s^1 esta viendo las estadisticas de: ^3%s"g_TagIndexNamePlayerName )
        
show_motdindexszMotdfmt"AMXX-STATS | %s"PlayerName ) );
        return 
PLUGIN_HANDLED;
    }
    return 
PLUGIN_CONTINUE;
}
/*<!------ [ Csx Bomb Planted ] ------!>*/
public bomb_plantedindex )
{
    if( !
is_user_connectedindex ) )
    return;

    
g_PlayerDataindex ][BP]++;
    
adv_dataindexGuardar );
}
/*<!------ [ Csx Bomb Defused ] ------!>*/
public bomb_defusedindex )
{
    if( !
is_user_connectedindex ) )
    return;

    
g_PlayerDataindex ][ BD ]++;
    
adv_dataindexGuardar );
}
/*<!------ [ Comand avatar ] ------!>*/
public cmd_avatarindexlevelcid )
{
    if( !
cmd_accessindexlevelcid2) )
    return 
PLUGIN_HANDLED;

    new 
arg150 ];
    
read_argv1argcharsmaxarg ) );
    
    if( !
containarg"https://" ) && !containarg"http://" ) && !containarg"www." )  )
    {
        
client_printindexprint_console"[ AMXX ] Debe ser un archivo subido a la web.")
        return 
PLUGIN_HANDLED;
    }

    if( 
strlenarg ) > 100 )
    {    
        
client_printindexprint_console"[ AMXX ] No puede ser un url mayor a 50 caracteres");
        return 
PLUGIN_HANDLED;
    }

    
formatg_PlayerAvatarindex ], charsmaxg_PlayerAvatar[ ] ), arg );
    
client_printindexprint_console"[ AMXX ] Tu avatar fue insertado correctamente!!");
    
adv_dataindexGuardar );
    return 
PLUGIN_HANDLED;
}
/*<!------ [ Display Top 5 ] ------!>*/
public DisplayTopindex )
{
    new 
szMotd1520 ];
    static 
iLen;
    
iLen 0;

    new 
keyindex
        
/*pj[ MAX_NAME_LENGTH ], */
        
count 0;

    new 
iDatasizeofg_PlayerData[ ] ) ], 
        
szAvatar199 ],
        
szNameMAX_NAME_LENGTH ];

    new 
toploop minadv_vault_sort_numresult(g_vaultg_sort), );

    
iLen += formatexszMotdiLen ], sizeof szMotd iLen,
        
"<body><style>body{color:white;background:url(^"%s^");\
        font-family:Arial,sans-serif;\
        background-position: center center}\
        table{border:10px;width:87%%;margin-top:10%%;background:#121212}\
        td{font-size:13px;background:#272727}\
        th{color:black;font-size:14px;background:#F4DA06;padding:1%%}\
        </style>\
        <table align=center>\
        <tr align=center>\
        <th width=10%%>#\
        <th width=3%% height=5%%>Logo\
        <th width=30%%>Nombre\
        <th width=25%%>Frags\
        <th width=15%%>Muertes"
gz_bgCsTop );

    for( new 
position 1position <= toploopposition++ )
    {
        
keyindex adv_vault_sort_positiong_vaultg_sortposition )

        if( !
adv_vault_get_prepareg_vaultkeyindex ) ) 
            continue;

        static 
i;
        for( 
0<sizeofg_PlayerData[ ] ); i++ )
        {
            
iData] = adv_vault_get_fieldg_vaultg_Campos] );
        }

        
adv_vault_get_fieldg_vaultg_CampoNameszNamecharsmaxszName ) );
        
adv_vault_get_fieldg_vaultg_CampoAvatarszAvatar199 );
        
//adv_vault_get_keyname( g_vault, keyindex, pj, 31 );
        
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"<tr align=center>" );
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"<td>%d"position );
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"<td><img width=40px src=%s>"szAvatar );
        
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"<td>%s"szName);
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"<td>%d       (HS: %d)"iDataFrags ], iDataHeadShots ] );
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"<td>%d"iDataDeaths ] );
        
count++;
    }
    
    
iLen += formatexszMotdiLen ], sizeof szMotd iLen"</table></body>" );

    if( 
count 
        
show_motdindexszMotd"AMXX | TOP 5" );
    else 
        
client_print_colorindexprint_team_default"%s No se encontraron jugadores posicionados en este top."g_Tag );
}
/*<!------ [ Client Putinserver ] ------!>*/
public client_authorizedindex )
{
    
get_user_authidindexg_authidindex ], charsmaxg_authid[ ] ) );
    
    static 
i;
    for( 
0<sizeofg_PlayerData[ ] ); i++ )
    {
        
g_PlayerDataindex ][ ] = EOS;
    }

    
g_PlayerOldConexionindex ][ ] = EOS;

    
copyg_PlayerAvatarindex ], charsmaxg_PlayerAvatar[ ] ), gz_DefaultAvatar );
    
get_user_nameindex g_PlayerNameindex ] , charsmax(g_PlayerName[ ] ) );

    
set_task1.0"SteamLoadData"index );
}

public 
SteamLoadDataindex )
{
    
adv_dataindexCargar );
    
get_steamdataindexg_PlayerAvatarindex ], charsmaxg_PlayerAvatar[ ] ), STD_AVATAR_FULL );
}

/*<!------ [ Client Disconected ] ------!>*/
public client_disconnectedindex )
{
    
get_time"%d/%m/%Y - %H:%M:%S"g_PlayerOldConexionindex ], charsmaxg_PlayerOldConexion[ ] ) );
    
get_user_nameindex g_PlayerNameindex ] , charsmax(g_PlayerName[ ] ) );
    
adv_dataindexGuardar );
}

/*<!------ [ Evento Damage ] ------!>*/
public Event_Dmgindex )
{
    new 
get_user_attackerindex )
    new 
damage read_data(2)

    if(!
is_user_alive(a) || !(<= <= iMaxPlayers) || == index || damage <= 0)
    {
        return
    }

    
g_PlayerData][ Damages ] += damage
    g_PlayerData
][ Hits ] += 1
    adv_data
aGuardar );
}
/*<!------ [ Evento Death Msg ] ------!>*/
public Event_Death()
{
    new 
Atack read_data(1);
    new 
Victm read_data(2);
    new 
hs read_data(3);
    new 
Weapon get_user_weapon(Atack);

    if( !
is_player_validAtack ) || !is_player_validVictm ) )
    return;

    if(
Atack == Victm)
    {
        
g_PlayerDataAtack ][ Frags ] -= 1;
        
g_PlayerDataAtack ][ Deaths ]++;
        
adv_dataAtackGuardar );
        return;
    }

    if(
Weapon == CSW_KNIFEg_PlayerDataAtack ][ Knifes ]++;

    if(
hsg_PlayerDataAtack ][ HeadShots ]++;

    
g_PlayerDataAtack ][ Frags ]++;
    
g_PlayerDataVictm ][ Deaths ]++;
    
adv_dataVictmGuardar );
    
adv_dataAtackGuardar );
}
/*<!------ [ Adv Vault Save/Load ] ------!>*/
public adv_dataindextype_adv_use )
{
    if( !
is_user_connectedindex ) )
    return;

    switch( 
type_adv_use )
    {
        case 
Cargar:{

            if( !
adv_vault_get_prepareg_vault_g_authidindex ] ) )    
                return;

            static 
i;
            for( 
0<sizeofg_PlayerData[ ] ); i++ )
            {
                
g_PlayerDataindex ][ ] = adv_vault_get_fieldg_vaultg_Campos] );
            }

            
adv_vault_get_fieldg_vaultg_CampoAvatarg_PlayerAvatarindex ], charsmaxg_PlayerAvatar[ ] ) );
            
adv_vault_get_fieldg_vaultg_CampoOldConexiong_PlayerOldConexionindex ], charsmaxg_PlayerOldConexion[ ] ) );
            return;
        }
        case 
Guardar:{

            
adv_vault_set_startg_vault );

            static 
i;
            for( 
0<sizeofg_PlayerData[ ] ); i++ )
            {
                
adv_vault_set_fieldg_vaultg_Campos], g_PlayerDataindex ][ ] );
            }
            
            
adv_vault_set_field(g_vaultg_CampoNameg_PlayerNameindex ] );
            
adv_vault_set_field(g_vaultg_CampoAvatarg_PlayerAvatarindex ] );
            
adv_vault_set_field(g_vaultg_CampoOldConexiong_PlayerOldConexionindex ] );
            
adv_vault_set_endg_vault0g_authidindex ] );
            
adv_vault_sort_updateg_vaultg_sort );
        }
    }
    return;
}
/*<!------ [ Stock Add_Points ] ------!>*/
stock add_point(number)

    new 
countistr[29], str2[35], len
    num_to_str
(numberstrcharsmax(str))
    
len strlen(str)

    for (
0leni++)
    {
        if (
!= && ((len i) %== 0))
        {
            
add(str2charsmax(str2), "."1)
            
count++
            
add(str2[i+count], 1str[i], 1)
        }
        else
        
add(str2[i+count], 1str[i], 1)
    }

    return 
str2;



Kelso 10-09-2021 18:51

Re: Change saved by name to SteamID
 
Quote:

Originally Posted by Bugsy (Post 2760116)
Try this
PHP Code:

/*<!------ [ Enumeradores ] ------!>*/
enum _:DATA 

    
HeadShots
    
Frags
    
Deaths
    
Damages
    
Hits
    
BP
    
BD
    
Knifes 
};

enum _:ADV_DATA 

    
Cargar 0
    
Guardar 
};
/*<!------ [ Defines ] ------!>*/
#define is_player_valid(%1) ( (1<=get_user_team(%1)<=2) && is_user_connected(%1) && !is_user_hltv(%1) && !is_user_bot(%1) )
#define MAX_AVATAR_LENGHT 200
/*<!------ [ Librerias ] ------!>*/
#include <amxmodx>
#include <amxmisc>
#include <adv_vault>
#include <csx>
#include <steamdata>
/*<!------ [ Variables ] ------!>*/
new g_Plugin[ ][ ]= 
{
    
"AMXX-CsTop5",
    
"1.0",
    
"Alejandro-."
}

new 
g_DataBase                 [ ] = "AMXX-Top5";
new 
g_Tag                     [ ] = "^4[AMXX]^1";

new 
gz_DefaultAvatar        [ ] = "https://i.ibb.co/HB7q1P9/profile.png";
new 
gz_bgCsStats            [ ] = "https://imgfz.com/i/zh69Gtp.jpeg"
new 
gz_bgCsTop                [ ] = "https://fotos.subefotos.com/711db44d9b7cbeaf0bc417b8b15dc688o.jpg";

new 
g_PlayerDataMAX_PLAYERS ][ _:DATA ],
g_authidMAX_PLAYERS ][ 35],
g_NameMAX_PLAYERS ][ MAX_NAME_LENGTH ] ,
g_PlayerAvatarMAX_PLAYERS ][ MAX_AVATAR_LENGHT ],
g_PlayerOldConexionMAX_PLAYERS ][ 30 ];

new 
iMaxPlayers;

new 
g_vault
g_sort;

new 
g_Campos_:DATA ];

new 
g_CampoName g_CampoAvatarg_CampoOldConexion;
/*<!------ [ Plugin init ] ------!>*/
public plugin_init( ) 
{
    
register_plugin(g_Plugin], g_Plugin], g_Plugin] );
    
/* COMANDOS */
    
register_clcmd("say /top5""DisplayTop");
    
register_clcmd("say top5""DisplayTop");
    
register_clcmd("say_team /top5""DisplayTop");
    
register_clcmd("say_team top5""DisplayTop");
    
register_concmd("amx_avatar""cmd_avatar"_"[URL AVATAR 640x640]");
    
register_concmd("say""hooksay");
    
register_concmd("say_team""hooksay");
    
/* EVENTOS */
    
register_event("DeathMsg""Event_Death""a");
    
register_event("Damage""Event_Dmg""b");

    
g_vault adv_vault_openg_DataBasefalse);
    
iMaxPlayers get_maxplayers();
    
    
/* ADV_VAULT */
    
static i;
    for( 
0<sizeofg_PlayerData[ ] ); i++ )
    {
        
g_Campos] =  adv_vault_register_field(g_vaultfmt"PLAYERDATA-#%d") );
    }
    
    
g_CampoName adv_vault_register_field(g_vault"PLAYERDATA-NAME"DATATYPE_STRINGcharsmaxg_Name[ ] ) );
    
g_CampoAvatar adv_vault_register_field(g_vault"PLAYERDATA-AVATAR"DATATYPE_STRINGcharsmaxg_PlayerAvatar[ ] ) );
    
g_CampoOldConexion adv_vault_register_field(g_vault"PLAYERDATA-OLD"DATATYPE_STRINGcharsmaxg_PlayerOldConexion[ ] ) );

    
adv_vault_init(g_vault);
    
g_sort adv_vault_sort_create(g_vaultORDER_DESC02000g_CamposDamages ], g_CamposFrags ], g_CamposHeadShots ]);
}
/*<!------ [ Hook Say ] ------!>*/
public hooksayindex )
{
    new 
szMensaje74 ];
    
read_argsszMensajecharsmaxszMensaje ) );   
    
remove_quotesszMensaje ); 

    new 
Cmd15 ], PlayerMAX_NAME_LENGTH ];
    
parseszMensajeCmdcharsmaxCmd ), PlayercharsmaxPlayer ) );

    if( 
equalCmd"stats" ) || equalCmd"/stats" ) || equalCmd"/estadisticas" ) || equalCmd"estadisticas" ) )
    {
        new 
PlayerNameMAX_NAME_LENGTH ];
        new 
IndexNameMAX_NAME_LENGTH ];

        if( !
Player] ) get_user_nameindexPlayerNamecharsmaxPlayerName ) ); 
        else 
formatPlayerNamecharsmaxPlayerName ), Player );

        new 
iDatasizeofg_PlayerData[ ] ) ], 
            
szAvatar150 ], 
            
szOldConexion30 ],
            
szNameMAX_NAME_LENGTH ];

        new 
szMotd1536 ];

        static 
iLen;    
        
iLen 0;

        if( !
adv_vault_get_prepareg_vault_PlayerName ) ) 
        {
            
client_print_colorindex print_chat"%s El jugador al cual quieres ver las estadisticas no existe"g_Tag );
            return 
PLUGIN_HANDLED;
        }

        static 
i;
        for( 
0<sizeofg_PlayerData[ ] ); i++ )
        {
            
iData] = adv_vault_get_fieldg_vaultg_Campos] );
        }

        
adv_vault_get_fieldg_vaultg_CampoNameszName33 );
        
adv_vault_get_fieldg_vaultg_CampoAvatarszAvatar199 );
        
adv_vault_get_fieldg_vaultg_CampoOldConexionszOldConexion29 );

        
iLen += formatexszMotdiLen ], sizeof szMotd iLen,
            
"<body><style>\
            body{color:#121212;background:url(^"
%s^");\
            display: flex;\
            min-height: 100vh;\
            background-position: center center;\
            background-repeat: no-repeat;\
            background-attachment: fixed;\
            background-size: cover;\
            font-family:arial,sans-serif}\
            img{border-radius:110;width:40%%;}\
            h1{font-size:15px;background:#F4DA06}\
            h4{color:white}\
            .left,.right {width:38%%;text-align:center;margin-top:4%%;padding:3%%}\
            .left{float:left;margin-left:4.5%%}\
            .right{float:right;margin-right:4.5%%}\
            table{border:1px solid #F4DA06;font-size:10px}\
            th{background: #F4DA06}\
            td{border:1px solid #F4DA06;color:white}</style>"
gz_bgCsStats );
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"<div class=left><h1>PERFIL</h1></br><img src=%s></br><h4>%s</h4>"szAvatarPlayerName );
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"</div><div class=right>\
            <h1>ESTADISTICAS</h1>\
            </br>\
            <table width=100%%>\
            <tr align=center>\
            <th width=25%%>Frags\
            <th width=25%%>HeadShots\
            <th width=20%%>BP\
            <th width=30%%>Damage"
);
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"\
            <tr align=center>\
            <td>%s\
            <td>%s\
            <td>%s\
            <td>%s"
add_pointiDataFrags ] ), add_pointiDataHeadShots ] ),  add_pointiDataBP ] ), add_pointiDataDamages ] ) );
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"</table><table width=100%%>\
            <tr align=center>\
            <th width=25%%>Muertes\
            <th width=25%%>Cuchillo\
            <th width=20%%>BD\
            <th width=30%%>Hits"
);
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"\
            <tr align=center>\
            <td>%s\
            <td>%s\
            <td>%s\
            <td>%s"
add_pointiDataDeaths ] ), add_pointiDataKnifes ] ),  add_pointiDataBD ] ), add_pointiDataHits ] ) );
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"</table><table width=100%%>\
            <tr align=center>\
            <th width=25%%>Ultima vez jugando:" 
);
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"\
            <tr align=center>\
            <td>%s</table>"
szOldConexion );
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"</br>" );
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"</body>" );

        if( !
equalPlayerIndexName ) ) client_print_color0print_team_default"%s El jugador: ^4%s^1 esta viendo las estadisticas de: ^3%s"g_TagIndexNamePlayerName )
        
show_motdindexszMotdfmt"AMXX-STATS | %s"PlayerName ) );
        return 
PLUGIN_HANDLED;
    }
    return 
PLUGIN_CONTINUE;
}
/*<!------ [ Csx Bomb Planted ] ------!>*/
public bomb_plantedindex )
{
    if( !
is_user_connectedindex ) )
    return;

    
g_PlayerDataindex ][BP]++;
    
adv_dataindexGuardar );
}
/*<!------ [ Csx Bomb Defused ] ------!>*/
public bomb_defusedindex )
{
    if( !
is_user_connectedindex ) )
    return;

    
g_PlayerDataindex ][ BD ]++;
    
adv_dataindexGuardar );
}
/*<!------ [ Comand avatar ] ------!>*/
public cmd_avatarindexlevelcid )
{
    if( !
cmd_accessindexlevelcid2) )
    return 
PLUGIN_HANDLED;

    new 
arg150 ];
    
read_argv1argcharsmaxarg ) );
    
    if( !
containarg"https://" ) && !containarg"http://" ) && !containarg"www." )  )
    {
        
client_printindexprint_console"[ AMXX ] Debe ser un archivo subido a la web.")
        return 
PLUGIN_HANDLED;
    }

    if( 
strlenarg ) > 100 )
    {    
        
client_printindexprint_console"[ AMXX ] No puede ser un url mayor a 50 caracteres");
        return 
PLUGIN_HANDLED;
    }

    if( 
is_player_steamindex ) )
    {
        
client_printindexprint_console"[ AMXX ] Solo los no steam pueden cambiar el avatar" );
        return 
PLUGIN_HANDLED;        
    }

    
formatg_PlayerAvatarindex ], charsmaxg_PlayerAvatar[ ] ), arg );
    
client_printindexprint_console"[ AMXX ] Tu avatar fue insertado correctamente!!");
    
adv_dataindexGuardar );
    return 
PLUGIN_HANDLED;
}
/*<!------ [ Display Top 5 ] ------!>*/
public DisplayTopindex )
{
    new 
szMotd1520 ];
    static 
iLen;
    
iLen 0;

    new 
keyindex
        
/*pj[ MAX_NAME_LENGTH ], */
        
count 0;

    new 
iDatasizeofg_PlayerData[ ] ) ], 
        
szAvatar199 ],
        
szNameMAX_NAME_LENGTH ];

    new 
toploop minadv_vault_sort_numresult(g_vaultg_sort), );

    
iLen += formatexszMotdiLen ], sizeof szMotd iLen,
        
"<body><style>body{color:white;background:url(^"%s^");\
        font-family:Arial,sans-serif;\
        background-position: center center}\
        table{border:10px;width:87%%;margin-top:10%%;background:#121212}\
        td{font-size:13px;background:#272727}\
        th{color:black;font-size:14px;background:#F4DA06;padding:1%%}\
        </style>\
        <table align=center>\
        <tr align=center>\
        <th width=10%%>#\
        <th width=3%% height=5%%>Logo\
        <th width=30%%>Nombre\
        <th width=25%%>Frags\
        <th width=15%%>Muertes"
gz_bgCsTop );

    for( new 
position 1position <= toploopposition++ )
    {
        
keyindex adv_vault_sort_positiong_vaultg_sortposition )

        if( !
adv_vault_get_prepareg_vaultkeyindex ) ) 
            continue;

        static 
i;
        for( 
0<sizeofg_PlayerData[ ] ); i++ )
        {
            
iData] = adv_vault_get_fieldg_vaultg_Campos] );
        }

        
adv_vault_get_fieldg_vaultg_CampoNameszNamecharsmaxszName ) );
        
adv_vault_get_fieldg_vaultg_CampoAvatarszAvatar199 );
        
//adv_vault_get_keyname( g_vault, keyindex, pj, 31 );
        
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"<tr align=center>" );
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"<td>%d"position );
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"<td><img width=40px src=%s>"szAvatar );
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"<td>%s"szName);
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"<td>%d       (HS: %d)"iDataFrags ], iDataHeadShots ] );
        
iLen += formatexszMotdiLen ], sizeof szMotd iLen"<td>%d"iDataDeaths ] );
        
count++;
    }
    
    
iLen += formatexszMotdiLen ], sizeof szMotd iLen"</table></body>" );

    if( 
count 
        
show_motdindexszMotd"AMXX | TOP 5" );
    else 
        
client_print_colorindexprint_team_default"%s No se encontraron jugadores posicionados en este top."g_Tag );
}
/*<!------ [ Client Putinserver ] ------!>*/
public client_putinserverindex )
{
    
get_user_authidindexg_authidindex ], charsmaxg_authid[ ] ) );
    
    static 
i;
    for( 
0<sizeofg_PlayerData[ ] ); i++ )
    {
        
g_PlayerDataindex ][ ] = EOS;
    }

    
g_PlayerOldConexionindex ] = "^0";
    
g_PlayerAvatarindex ] = "^0";

    
formatg_PlayerAvatarindex ], charsmaxg_PlayerAvatar[ ] ), gz_DefaultAvatar );
    
get_user_nameindex g_Nameindex ] , charsmaxg_Name[ ] ) );
    
    
adv_dataindexCargar );
}

/*<!------ [ Client Disconected ] ------!>*/
public client_disconnectedindex )
{
    
get_time"%d/%m/%Y - %H:%M:%S"g_PlayerOldConexionindex ], charsmaxg_PlayerOldConexion[ ] ) );
    
adv_dataindexGuardar );
}

/*<!------ [ Evento Damage ] ------!>*/
public Event_Dmgindex )
{
    new 
get_user_attackerindex )
    new 
damage read_data(2)

    if(!
is_user_alive(a) || !(<= <= iMaxPlayers) || == index || damage <= 0)
    {
        return
    }

    
g_PlayerData][ Damages ] += damage
    g_PlayerData
][ Hits ] += 1
    adv_data
aGuardar );
}
/*<!------ [ Evento Death Msg ] ------!>*/
public Event_Death()
{
    new 
Atack read_data(1);
    new 
Victm read_data(2);
    new 
hs read_data(3);
    new 
Weapon get_user_weapon(Atack);

    if( !
is_player_validAtack ) || !is_player_validVictm ) )
    return;

    if(
Atack == Victm)
    {
        
g_PlayerDataAtack ][ Frags ] -= 1;
        
g_PlayerDataAtack ][ Deaths ]++;
        
adv_dataAtackGuardar );
        return;
    }

    if(
Weapon == CSW_KNIFEg_PlayerDataAtack ][ Knifes ]++;

    if(
hsg_PlayerDataAtack ][ HeadShots ]++;

    
g_PlayerDataAtack ][ Frags ]++;
    
g_PlayerDataVictm ][ Deaths ]++;
    
adv_dataVictmGuardar );
    
adv_dataAtackGuardar );
}
/*<!------ [ Adv Vault Save/Load ] ------!>*/
public adv_dataindextype_adv_use )
{
    if( !
is_user_connectedindex ) )
    return;

    switch( 
type_adv_use )
    {
        case 
Cargar:{

            if( !
adv_vault_get_prepareg_vault_g_authidindex ] ) )    
                return;

            static 
i;
            for( 
0<sizeofg_PlayerData[ ] ); i++ )
            {
                
g_PlayerDataindex ][ ] = adv_vault_get_fieldg_vaultg_Campos] );
            }

            
adv_vault_get_fieldg_vaultg_CampoAvatarg_PlayerAvatarindex ], charsmaxg_PlayerAvatar[ ] ) );
            
adv_vault_get_fieldg_vaultg_CampoOldConexiong_PlayerOldConexionindex ], charsmaxg_PlayerOldConexion[ ] ) );
            return;
        }
        case 
Guardar:{

            
adv_vault_set_startg_vault );

            static 
i;
            for( 
0<sizeofg_PlayerData[ ] ); i++ )
            {
                
adv_vault_set_fieldg_vaultg_Campos], g_PlayerDataindex ][ ] );
            }
            
server_print"SAVE NAME %s" g_Nameindex ] );
            
adv_vault_set_field(g_vaultg_CampoNameg_Nameindex ] );
            
adv_vault_set_field(g_vaultg_CampoAvatarg_PlayerAvatarindex ] );
            
adv_vault_set_field(g_vaultg_CampoOldConexiong_PlayerOldConexionindex ] );
            
adv_vault_set_endg_vault0g_authidindex ] );
            
adv_vault_sort_updateg_vaultg_sort );
        }
    }
    return;
}
/*<!------ [ Stock Add_Points ] ------!>*/
stock add_point(number)

    new 
countistr[29], str2[35], len
    num_to_str
(numberstrcharsmax(str))
    
len strlen(str)

    for (
0leni++)
    {
        if (
!= && ((len i) %== 0))
        {
            
add(str2charsmax(str2), "."1)
            
count++
            
add(str2[i+count], 1str[i], 1)
        }
        else
        
add(str2[i+count], 1str[i], 1)
    }

    return 
str2;


/*<!------ [ Stock Add_Points ] ------!>*/
stock bool:is_player_steam( const index )
{
    new 
authid25 ];
    
get_user_authidindexauthid24 );

    if( 
containiauthid"STEAM_" ) == -)
        return 
true;
    return 
false;



It works, but now it does not show me the avatar of the players and neither the /stats "The player you want to see statistics for does not exist"


All times are GMT -4. The time now is 11:34.

Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.