Raised This Month: $51 Target: $400
 12% 

nvault_set(valuts, vault1, vault4, vault3, vault4); ?


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
rx1983
Senior Member
Join Date: Jan 2009
Location: BRASIL
Old 01-03-2013 , 12:15   nvault_set(valuts, vault1, vault4, vault3, vault4); ?
Reply With Quote #1

how to save data 4 in 1 ?
PHP Code:

    format
(vaultnome18"%s|"szNomi);
    
format(vaultkey,  63"%s|"authid); 
    
format(vaultdata63"%d|"PlayedTime);
    
format(vaultrank,18"%d|"rank);
                                                       
//    nvault_set(valut, vaultkey, vaultdata);
//    nvault_set(valuts, vaultnome, vaultrank);
    
nvault_set(valutsvaultkeyvaultdatavaultnomevaultrank);
    
    
//    nvault_close(valut);
//    nvault_close(valuts);
    
nvault_close(valutvaluts);
    

how to make it work?
__________________
rx1983 is offline
Send a message via MSN to rx1983
red_bull2oo6
Senior Member
Join Date: Mar 2012
Location: Braila, Romania
Old 01-03-2013 , 12:24   Re: nvault_set(valuts, vault1, vault4, vault3, vault4); ?
Reply With Quote #2

http://forums.alliedmods.net/showthread.php?t=91503
red_bull2oo6 is offline
rx1983
Senior Member
Join Date: Jan 2009
Location: BRASIL
Old 01-03-2013 , 17:12   Re: nvault_set(valuts, vault1, vault4, vault3, vault4); ?
Reply With Quote #3

I already read most can not understand anything.
__________________
rx1983 is offline
Send a message via MSN to rx1983
red_bull2oo6
Senior Member
Join Date: Mar 2012
Location: Braila, Romania
Old 01-03-2013 , 18:10   Re: nvault_set(valuts, vault1, vault4, vault3, vault4); ?
Reply With Quote #4

i took Bugsy's example plugin and modified it a bit.

i hope it'll help you. i put u some explanations too.
btw Bugsy's tutorial is very well explained..

PHP Code:

#include <amxmodx>
#include <nvault>

// Our vault handle;
new g_Vault;

// Player's authid holder ( string )
new g_szAuthID[33][35];

// Player's rank and played time holders ( integers )
new g_iRank33 ];
new 
g_iPlayedTime33 ];

public 
plugin_init()
{
    
register_plugin"nVault Example" "1.0" "bugsy" );
    
    
// register a test command.
    
register_clcmd"say /test""ClCmdSayTest" );
    
    
    
//Open our vault and have g_Vault store the handle.
    
g_Vault nvault_open"yourvault" );
    
    
//Make the plugin error if vault did not successfully open
    
if ( g_Vault == INVALID_HANDLE )
        
set_fail_state"Error opening nVault" );
    
}

public 
ClCmdSayTestid )
{
    
// print a test message..
    
client_printidprint_chat"* Your rank is %i and your total played time is %i!"g_iRank[id], g_iPlayedTime[id] );
    return 
PLUGIN_HANDLED;
}

public 
client_authorized(id)
{
    
//Get the connecting users authid and store it in our global string array so it
    //will not need to be retrieved every time we want to do an nvault transaction.
    
get_user_authidid g_szAuthID[id] , charsmaxg_szAuthID[] ) );
    
    
// We load data.
    
LoadDataid );
}

public 
SaveData(id)
{
    
// new variable ( string ) to store data.
    
new szData[10];
    
    
// we fill it with our data that needs saved.
    
formatexszData charsmaxszData ) , "%i|%i" g_iRank[id], g_iPlayedTime[id] );
    
    
//we save it by player's steamid
    
nvault_setg_Vault g_szAuthID[id] , szData );
}

public 
LoadData(id)
{
    
// new variable ( string ) to retrive data.
    
new szData10 ];
    
    
// we retrive data acording to player's steamid.
    
nvault_getg_Vaultg_szAuthID[id], szDatacharsmaxszData ));
    
    
// replace all | with empty space
    
replace_allszDatacharsmaxszData ), "|"" " );
    
    
// declare new strings to parse the data.
    
new szRank[5], szPlayedTime[5];
    
parseszDataszRankcharsmaxszRank ),
        
szPlayedTimecharsmaxszPlayedTime ) );
        
    
// now that we parsed the data we set player's rank and played time acording to what we retrieved from vault.
    
g_iRank[id] = str_to_numszRank );
    
