SA-MP Forums Archive
Level instead of score - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: SA-MP Scripting and Plugins (https://sampforum.blast.hk/forumdisplay.php?fid=8)
+--- Forum: Scripting Help (https://sampforum.blast.hk/forumdisplay.php?fid=12)
+--- Thread: Level instead of score (/showthread.php?tid=623813)



Level instead of score - GabiXx - 05.12.2016

Guys, what i have to do to cmd setlevel modify score of player. So score = level you know.
i use this
PHP код:
public LoadUser_data(playerid,name[],value[])
{
    
INI_Int("Password",PlayerInfo[playerid][pPass]);
    
INI_Int("Cash",PlayerInfo[playerid][pCash]);
    
INI_Int("Admin",PlayerInfo[playerid][pAdmin]);
    
INI_Int("Kills",PlayerInfo[playerid][pKills]);
    
INI_Int("Skin",PlayerInfo[playerid][pSkin]);
    
INI_Int("Level",PlayerInfo[playerid][pLevel]);
    return 
1;
}
public 
OnPlayerDisconnect(playeridreason)
{
    new 
INI:File INI_Open(UserPath(playerid));
    
INI_SetTag(File,"data");
    
INI_WriteInt(File,"Cash",GetPlayerMoney(playerid));
    
INI_WriteInt(File,"Admin",PlayerInfo[playerid][pAdmin]);
    
INI_WriteInt(File,"Level",PlayerInfo[playerid][pLevel]);
    
INI_WriteInt(File,"Kills",PlayerInfo[playerid][pKills]);
    
INI_WriteInt(File,"Skin",GetPlayerSkin(playerid));
    
INI_Close(File);
    return 
1;
}
CMD:setskin(playeridparams[])
{
    new 
pIDvalue;
    if(
PlayerInfo[playerid][pAdmin] < 1) return SendClientMessage(playerid, -1"{FF0000}EROARE: {FFFFFF}Nu ai acces la aceasta comanda.");
    else if(
sscanf(params"ui"pIDvalue)) return SendClientMessage(playeridCOLOR_GOLD"Foloseste: /setskin [id] [skin]");
    else if(
pID == INVALID_PLAYER_ID) return SendClientMessage(playeridCOLOR_TOM"Jucatorul nu este conectat.");
    else if(
value || value 311) return SendClientMessage(playeridCOLOR_GOLD"Skinuri valabile: 0-311.");
    else
    {
        new 
string[100], target[MAX_PLAYER_NAME], pName[MAX_PLAYER_NAME];
        
GetPlayerName(playeridpNamesizeof(pName));
        
GetPlayerName(pIDtargetsizeof(target));
        
format(stringsizeof(string), "I-ai setat lui "COL_YELLOW"%s "COL_GY"skin-ul "COL_YELLOW"%i."targetvalue);
        
SendClientMessage(playeridCOLOR_GYELLOWstring);
        
format(stringsizeof(string), "Skinul tau este acum "COL_YELLOW"%i "COL_GY"datorita lui "COL_YELLOW"%s."valuepName);
        
SendClientMessage(pIDCOLOR_GYELLOWstring);
        
PlayerInfo[pID][pSkin] = value;
        
SetPlayerSkin(pIDPlayerInfo[pID][pSkin]);
    }
    return 
1;




Re: Level instead of score - Yaa - 05.12.2016

PHP код:
public OnPlayerUpdate(playerid)
{
     
SetPlayerScore(playeridPlayerInfo[playerid][pAdmin]);
     return 
1;

this one ?


Re: Level instead of score - GabiXx - 05.12.2016

Level man, no Admin. But i understand .
but what is OnPlayerUpdate? what it mean?


Re: Level instead of score - Yaa - 05.12.2016

OnPlayerUpdate <- refresh +200 times on second then the score will got updated every second btw show me level exp: :P

PHP код:
public OnPlayerUpdate(playerid

     
SetPlayerScore(playeridPlayerInfo[playerid][pLevel]); 
     return 
1

Lol !


Re: Level instead of score - setes7 - 05.12.2016

Do you need a CMD like this one?
PHP код:
CMD:setscore(playeridparams[])
{
    new 
pIDvaluestring[128];
    if(
PlayerInfo[playerid][pAdmin] < 1) return SendClientMessage(playerid, -1"{FF0000}EROARE: {FFFFFF}Nu ai acces la aceasta comanda.");
    if(
sscanf(params"ui"pIDvalue)) return SendClientMessage(playeridCOLOR_GOLD"Foloseste: /setlevel [id] [level]");
    if(
pID == INVALID_PLAYER_ID) return SendClientMessage(playeridCOLOR_TOM"Jucatorul nu este conectat.");
    
GetPlayerName(playeridpNamesizeof(pName));
    
GetPlayerName(pIDtargetsizeof(target));
    
format(stringsizeof(string),"Your Score been set to %d by admin %s"valuetarget); // change it to your language
    
SendClientMessage(pIDCOLOR_GYELLOWstring);
    
format(stringsizeof(string),"Admin %s has set your score to %d"pNamevalue);
    
SendClientMessage(pIDCOLOR_GYELLOWstring);
    
PlayerInfo[pID][pLevel] = value;
    
SetPlayerScore(playeridvalue);
    return 
1
or what?


Re: Level instead of score - GabiXx - 05.12.2016

And if i want when player register get level 1?
PHP код:
public OnDialogResponse(playeriddialogidresponselistiteminputtext[])
{
    switch( 
dialogid )
    {
        case 
DIALOG_REGISTER:
        {
            if (!
response) return Kick(playerid);
            if(
response)
            {
                if(!
strlen(inputtext)) return ShowPlayerDialog(playeridDIALOG_REGISTERDIALOG_STYLE_PASSWORD""COL_WHITE"Registering...",""COL_RED"Ai introdus o parola gresita.\n"COL_WHITE"Scrie o parola pentru a te inregistra.","Register","Quit");
                new 
INI:File INI_Open(UserPath(playerid));
                
GivePlayerMoney(playerid,10000);
                
SetSpawnInfo(playerid,0,PlayerInfo[playerid][pSkin],1283.5896,-1329.5938,13.3824,89.6460,0,0,0,0,0,0);
                
SetPlayerColor(playerid0xFFFFFFAA);
                
SpawnPlayer(playerid);
                
INI_SetTag(File,"data");
                
INI_WriteInt(File,"Password",udb_hash(inputtext));
                
INI_WriteInt(File,"Cash",0);
                
INI_WriteInt(File,"Admin",0);
                
INI_WriteInt(File,"Level",0);
                
INI_WriteInt(File,"Skin",0);
                
INI_WriteInt(File,"Kills",0);
                
INI_Close(File);
            }
        } 



Re: Level instead of score - Vince - 05.12.2016

Quote:
Originally Posted by Yaa
Посмотреть сообщение
OnPlayerUpdate <- refresh +200 times on second
Which is why it is insanely naive to use it for things like this. Variables don't change by themselves. The score should be updated when the variable gets updated. And it's actually about 30 times a second.


Re: Level instead of score - Yaa - 05.12.2016

Quote:
Originally Posted by Vince
Посмотреть сообщение
Which is why it is insanely naive to use it for things like this. Variables don't change by themselves. The score should be updated when the variable gets updated. And it's actually about 30 times a second.
i think u right :P 30 times btw it's updated very faster then score got changed 30 times on second


Re: Level instead of score - GabiXx - 05.12.2016

Thanks, now it work. So...i keep the code with OnPlayerUpdate?


Re: Level instead of score - Yaa - 05.12.2016

Quote:
Originally Posted by GabiXx
Посмотреть сообщение
Thanks, now it work. So...i keep the code with OnPlayerUpdate?
if u want show the level on TAB Dialog <- Player stats dialog ( THE ONE COME WITH SAMP)