How to make lvl up system in textdraws
#1

So im trying figure from this codes
pawn Код:
stock CheckUpdateLevel(playerid)
{
    if(PlayerInfo[playerid][EXP] == PlayerInfo[playerid][NEXP])
    {
        switch(PlayerInfo[playerid][Level])
        {
            case 0:
            {
            PlayerInfo[playerid][Level] +=1;
            PlayerInfo[playerid][EXP] = 0;
            PlayerInfo[playerid][NEXP] = 200;
            SendMessage(playerid,-1,"Level Up","Len cap");
            }
            case 1:
            {
            SetPlayerScore(playerid,PlayerInfo[playerid][Level] +=1);
            PlayerInfo[playerid][EXP] = 0;
            PlayerInfo[playerid][NEXP] = 400;
            SendMessage(playerid,-1,"Level Up","Len cap");
            }
            case 2:
            {
            SetPlayerScore(playerid,PlayerInfo[playerid][Level] +=1);
            PlayerInfo[playerid][EXP] = 0;
            PlayerInfo[playerid][NEXP] = 600;
            SendMessage(playerid,-1,"Level Up","Len cap");
            }
            case 3:
            {
            SetPlayerScore(playerid,PlayerInfo[playerid][Level] +=1);
            PlayerInfo[playerid][EXP] = 0;
            PlayerInfo[playerid][NEXP] = 800;
            SendMessage(playerid,-1,"Level Up","Len cap");
            }
            case 4:
            {
            SetPlayerScore(playerid,PlayerInfo[playerid][Level] +=1);
            PlayerInfo[playerid][EXP] = 0;
            PlayerInfo[playerid][NEXP] = 1000;
            SendMessage(playerid,-1,"Level Up","Len cap");
            }
            case 5:
            {
            SetPlayerScore(playerid,PlayerInfo[playerid][Level] +=1);
            PlayerInfo[playerid][EXP] = 0;
            PlayerInfo[playerid][NEXP] = 1200;
            SendMessage(playerid,-1,"Level Up","Len Cap");
            }
            case 6:
            {
            SetPlayerScore(playerid,PlayerInfo[playerid][Level] +=1);
            PlayerInfo[playerid][EXP] = 0;
            PlayerInfo[playerid][NEXP] = 1400;
            SendMessage(playerid,-1,"Level Up","Len cap");
            }
            case 7:
            {
            SetPlayerScore(playerid,PlayerInfo[playerid][Level] +=1);
            PlayerInfo[playerid][EXP] = 0;
            PlayerInfo[playerid][NEXP] = 1400;
            SendMessage(playerid,-1,"Level Up","Len cap");
            }
            case 8:
            {
            SetPlayerScore(playerid,PlayerInfo[playerid][Level] +=1);
            PlayerInfo[playerid][EXP] = 0;
            PlayerInfo[playerid][NEXP] = 1800;
            SendMessage(playerid,-1,"Level Up","Len cap");
            }
            case 9:
            {
            SetPlayerScore(playerid,PlayerInfo[playerid][Level] +=1);
            PlayerInfo[playerid][EXP] = 0;
            PlayerInfo[playerid][NEXP] = 2000;
            SendMessage(playerid,-1,"Level Up","Len cap");
            }
            case 10:
            {
            SetPlayerScore(playerid,PlayerInfo[playerid][Level] +=1);
            PlayerInfo[playerid][EXP] = 0;
            PlayerInfo[playerid][NEXP] = 2200;
            SendMessage(playerid,-1,"Level Up","Len cap");
            }
            case 11:
            {
            SetPlayerScore(playerid,PlayerInfo[playerid][Level] +=1);
            PlayerInfo[playerid][EXP] = 0;
            PlayerInfo[playerid][NEXP] = 2400;
            SendMessage(playerid,-1,"Level Up","Len cap");
            }
            case 12:
            {
            SetPlayerScore(playerid,PlayerInfo[playerid][Level] +=1);
            PlayerInfo[playerid][EXP] = 0;
            PlayerInfo[playerid][NEXP] = 2800;
            SendMessage(playerid,-1,"Level Up","Len cap");
            }
            case 13:
            {
            SetPlayerScore(playerid,PlayerInfo[playerid][Level] +=1);
            PlayerInfo[playerid][EXP] = 0;
            PlayerInfo[playerid][NEXP] = 3000;
            SendMessage(playerid,-1,"Level Up","Len cap");
            }
            case 14:
            {
            SetPlayerScore(playerid,PlayerInfo[playerid][Level] +=1);
            PlayerInfo[playerid][EXP] = 0;
            PlayerInfo[playerid][NEXP] = 3200;
            SendMessage(playerid,-1,"Level Up","Len cap");
            }
            case 15:
            {
            SetPlayerScore(playerid,PlayerInfo[playerid][Level] +=1);
            PlayerInfo[playerid][EXP] = 0;
            PlayerInfo[playerid][NEXP] = 3400;
            SendMessage(playerid,-1,"Level Up","Len cap");
            }
            case 16:
            {
            SetPlayerScore(playerid,PlayerInfo[playerid][Level] +=1);
            PlayerInfo[playerid][EXP] = 0;
            PlayerInfo[playerid][NEXP] = 3800;
            SendMessage(playerid,-1,"Level Up","Len cap");
            }
            case 17:
            {
            SetPlayerScore(playerid,PlayerInfo[playerid][Level] +=1);
            PlayerInfo[playerid][EXP] = 0;
            PlayerInfo[playerid][NEXP] = 4000;
            SendMessage(playerid,-1,"Level Up","Len cap");
            }
            case 18:
            {
            SetPlayerScore(playerid,PlayerInfo[playerid][Level] +=1);
            PlayerInfo[playerid][EXP] = 0;
            PlayerInfo[playerid][NEXP] = 4200;
            SendMessage(playerid,-1,"Level Up","Len cap");
            }
            case 19:
            {
            SetPlayerScore(playerid,PlayerInfo[playerid][Level] +=1);
            PlayerInfo[playerid][EXP] = 0;
            PlayerInfo[playerid][NEXP] = 4400;
            SendMessage(playerid,-1,"Level Up","Len cap");
            }
        }
    }
    return 1;
}
I need make this show in textdraws

something like this
pawn Код:
Xpe/Nxpe (Level)
Xpe = player currently xpe
Nxpe = need xpe to lvl up like 600/1000 WHEN he come on 1000 he get lvl up ...
Level (Show Player Level)
Reply
#2

Christ that code is horribly set up. 19 cases only for the NEXP setting. Anyways: you can get the textdraw codes from any place on this forum, set it up in OnPlayerConnect or something and then only update it in this callback/function

format(textdrawtext, sizeof(textdrawtext), '%d/%d (%d)', PlayerInfo[playerid][EXP], PlayerInfo[playerid][NEXP], PlayerInfo[playerid][Level]);
Reply
#3

can you help me get this codes lower ?
the case from 0 to 19
Reply
#4

Just remove this part from every case:

pawn Код:
SetPlayerScore(playerid,PlayerInfo[playerid][Level] +=1);
            PlayerInfo[playerid][EXP] = 0;
            SendMessage(playerid,-1,"Level Up","Len cap");
To either under all cases or just before the switch
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)