g_iPlayedTime[id] = str_to_numszPlayedTime );
    
}

public 
plugin_end()
{
    
//Close the vault when the plugin ends (map change\server shutdown\restart)
    
nvault_closeg_Vault );

red_bull2oo6 is offline
rx1983
Senior Member
Join Date: Jan 2009
Location: BRASIL
Old 01-04-2013 , 16:18   Re: nvault_set(valuts, vault1, vault4, vault3, vault4); ?
Reply With Quote #5

I still can not make it work. I do not understand much English.
I was wanting to modify a plugin for time alka
name | authid | time | rank
here is the complete code:
PHP Code:

#include <amxmodx>
#include <amxmisc>
#include <nvault>
#include <chatcolor>
#include <csx>


#define PLUGIN "Played Tempo"
#define VERSION "rx"
#define AUTHOR "Alka"

/*Comentario isso se você nao quiser usar nvault*/
#define NVAULT
/*Comente esta linha se voce nao quiser prune vlutdata*/
//#define PRUNE
/*Prune time:ater x tempo de sendo inativo, remover valutdata*/
#define PRUNE_TIME 2592000 /*30 dias*/ /*Time em segundos*/


new TotalPlayedTime[33];

public 
plugin_init() 
{
    
register_plugin(PLUGINVERSIONAUTHOR );
    
    
register_clcmd("say tempo_jogado""tempo_jogado_say");
    
register_clcmd("say tempo_total",  "tempo_total_say");
    
register_concmd("amx_tempo_jogado""admin_showptime"ADMIN_ALL," <#Nome do jogador> - Detalhes sobre o tempo jogado.");
    
register_clcmd("say top15_tempo""show_top15");
    
}

public 
tempo_jogado_say(id
{
    new 
szNomi32 ];
    
get_user_nameidszNomi31 )
    static 
said[9], timep;
    
read_argv(1said8);
    
timep get_user_time(id1) / 60;
    
client_print_color(0RED"^1[^3AMXX^1] ^4%s ^1jogou: ^4%d ^1minutos seguidos.",szNomitimeptimep == "" "s");    
    return 
PLUGIN_HANDLED;
}

public 
tempo_total_say(id
{
    new 
szNomi32 ];
    
get_user_nameidszNomi31 )
    static 
said[9], timep;
    
read_argv(1said8);
    
timep get_user_time(id1) / 60;
    
client_print_color(0BLUE"^1[^3AMXX^1] ^4%s ^1jogou no total: ^4%d ^1minutos.",szNomitimep+TotalPlayedTime[id], timep+TotalPlayedTime[id] == "" "s");
    return 
PLUGIN_HANDLED;
}


    
public 
admin_showptime(id,level,cid
{
    if(!
cmd_access(idlevelcid2))
        return 
PLUGIN_HANDLED;
    
    static 
arg[32];
    
read_argv(1arg31);
    
    new 
player cmd_target(idarg2);
    
    if(!
player)
        return 
PLUGIN_HANDLED;
    
    static 
name[32];
    
get_user_name(playername31);
    
    static 
timepctime[64];
    
    
timep get_user_time(player1) / 60;
    
get_time("%H:%M:%S"ctime63);
    
    
console_print(id"-----------------------(#PlayedTime#)-----------------------");
    
console_print(id"[AMXX]%s jogou no server %d minute%s.",nametimeptimep == "" "s");
    
#if defined NVAULT
    
console_print(id"[AMXX]%s's total jogado no server %d minute%s.",nametimep+TotalPlayedTime[player], timep == "" "s"); // new
    #endif
    
console_print(id"[AMXX]Hora atual: %s"ctime);
    
console_print(id"-----------------------------------------------------------------");
    
    return 
PLUGIN_HANDLED;
}

#if defined NVAULT
public client_disconnect(id)
{
    
TotalPlayedTime[id] = TotalPlayedTime[id] + (get_user_time(id)/60);
    
SaveTime(idTotalPlayedTime[id]);
}
#endif

#if defined NVAULT
public client_putinserver(id)
{
    
TotalPlayedTime[id] = LoadTime(id);
    
set_task(20.0"exibir_tempo_e_rank"id)
    
client_cmd(0,  "spk buttons/bell1.wav")

    
}
#endif

#if defined NVAULT
public LoadTimeid 
{
    new 
valut nvault_open("Alka_tempo")
    
    new 
authid[33];
    new 
vaultkey[64], vaultdata[64];
    
    
get_user_authid(idauthid32);
    
    
format(vaultkey63"%s"authid);
    
    
nvault_get(valutvaultkeyvaultdata63);
    
nvault_close(valut);
    
    return 
str_to_num(vaultdata);
}
#endif

#if defined NVAULT
public SaveTime(id,PlayedTime)
{
    new 
valut nvault_open("Alka_tempo")
//    new valuts = nvault_open("Alka_tempo")
    
    
if(valut == INVALID_HANDLE)
        
set_fail_state("nValut returned invalid handle")
    
    new 
szData[10];
    new 
vaultkey[64], vaultdata[64], vaultnome[64], vaultrank[64];
    
    new 
szNomi32 ];
    
get_user_nameidszNomi31 )
    new 
