nem volt teszt
Kód:
new const SZINTEK[40] = {
     500,
     1000,
     1500,
     2000,
     2500,
     3000,
    3500,
    4000,
    4500,
    5000,
    5500,
     6000,
     6500,
     7000,
     7500,
     8000,
    8500,
    9000,
    9500,
    10000,
    10500,
     11000,
     11500,
     12000,
     12500,
     13000,
    13500,
    14000,
    14500,
    15000,
    15500,
     16000,
     16500,
     17000,
     17500,
     18000,
    18500,
    19000,
    19500,
    20000,
}
new jatekosxp[33], jatekosszint[33], kredit[33];
new olesxp, xpmentes, xpmodnvault;
public plugin_init()
{
    register_plugin(NAME, VERSION, AUTHOR);
    RegisterHam(Ham_Spawn, "player", "eledes", 1);
     register_event("DeathMsg", "halal", "a");
     xpmentes = register_cvar("xpmentes","1");
     olesxp = register_cvar("olesxp", "10");
     xpmodnvault = nvault_open("xpmod");
}
public eledes(id)
{
    if((jatekosszint[id] < 40) && (jatekosxp[id] >= SZINTEK[jatekosszint[id]]))
    {
        client_print(id,print_chat,"[XP Mod] Gratulalok!Szintet leptel!");
        while(jatekosxp[id] >= SZINTEK[jatekosszint[id]])
        {
              jatekosszint[id] += 1;
        }
    }
    if(jatekosszint[id] > 0)
        kredit[id] = jatekosszint[id]
}
public halal() 
{
     new iVictim = read_data(2);
     new weapon, hitplace, attacker = get_user_attacker(iVictim,weapon,hitplace);
    new victimname[32], wvar[32];
       get_user_name(iVictim,victimname,31);
       read_data(4, wvar, 31);
       if(equal(wvar, "world", 5))
           return;
    if(attacker < 1 || attacker > 32)
        return;
     jatekosxp[attacker] += get_pcvar_num(olesxp);
    client_print(attacker,print_chat,"[XP Mod] Kaptal %i XPt olesert, megolted: %s-t!", get_pcvar_num(olesxp), victimname);
    hud(attacker);
}
public hud(id)
{
    set_hudmessage(255, 255, 255, 0.01, 0.2, 0, 3.0, 3.0);
    if(jatekosszint[id] < 40)
         show_hudmessage(id, "Kredit: %i^nSzint: %i^nXP: %i / %i",kredit[id], jatekosszint[id], jatekosxp[id], SZINTEK[jatekosszint[id] + 1]);
    else
         show_hudmessage(id, "Kredit: %i^nSzint: %i^nElerted a maximum szintet!",kredit[id], jatekosszint[id]);
    set_task(2.0, "hud", id);
}
public client_putinserver(id)
{
     if(get_pcvar_num(xpmentes) == 1)
          LoadData(id);
    set_task(10.0, "hud", id);
}
public client_disconnect(id)
{
     if(get_pcvar_num(xpmentes) == 1)
          SaveData(id);
     jatekosxp[id] = 0;
     jatekosszint[id] = 0;
}
public SaveData(id)
{
     new PlayerName[35];
     get_user_name(id,PlayerName,34);
     new vaultkey[64],vaultdata[256];
     format(vaultkey,63,"%s",PlayerName);
     format(vaultdata,255,"%i#%i#",jatekosxp[id],jatekosszint[id]);
     nvault_set(xpmodnvault,vaultkey,vaultdata);
     return PLUGIN_CONTINUE;
}
public LoadData(id)
{
     new PlayerName[35];
     get_user_name(id,PlayerName,34);
     new vaultkey[64],vaultdata[256];
     format(vaultkey,63,"%s",PlayerName);
     format(vaultdata,255,"%i#%i#",jatekosxp[id],jatekosszint[id]);
     nvault_get(xpmodnvault,vaultkey,vaultdata,255);
     replace_all(vaultdata, 255, "#", " ");
     new playerxp[32], playerlevel[32];
     parse(vaultdata, playerxp, 31, playerlevel, 31);
     jatekosxp[id] = str_to_num(playerxp);
     jatekosszint[id] = str_to_num(playerlevel);
     return PLUGIN_CONTINUE;
}