AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Scripting Help (https://forums.alliedmods.net/forumdisplay.php?f=11)
-   -   Help Pls - Wont Save! :s (https://forums.alliedmods.net/showthread.php?t=155423)

HBxander 04-21-2011 20:55

Help Pls - Wont Save! :s
 
Hi there..

I've made this Wow Mod and will now add Save / Load funktion..

Its making the vaults and saving correctly as i can see, but it wont open it ?
PHP Code:

public Save(iPlayer)
{
    static 
data 256 ]
    new 
len formatex datasizeof data ) - 1"%i"iXP iPlayer ] )
    
    
len += formatex datasizeof data ) - len 1"%i"iLevel iPlayer ] )
    
len += formatex datasizeof data ) - len 1"%i"iSta iPlayer ] )
    
len += formatex datasizeof data ) - len 1"%i"iStr iPlayer ] )
    
len += formatex datasizeof data ) - len 1"%i"iAgi iPlayer ] )
    
len += formatex datasizeof data ) - len 1"%i"iGold iPlayer ] )
    
    
nvault_set gVaultg_iAuthID iPlayer ], data )
}

public 
Load(iPlayer)
{
    static 
data 256 ], timestamp;
    if ( 
nvault_lookup gVaultg_iAuthID iPlayer ], datasizeof data ) - 1timestamp ) )
    {
        
ParseLoadData iPlayerdata )
    }
    else
    {
        
NewUser iPlayer )
    }
}

public 
NewUser iPlayer )
{
    
iXP iPlayer ] = 0
    iLevel 
iPlayer ] = 0
    iSta 
iPlayer ] = 0
    iStr 
iPlayer ] = 0
    iAgi 
iPlayer ] = 0
    iGold 
iPlayer ] = 0
}

ParseLoadData(iPlayerdata[256])
{
    static 
num ]
    
strbreak datanumsizeof num ) - 1datasizeof data ) - )
    
    
iXP[iPlayer] = str_to_num num )
    
    
strbreak datanumsizeof num ) - 1datasizeof data ) - )
    
iLevel iPlayer ] = clamp str_to_num num ), 0MAXLEVEL )
    
    
strbreak datanumsizeof num ) - 1datasizeof data ) - )
    
iSta iPlayer ] = clamp str_to_num num ), 0MAXLEVEL )
    
    
strbreak datanumsizeof num ) - 1datasizeof data ) - )
    
iStr iPlayer ] = clamp str_to_num num ), 0MAXLEVEL )
    
    
strbreak datanumsizeof num ) - 1datasizeof data ) - )
    
iAgi iPlayer ] = clamp str_to_num num ), 0MAXLEVEL )
    
    
strbreak datanumsizeof num ) - 1datasizeof data ) - )
    
iGold iPlayer ] = clamp str_to_num num ), 0MAXLEVEL )


thats my code

pls help ..

Exolent[jNr] 04-21-2011 21:05

Re: Help Pls - Wont Save! :s
 
When you save all of your values, they are all merged together without a separator.

PHP Code:

    new len formatex datasizeof data ) - 1"%i"iXP iPlayer ] )
    
// 5
    
    
len += formatex datasizeof data ) - len 1"%i"iLevel iPlayer ] )
    
// 51
    
len += formatex datasizeof data ) - len 1"%i"iSta iPlayer ] )
    
// 513
    
len += formatex datasizeof data ) - len 1"%i"iStr iPlayer ] )
    
// 5138
    
len += formatex datasizeof data ) - len 1"%i"iAgi iPlayer ] )
    
// 51382
    
len += formatex datasizeof data ) - len 1"%i"iGold iPlayer ] ) 
    
// 513829 

So basically you save it as a large number instead of separate numbers.

You can add separators by putting a space after each formatted integer.

HBxander 04-21-2011 21:11

Re: Help Pls - Wont Save! :s
 
So .. all i have to do is just like
len += formatex ( data, sizeof ( data ) - len - 1, "%i " instead of "%i" ?

Exolent[jNr] 04-21-2011 21:12

Re: Help Pls - Wont Save! :s
 
Yes, but remember to do it for them all (except the last one since you don't need a space after it).

HBxander 04-21-2011 21:13

Re: Help Pls - Wont Save! :s
 
Like this:
PHP Code:

public Save(iPlayer)
{
    static 
data 256 ]
    new 
len formatex datasizeof data ) - 1"%i"iXP iPlayer ] )
    
    
len += formatex datasizeof data ) - len 1" %i"iLevel iPlayer ] )
    
len += formatex datasizeof data ) - len 1" %i"iSta iPlayer ] )
    
len += formatex datasizeof data ) - len 1" %i"iStr iPlayer ] )
    
len += formatex datasizeof data ) - len 1" %i"iAgi iPlayer ] )
    
len += formatex datasizeof data ) - len 1" %i"iGold iPlayer ] )
    
    
nvault_set gVaultg_iAuthID iPlayer ], data )



Exolent[jNr] 04-21-2011 21:15

Re: Help Pls - Wont Save! :s
 
Yes, that method is perfect.

HBxander 04-21-2011 21:15

Re: Help Pls - Wont Save! :s
 
Server wont start when ill give myself 200 XP, lvl 2 and 5 sta 4 str 3 agi 5000 gold

wont start but it saves it s:

Can u maybe make the code or so ? -_-


All times are GMT -4. The time now is 19:45.

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