AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Scripting Help (https://forums.alliedmods.net/forumdisplay.php?f=11)
-   -   nvault load (https://forums.alliedmods.net/showthread.php?t=153125)

mammapappa 03-19-2011 05:18

nvault load
 
Hi how can i load a nvault everytime someone gets for example money? it's for my top/rank but it does only load on every mapchange i want it to load the same second someone gets money

Codes(if needed):
PHP Code:

public CmdRank(id)
{
    new Array:
aNames, Array:aSteamIDs, Array:aXPs;
    new 
iTotal SortTopPlayers(aNamesaSteamIDsaXPs);
    
    new 
szSteamID[35];
    
get_user_authid(idszSteamIDcharsmax(szSteamID));
    
    new 
szSteamID2[35], i;
    for( 
0iTotali++ )
    {
        
ArrayGetString(aSteamIDsiszSteamID2charsmax(szSteamID2));
        
        if( 
equal(szSteamIDszSteamID2) )
        {
            
ColorChat(id"!g[%s]!yYou are ranked !g%i !yof !g%i !yplayers"PREFIX, (1), iTotal);
            break;
        }
    }
    
    if( 
== iTotal )
    {
        
ColorChat(id"You are not ranked!");
    }
    
    
ArrayDestroy(aNames);
    
ArrayDestroy(aSteamIDs);
    
ArrayDestroy(aXPs);
    
    return 
PLUGIN_HANDLED;


PHP Code:

public CmdTop(id)
{
    new Array:
aNames, Array:aSteamIDs, Array:aXPs;
    new 
iTotal SortTopPlayers(aNamesaSteamIDsaXPs);
    
    new 
szHTML[2500], iLen;
    
iLen copy(szHTMLcharsmax(szHTML), "<html><body><h2>MoneyMod Top 15</h2><br><table><tr><th>#.</th><th>Name</th><th>Money</th></tr>");
    
    new 
szName[156];
    for( new 
015i++ )
    {
        if( 
iTotal )
        {
            
ArrayGetString(aNamesiszNamecharsmax(szName));
            
replace_all(szNamecharsmax(szName), "&""&amp;");
            
replace_all(szNamecharsmax(szName), "<""&lt;");
            
replace_all(szNamecharsmax(szName), ">""&gt;");
            
            
iLen += formatex(szHTML[iLen], charsmax(szHTML)-iLen"<tr><td>%i.</td><td>%s</td><td>%i</td></tr>", (1), szNameArrayGetCell(aXPsi));
        }
        else
        {
            
iLen += copy(szHTML[iLen], charsmax(szHTML)-iLen"<tr><td></td><td></td><td></td></tr>");
        }
    }
    
    
iLen += copy(szHTML[iLen], charsmax(szHTML)-iLen"</table></body></html>");
    
    
ArrayDestroy(aNames);
    
ArrayDestroy(aSteamIDs);
    
ArrayDestroy(aXPs);
    
    
show_motd(idszHTML"Top 15");
    
    return 
PLUGIN_HANDLED;


PHP Code:

SortTopPlayers( &Array:aNames, &Array:aSteamIDs, &Array:aXPs )
{
    
aNames ArrayCreate32 );
    
aSteamIDs ArrayCreate35 );
    
aXPs ArrayCreate);
    
    new 
hVault nvault_util_open"MoneyModTop" );
    new 
iCount nvault_util_counthVault );
    new 
iPos;
    new 
szSteamID35 ], szXP11 ], iTimeStampszName32 ];
    
    for( new 
0iCounti++ )
    {
        
iPos nvault_util_readhVaultiPosszSteamIDcharsmaxszSteamID ), szXPcharsmaxszXP ), iTimeStamp );
        
        
nvault_getgNameVaultszSteamIDszNamecharsmaxszName ) );
        
        
ArrayPushStringaNamesszName );
        
ArrayPushStringaSteamIDsszSteamID );
        
ArrayPushCellaXPsstr_to_numszXP ) );
    }
    
    
nvault_util_closehVault );
    
    new 
iXP;
    for( new 
0j< ( iCount ); i++ )
    {
        
iXP ArrayGetCellaXPs);
        
        for( 
1iCountj++ )
        {
            if( 
iXP ArrayGetCellaXPs) )
            {
                
ArraySwapaNamesi);
                
ArraySwapaSteamIDsi);
                
ArraySwapaXPsi);
                
                
i--;
                
                break;
            }
        }
    }
    
    return 
iCount;




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

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