Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- Credits: QTM Peyote: Za sistem prikazivanja levela
- Ovidius: Za nacin racunanja levela(za mogucnost upotrebe beskonacno levela)
- Sn1per: Za ideju o ovom modu koju sam delimicno preuzeo
- Hvala vam svima :)
- PS: Ovaj rad nije namenjen za prodaju niti bilo kakvo ostvarivanje materijalnih sredstava,
- vec iskljucivo za zabavu i nastavak kreiranja novog Level Mod-a
- */
- /*
- Credits: QTM Peyote: Za sistem prikazivanja levela
- Ovidius: Za nacin racunanja levela(za mogucnost upotrebe beskonacno levela)
- Sn1per: Za ideju o ovom modu koju sam delimicno preuzeo
- Hvala vam svima :)
- PS: Ovaj rad nije namenjen za prodaju niti bilo kakvo ostvarivanje materijalnih sredstava,
- vec iskljucivo za zabavu i nastavak kreiranja novog Level Mod-a
- */
- #include <amxmodx>
- #include <amxmisc>
- #include <fun>
- #include <cstrike>
- #include <engine>
- #include <nvault>
- #define CIN_Razvodnik 0
- #define CIN_Desetar 1
- #define CIN_Mladji_Vodnik 2
- #define CIN_Vodnik 3
- #define CIN_Stariji_Vodnik 4
- #define CIN_Stariji_Vodnik_I 5
- #define CIN_Zastavnik 6
- #define CIN_Zastavnik_I 7
- #define CIN_Potporucnik 8
- #define CIN_Porucnik 9
- #define CIN_Kapetan 10
- #define CIN_Major 11
- #define CIN_Potpukovnik 12
- #define CIN_Pukovnik 13
- #define CIN_Brigadni_General 14
- #define CIN_General_Major 15
- #define CIN_General_Potpukovnik 13
- #define CIN_General 17
- #define MAXCINOVI 18
- new CinIgraca[33]
- new const Cinovi[MAXCINOVI][] =
- {
- "Razvodnik",
- "Desetar",
- "Mladji vodnik",
- "Vodnik",
- "Stariji vodnik",
- "Stariji vodnik I",
- "Zastavnik",
- "Zastavnik I",
- "Potporucnik",
- "Porucnik",
- "Kapetan",
- "Major",
- "Potpukovnik",
- "Pukovnik",
- "Brigadni general",
- "General-Major",
- "General-Potpukovnik",
- "General"
- }
- new g_vault;
- new SyncHudObj;
- new iskustvo_igraca[33]
- new nivo_igraca[33] = 1;
- new maxlvl
- new kill_iskustvo;
- public plugin_init()
- {
- register_plugin("Level Mod", "1.0", "AMD");
- register_event("DeathMsg", "Death", "ade");
- g_vault = nvault_open("xpmod");
- SyncHudObj = CreateHudSyncObj();
- kill_iskustvo = register_cvar("amx_killxp", "13");
- maxlvl = register_cvar("amx_maxlevel","100000")
- }
- public client_connect(id)
- {
- PonistiInfo(id);
- UcitajLevele(id);
- set_task(3.0, "PokaziInfo", id+672);
- }
- public client_disconnect(id)
- {
- SacuvajLevele(id);
- PonistiInfo(id);
- remove_task(id+672);
- }
- public PonistiInfo(id)
- {
- nivo_igraca[id] = 0;
- iskustvo_igraca[id] = 0;
- }
- public izracunajxp(level)
- return level*3*10;
- public PokaziInfo(id)
- {
- id -= 672;
- set_task(0.1, "PokaziInfo", id+672);
- if(nivo_igraca[id] < 5)
- {
- CinIgraca[id] = CIN_Razvodnik
- }
- if(nivo_igraca[id] >= 5 || nivo_igraca[id] <= 25)
- {
- CinIgraca[id] = CIN_Desetar
- }
- if(nivo_igraca[id] >= 25 || nivo_igraca[id] <= 50)
- {
- CinIgraca[id] = CIN_Mladji_Vodnik
- }
- if(nivo_igraca[id] >= 50 || nivo_igraca[id] <= 75)
- {
- CinIgraca[id] = CIN_Vodnik
- }
- if(nivo_igraca[id] >= 75 || nivo_igraca[id] <= 100)
- {
- CinIgraca[id] = CIN_Stariji_Vodnik
- }
- if(nivo_igraca[id] >= 100 || nivo_igraca[id] <= 125)
- {
- CinIgraca[id] = CIN_Stariji_Vodnik_I
- }
- if(nivo_igraca[id] >= 125 || nivo_igraca[id] <= 150)
- {
- CinIgraca[id] = CIN_Zastavnik
- }
- if(nivo_igraca[id] >= 150 || nivo_igraca[id] <= 175)
- {
- CinIgraca[id] = CIN_Zastavnik_I
- }
- if(nivo_igraca[id] >= 175 || nivo_igraca[id] <= 200)
- {
- CinIgraca[id] = CIN_Potporucnik
- }
- if(nivo_igraca[id] >= 200 || nivo_igraca[id] <= 215)
- {
- CinIgraca[id] = CIN_Potporucnik
- }
- if(nivo_igraca[id] >= 215 || nivo_igraca[id] <= 225)
- {
- CinIgraca[id] = CIN_Kapetan
- }
- if(nivo_igraca[id] >= 225 || nivo_igraca[id] <= 250)
- {
- CinIgraca[id] = CIN_Major
- }
- if(nivo_igraca[id] >= 250 || nivo_igraca[id] <= 275)
- {
- CinIgraca[id] = CIN_Potpukovnik
- }
- if(nivo_igraca[id] >= 275 || nivo_igraca[id] <= 300)
- {
- CinIgraca[id] = CIN_Pukovnik
- }
- if(nivo_igraca[id] >= 300 || nivo_igraca[id] <= 325)
- {
- CinIgraca[id] = CIN_Brigadni_General
- }
- if(nivo_igraca[id] >= 325 || nivo_igraca[id] <= 350)
- {
- CinIgraca[id] = CIN_General_Major
- }
- if(nivo_igraca[id] >= 350 || nivo_igraca[id] <= 375)
- {
- CinIgraca[id] = CIN_General_Potpukovnik
- }
- if(nivo_igraca[id] >= 375)
- {
- CinIgraca[id] = CIN_General
- }
- if(!is_user_alive(id))
- {
- new target = entity_get_int(id, EV_INT_iuser2);
- if(target == 0)
- {
- return;
- }
- set_hudmessage(255, 212, 42, -1.0, 0.0, 0, 0.0, 0.3, 0.0, 0.0);
- ShowSyncHudMsg(id, SyncHudObj, "Iskustvo : %i / %i ^nLevel: %i^nRank: %s", iskustvo_igraca[target],izracunajxp(nivo_igraca[target]), nivo_igraca[target], Cinovi[CinIgraca[target]]);
- }
- else
- {
- set_hudmessage(0, 200, 250, -1.0, 0.0, 0, 0.0, 0.3, 0.0, 0.0);
- ShowSyncHudMsg(id, SyncHudObj, "[Iskustvo : %i / %i]^n[Level: %i]^n[Rank: %s]", iskustvo_igraca[id],izracunajxp(nivo_igraca[id]), nivo_igraca[id], Cinovi[CinIgraca[id]]);
- }
- }
- public Death()
- {
- new id = read_data(2);
- new napadac = read_data(1);
- if(napadac != id && is_user_connected(napadac))
- {
- new novo_iskustvo = get_pcvar_num(kill_iskustvo);
- iskustvo_igraca[napadac] += novo_iskustvo
- ProveriNivo(napadac);
- }
- }
- public ProveriNivo(id)
- {
- if(nivo_igraca[id] < maxlvl)
- {
- while(iskustvo_igraca[id] >= izracunajxp(nivo_igraca[id]))
- {
- nivo_igraca[id]++;
- }
- if(nivo_igraca[id] > maxlvl)
- {
- nivo_igraca[id] = maxlvl
- }
- }
- SacuvajLevele(id);
- }
- public SacuvajLevele(id)
- {
- new AuthID[35];
- get_user_authid(id, AuthID, 34);
- new vaultkey[64], vaultdata[256];
- format(vaultkey, 63, "%s-lvl", AuthID);
- format(vaultdata, 255, "%i#%i#", iskustvo_igraca[id], nivo_igraca[id]);
- nvault_set(g_vault, vaultkey, vaultdata);
- return PLUGIN_CONTINUE;
- }
- public UcitajLevele(id)
- {
- new AuthID[35];
- get_user_authid(id, AuthID, 34);
- new vaultkey[64], vaultdata[256];
- format(vaultkey, 63, "%s-lvl", AuthID);
- format(vaultdata, 255, "%i#%i#", iskustvo_igraca[id], nivo_igraca[id] );
- nvault_get(g_vault, vaultkey, vaultdata, 255);
- replace_all(vaultdata, 255, "#", " ");
- new iskustvoigraca[32], leveligraca[32]
- parse(vaultdata, iskustvoigraca, 31, leveligraca, 31);
- iskustvo_igraca[id] = str_to_num(iskustvoigraca);
- nivo_igraca[id] = str_to_num(leveligraca);
- return PLUGIN_CONTINUE;
- }
Advertisement
Add Comment
Please, Sign In to add comment