AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Scripting Help (https://forums.alliedmods.net/forumdisplay.php?f=11)
-   -   Fvault system (https://forums.alliedmods.net/showthread.php?t=251574)

Mepetz 11-15-2014 11:10

Fvault system
 
Can someone help me with fvault system?

this is the code

Code:

SavePoints(id)
{
        get_user_name(id, g_playername[id], charsmax(g_playername[]));
        static key[32], data[64];
        format(key, charsmax(key), "%s", g_playername[id]);
        format(data, charsmax(data), "Points-%d Level-%d XP-%d", g_iUserPoints[id], hnsxp_playerlevel[id], hnsxp_playerxp[id]);
        fvault_set_data(g_vault_all, key, data);
}

// Load player's stats from database
LoadPoints(id)
{
        get_user_name(id, g_playername[id], charsmax(g_playername[]));
        static key[32], data[64], iPoints[32], PlayerLevel[32], Playerxp[32];
        format(key, charsmax(key), "%s", g_playername[id]);
        format(data, charsmax(data), "Points-%d Level-%d XP-%d", g_iUserPoints[id], hnsxp_playerlevel[id], hnsxp_playerxp[id]);

        if (fvault_get_data(g_vault_all, key, data, charsmax(data)))
        {
        parse(data, iPoints, charsmax(iPoints));       
        g_iUserPoints[id] = str_to_num(iPoints);                       
        }

        if (fvault_get_data(g_vault_all, key, data, charsmax(data)))
        {
        parse(data, PlayerLevel, charsmax(PlayerLevel));       
        hnsxp_playerlevel[id] = str_to_num(PlayerLevel);                       
        }

        if (fvault_get_data(g_vault_all, key, data, charsmax(data)))
        {
        parse(data, Playerxp, charsmax(Playerxp));       
        hnsxp_playerxp[id] = str_to_num(Playerxp);
        }

}

Save it's good "Mepetz" "Points-2 Level-1 XP-0" 1416067719
but when i disconnect and connect again points 0 , level 0 , xp 0...
load function isn't good ... can someone fix this?
i want to load all 3 xp , lvl , points in one file

Fuck For Fun 11-15-2014 11:38

Re: Fvault system
 
show your public of disconnect and connect

Mepetz 11-15-2014 11:41

Re: Fvault system
 
Quote:

LoadPoints(id)
{
get_user_name(id, g_playername[id], charsmax(g_playername[]));
static key[32], data[64], iPoints[32], PlayerLevel[32], Playerxp[32];
format(key, charsmax(key), "%s", g_playername[id]);
format(data, charsmax(data), "Points-%d Level-%d XP-%d", g_iUserPoints[id], hnsxp_playerlevel[id], hnsxp_playerxp[id]);

if (fvault_get_data(g_vault_all, key, data, charsmax(data)))
{
parse(data, iPoints, charsmax(iPoints));
g_iUserPoints[id] = str_to_num(iPoints);
}

if (fvault_get_data(g_vault_all, key, data, charsmax(data)))
{
parse(data, PlayerLevel, charsmax(PlayerLevel));
hnsxp_playerlevel[id] = str_to_num(PlayerLevel);
}

if (fvault_get_data(g_vault_all, key, data, charsmax(data)))
{
parse(data, Playerxp, charsmax(Playerxp));
hnsxp_playerxp[id] = str_to_num(Playerxp);
}

}

that code is problem if i create loadpoints for only points .
Load is correct .
If i create loadpoints for xp /lvl /points load isn't good..

public client_putinserver( id )
{
if( is_user_bot( id ) )
return PLUGIN_CONTINUE;

get_user_name( id, g_szName[ id ], sizeof ( g_szName[] ) -1 );
LoadPoints( id );

g_iUserTime[ id ] = 0;
set_task(1.0, "MesajHUD", id+TASK_MESAJHUD, _, _, "b");

g_bUserHas[ id ][ INVIS ] = false;
g_bUserHas[ id ][ SPEED ] = false;
g_bUserHas[ id ][ GRAVITY ] = false;

return PLUGIN_CONTINUE;

}

public client_disconnect( id )
{
if( is_user_bot( id ) )
return PLUGIN_CONTINUE;

SavePoints( id );
g_bUserHas[ id ][ INVIS ] = false;
g_bUserHas[ id ][ SPEED ] = false;
g_bUserHas[ id ][ GRAVITY ] = false;
hnsxp_playerlevel[ id ] = 0;
hnsxp_playerxp[ id ] = 0;
g_iUserPoints[id] = 0;

return PLUGIN_CONTINUE;

}

Mepetz 11-16-2014 17:10

Re: Fvault system
 
Please help me.. i don't fix problem witf nvault i try with this

Quote:

// Load player's stats from database
LoadPoints(id)
{
get_user_name(id, g_playername[id], charsmax(g_playername[]));
static key[32], data[64], iPoints[32], PlayerLevel[32], Playerxp[32];
format(key, charsmax(key), "%s", g_playername[id]);
format(data, charsmax(data), "Points-%d Level-%d XP-%d", g_iUserPoints[id], hnsxp_playerlevel[id], hnsxp_playerxp[id]);

if (fvault_get_data(g_vault_all, key, data, charsmax(data)))
{
parse(data, iPoints, charsmax(iPoints));
g_iUserPoints[id] = str_to_num(iPoints);
}

else if (fvault_get_data(g_vault_all, key, data, charsmax(data)))
{
parse(data, PlayerLevel, charsmax(PlayerLevel));
hnsxp_playerlevel[id] = str_to_num(PlayerLevel);
}

else if (fvault_get_data(g_vault_all, key, data, charsmax(data)))
{
parse(data, Playerxp, charsmax(Playerxp));
hnsxp_playerxp[id] = str_to_num(Playerxp);
}

}
but nothing


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

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