Zerowy poziom , nastepnie jak zabije kogoś to poziom podskakuje mi na 1 i exp nie leci .
Sma.:
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <cstrike>
#include <fakemeta>
#include <engine>
#include <hamsandwich>
#include <nvault>
#include <ColorChat>
#define PLUGIN "ZM-ExMod"
#define VERSION "1.0"
#define AUTHOR "Gh0st"
new xp_gracza[33];
new level_gracza[33];
new g_vault;
new Zapis;
new SyncMessage;
new zm_exp;
new const xp_na_poziom[22] = {
0,
75,
300,
675,
1200,
1875,
2700,
3675,
4800,
6075,
7500,
9075,
10800,
12675,
14700,
16875,
19200,
21675,
24300,
27075,
30000,
1073741824,
}
new Ranga[][] = { "Brak Rangi", "Amatorv2", "Amatorv3", "Amatorv4", "Zawodowiec1", "Zawodowiecv2", "Zawodowiec3", "Zawodowiecv4", "Zawodowiecv5", "Zawodowiecv6", "Zawodowiecv7", "Zawodowiecv8", "Zawodowiecv9", "Zawodowiecv10", "Zawodowiecv11", "Zawodowiecv13", "Zawodowiecv14", "Zawodowiecv15", "Zawodowiecv16", "Zawodowiecv17", "Zawodowiecv18" }
public plugin_init() {
g_vault = nvault_open("ZombieExpMod")
register_plugin(PLUGIN, VERSION, AUTHOR)
register_event("DeathMsg", "DeathMsg", "a")
zm_exp = register_cvar("zm_killxp", "100")
Zapis = register_cvar("zm_savetype", "2") // 1 - SteamID // 2 - Nick
SyncMessage = CreateHudSyncObj()
}
public DeathMsg()
{
new kid = read_data(1) //Zabojca
daj_xp(kid)
}
public daj_xp(id)
{
xp_gracza[id] += get_pcvar_num(zm_exp);
Zapisz(id)
SprawdzPoziom(id)
}
public SprawdzPoziom(id)
{
Wczytaj(id)
if(level_gracza[id] < 22)
{
while(xp_gracza[id] >= xp_na_poziom[level_gracza[id]]) //ZAWIERA PETLE WHILE
{
level_gracza[id]++;
ColorChat(id,GREEN,"Awansowales na poziom :^x01 %i", level_gracza[id]);
}
}
PokazInformacje(id);
}
public Zapisz(id) //zapisz
{
new AuthID[35]
if(Zapis == 1)
get_user_authid(id,AuthID,34)
else if(Zapis == 2)
get_user_name(id,AuthID,34)
new vaultkey[64],vaultdata[256]
format(vaultkey,63,"%s-ZM",AuthID)
format(vaultdata,255,"#%i#%i#",xp_gracza[id], level_gracza[id])
nvault_set(g_vault,vaultkey,vaultdata)
return PLUGIN_CONTINUE
}
public Wczytaj(id) //wczytaj
{
new AuthID[35]
if(Zapis == 1)
get_user_authid(id,AuthID,34)
else if(Zapis == 2)
get_user_name(id,AuthID,34)
new vaultkey[64],vaultdata[256]
format(vaultkey,63,"%s-ZM",AuthID)
format(vaultdata,255,"#%i#%i#",xp_gracza[id], level_gracza[id])
nvault_get(g_vault,vaultkey,vaultdata,255)
replace_all(vaultdata, 255, "#", " ")
new xpgracza[32], levelgracza[32]
parse(vaultdata, xpgracza, 31, levelgracza, 31)
xp_gracza[id] = str_to_num(xp_gracza)
level_gracza[id] = str_to_num(levelgracza)
return PLUGIN_CONTINUE
}
public client_disconnect(id)
{
Zapisz(id)
}
public client_connect(id)
{
level_gracza[id] = 1
Wczytaj(id)
PokazInformacje(id);
}
public PokazInformacje(id)
{
set_task(0.1, "PokazInformacje", id)
if(!is_user_alive(id))
return PLUGIN_CONTINUE
new AuthID2[35]
get_user_name(id,AuthID2,34)
set_hudmessage(255, 255, 255, 0.6, -1.0, 0, 0.0, 0.3, 0.0, 0.0, 2)
ShowSyncHudMsg(id, SyncMessage, "[Name: %s]^n[Poziom: %i] [Doswiadczenie: %i]^n[Ranga : %s]", AuthID2, level_gracza[id], xp_gracza, Ranga[level_gracza[id]]);
return PLUGIN_CONTINUE;
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1045\\ f0\\ fs16 \n\\ par }
*/
Proszę o jak najszybszą pomoc