Can anyone help me with storing multiple data.
Code:
#include < amxmodx >
#include < nvault >
new g_iVaultID
new g_szSteamID[ 33 ][ 34 ]
new g_iData[ 33 ]
new g_iData2[ 33 ]
new g_iData3[ 33 ]
new g_iData4[ 33 ]
new g_iData5[ 33 ]
new g_iData6[ 33 ]
public plugin_init( )
{
register_plugin( "Shit", "Crap", "Lol" )
register_clcmd( "say /show", "fn_Show" )
register_clcmd( "say /save", "fn_Save" )
}
public plugin_end( )
{
nvault_close( g_iVaultID )
}
public plugin_cfg( )
{
g_iVaultID = nvault_open( "test_vault" )
if( g_iVaultID == INVALID_HANDLE )
{
set_fail_state( "Error opening Test Nvault" )
}
}
public client_putinserver( Player )
{
get_user_authid( Player, g_szSteamID[ Player ], charsmax( g_szSteamID[ ] ) )
Load_Stuff( Player )
}
public fn_Show( Player )
{
client_print( Player, print_chat, "Data1: %d; Data2: %d; Data3: %d; Data4: %d; Data5:%d; Data6: %d", g_iData[ Player ], g_iData2[ Player ], g_iData3[ Player ], g_iData4[ Player ], g_iData5[ Player ], g_iData6[ Player ] )
}
public fn_Save( Player )
{
new szSteamID[ 34 ]
formatex( szSteamID, charsmax( szSteamID ), "%sTEST", g_szSteamID[ Player ] )
g_iData[ Player ] = random_num( 0, 200 )
g_iData2[ Player ] = random_num( 201, 400 )
g_iData3[ Player ] = random_num( 401, 600 )
g_iData4[ Player ] = random_num( 601, 800 )
g_iData5[ Player ] = random_num( 801, 999 )
g_iData6[ Player ] = random_num( 1000, 1099 )
new szData[ 50 ]
formatex( szData, charsmax( szData ), "%d %d %d %d %d %d", g_iData[ Player ], g_iData2[ Player ], g_iData3[ Player ], g_iData4[ Player ], g_iData5[ Player ], g_iData6[ Player ] )
nvault_set( g_iVaultID, szSteamID, szData )
client_print( Player, print_chat, "Data1: %d; Data2: %d; Data3: %d; Data4: %d; Data5:%d; Data6: %d", g_iData[ Player ], g_iData2[ Player ], g_iData3[ Player ], g_iData4[ Player ], g_iData5[ Player ], g_iData6[ Player ] )
}
Load_Stuff( Player )
{
new szData[ 50 ], szSteamID[ 34 ]
formatex( szSteamID, charsmax( szSteamID ), "%sTEST", g_szSteamID[ Player ] )
if( nvault_get( g_iVaultID, szSteamID, szData, 49 ) )
{
new iSpacePos = contain( szData, " " )
if( iSpacePos > -1 )
{
new szData1[ 4 ], szData2[ 4 ], szData3[ 4 ], szData4[ 4 ], szData5[ 4 ], szData6[ 5 ]
formatex( szData1, iSpacePos, "%s", szData )
formatex( szData2, 3, "%s", szData[ iSpacePos + 1 ] )
formatex( szData3, 3, "%s", szData2[ iSpacePos + 1 ] )
formatex( szData4, 3, "%s", szData3[ iSpacePos + 1 ] )
formatex( szData5, 3, "%s", szData4[ iSpacePos + 1 ] )
formatex( szData6, 4, "%s", szData5[ iSpacePos + 1 ] )
g_iData[ Player ] = str_to_num( szData1 )
g_iData2[ Player ] = str_to_num( szData2 )
g_iData3[ Player ] = str_to_num( szData3 )
g_iData4[ Player ] = str_to_num( szData4 )
g_iData5[ Player ] = str_to_num( szData5 )
g_iData6[ Player ] = str_to_num( szData6 )
}
}
}
I dont why, but g_iData[ ] values all the time are 0.