stats[8], hits[8];
    new 
rank get_user_stats(idstatshits);
    new 
authid[33];    
    
get_user_authid(idauthid32);
    
    
format(vaultnome18"%s|"szNomi);
    
format(vaultkey,  63"%s|"authid); 
    
format(vaultdata63"%d|"PlayedTime);
    
format(vaultrank,18"%d|"rank);
                                                       
//    nvault_set(valut, vaultkey, vaultdata);
//    nvault_set(valuts, vaultnome, vaultrank);
//    nvault_set(valuts, vaultkey, vaultdata, vaultnome, vaultrank);

//    formatex( vaulut , charsmax( vaultdata ) , "%s|%s|%d|%d" , szNomi[id], authid[id], PlayedTime[id], rank[id] );
    
formatexszDatacharsmaxszData ) , "%s|%s|%d|%d" vaultnomevaultkeyvaultdatavaultrank );
         
    
//    nvault_close(valut);
//    nvault_close(valuts);
    
nvault_set(valutvaultkeyszData);
    
nvault_close(valut);
    
}
#endif

#if defined PRUNE
public prune()
{
    new 
valut nvault_open("Alka_tempo");
    
    if(
valut == INVALID_HANDLE)
        
set_fail_state("nValut returned invalid handle");
    
    
nvault_prune(valut0get_systime() - PRUNE_TIME);
    
nvault_close(valut);
}
#endif

#if defined PRUNE
public plugin_end()
{
    
prune()
}
#endif

#if defined NVAULT
public show_top15(id)
{
    new 
icount;
    static 
sort[33][2], maxPlayers;
    
    if(!
maxPlayersmaxPlayers get_maxplayers();
    
    for(
i=1;i<=maxPlayers;i++)
    {
        
sort[count][0] = i;
        
sort[count][1] = TotalPlayedTime[i] + (get_user_time(i1) / 60);
        
count++;
    }
    
    
SortCustom2D(sort,count,"stats_custom_compare");
    
    new 
motd[1024], len    
    
    len 
format(motd1023,"<body bgcolor=#000000><font color=#FFB000><pre>")
    
len += format(motd[len], 1023-len,"%s %-22.22s %3s^n""#""Nome""Tempo")
    
    new 
players[32], num
    get_players
(playersnum)
    
    new 
clamp(count,0,15)
    
    new 
name[32], player
    
    
for(new 0ba++)
    {
        
player sort[a][0]
        
        
get_user_name(playername31)        
        
len += format(motd[len], 1023-len,"%d %-22.22s %d^n"a+1namesort[a][1])
    }
    
    
len += format(motd[len], 1023-len,"</body></font></pre>")
    
show_motd(idmotd"Tempo Jogado Top 15")
    
    return 
PLUGIN_CONTINUE
}
#endif

public stats_custom_compare(elem1[],elem2[])
{
    if(
elem1[1] > elem2[1]) return -1;
    else if(
elem1[1] < elem2[1]) return 1;
        
    return 
0;
}



public 
exibir_tempo_e_rank(id)
{
    new 
szNomi32 ];
    
get_user_nameidszNomi31 )
    new 
stats[8], hits[8];
    new 
rank get_user_stats(idstatshits);
    static 
said[9], timep;
    
read_argv(1said8);
    
timep get_user_time(id1) / 60;
    
client_print_color(0RED"^1[^3AMXX^1] ^4%s ^1entrou no serve. Rank: ^4%d ^1Tempo: ^4%d ^1minutos"szNomiranktimep+TotalPlayedTime[id], timep+TotalPlayedTime[id] == "" "s");
    
client_cmd(0,  "spk buttons/blip.wav");
    return 
PLUGIN_HANDLED;

__________________
rx1983 is offline
Send a message via MSN to rx1983
Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 17:39.


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