A wiec postanowilem napisac sobie plugin, a mianowicie XPMod. Ale gdy wgrałem go na serwer (HNS), to w ogóle nie działa. Do plugins.ini takze dodalem. Zobaczicie Kod:
#define MAXCLASSES 1 new PlayerXP[33],PlayerLevel[33],PlayerClass[33] new XP_kill, XP_hs, SaveXP new g_vault new const CLASSES[MAXCLASSES][] = { "None" } new const LEVELS[20] = { 0, 100, 200, 350, 400, 800, 1400, 2200, 3500, 5000, 7000, 9500, 12000, 15000, 19000, 24000, 30000, 40000, 52000, 80000 } public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_event("DeathMsg","eDeath","a") SaveXP = register_cvar("SaveXP","1") XP_kill=register_cvar("Xp_per_kill","12") XP_hs=register_cvar("XP_hs_bonus","5") g_vault = nvault_open("animod") register_clcmd("say /xp", "ShowHud") register_clcmd("say_team /xp", "ShowHud") } public eDeath( ) { new attacker = read_data( 1 ); new ivictim = read_data ( 2 ); new headshot = read_data( 3 ) if(PlayerClass[attacker] == 0) return PLUGIN_CONTINUE new clip, ammo, weapon = get_user_weapon(attacker,clip,ammo); PlayerXP[attacker] += get_pcvar_num(XP_kill) if(headshot) PlayerXP[attacker] += get_pcvar_num(XP_hs) while(PlayerXP[attacker] >= LEVELS[PlayerLevel[attacker]]) if(PlayerClass[attacker] == 0) return PLUGIN_CONTINUE client_print(attacker, print_chat, "[JumpOne.pl] Gratulacje! Zdobyles poziom: %i %s!", PlayerLevel[attacker],CLASSES[PlayerClass[attacker]]) PlayerLevel[attacker] +=1 ShowHud(attacker); SaveData(attacker); } public ShowHud(id) { set_hudmessage(255, 0, 0, 0.75, 0.01, 0, 6.0, 15.0); show_hudmessage(id, "Poziom: %i^nDoswiadczenie: %i^nPostac: %s",PlayerLevel[id],PlayerXP[id],CLASSES[PlayerClass[id]]) } public client_connect(id) { if(get_pcvar_num(SaveXP) == 1) { LoadData(id) } } public client_disconnect(id) { if(get_pcvar_num(SaveXP) ==1) { SaveData(id) } } public SaveData(id) { if(g_vault == INVALID_HANDLE) return; new AuthID[32]; get_user_authid(id, AuthID, 31); new vaultkey[64], vaultdata[128]; format(vaultkey, 63, "%s-Mod", AuthID); format(vaultdata, 127, "%i %i", PlayerXP[id], PlayerLevel[id]); nvault_set(g_vault, vaultkey, vaultdata); } public LoadData(id) { if(g_vault == INVALID_HANDLE) return; new AuthID[32]; get_user_authid(id, AuthID, 31); new vaultkey[64], vaultdata[128]; format(vaultkey, 63, "%s-Mod", AuthID); if(nvault_get(g_vault, vaultkey, vaultdata, 127)) { new playerxp[11], playerlevel[11]; parse(vaultdata, playerxp, 10, playerlevel, 10); PlayerXP[id] = str_to_num(playerxp); PlayerLevel[id] = str_to_num(playerlevel); } }
Proszę o pomoc.