#include #include #include #include #include #include #include #define PLUGIN "CoD - Odznaki" #define VERSION "1.0" #define AUTHOR "Suis & Raku" #define ZADANIE_POKAZ_ODZNAKI 666 new zapis new Odznaki[33]; new pcvar_od1, pcvar_od2, pcvar_od3, pcvar_od4, pcvar_od5; new pcvar_koszt1, pcvar_koszt2, pcvar_koszt3, pcvar_koszt4, pcvar_koszt5; new od1, od2, od3, od4, od5 new koszt1, koszt2, koszt3, koszt4, koszt5 new SyncHudObj public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) zapis=nvault_open("Odznakisave") register_event("DeathMsg", "eDeath", "a"); register_event("ResetHUD", "ResetHUD", "abe"); register_clcmd("say /exp","kup"); register_clcmd("odznaki_daj","daj", ADMIN_IMMUNITY, " ") register_clcmd("odznaki_zabierz","zabierz", ADMIN_IMMUNITY, " ") register_clcmd("say /sklep", "Sklep") pcvar_od1 = register_cvar("odznaki_ile1", "500"); pcvar_od2 = register_cvar("odznaki_ile2", "1000"); pcvar_od3 = register_cvar("odznaki_ile3", "1500"); pcvar_od4 = register_cvar("odznaki_ile4", "2000"); pcvar_od5 = register_cvar("odnzaki_ile5", "3000"); pcvar_koszt1 = register_cvar("odznaki_koszt1", "5"); pcvar_koszt2 = register_cvar("odznaki_koszt2", "10"); pcvar_koszt3 = register_cvar("odznaki_koszt3", "15"); pcvar_koszt4 = register_cvar("odznaki_koszt4", "20"); pcvar_koszt5 = register_cvar("odnzaki_koszt5", "30"); od1 = get_pcvar_num(pcvar_od1) od2 = get_pcvar_num(pcvar_od2) od3 = get_pcvar_num(pcvar_od3) od4 = get_pcvar_num(pcvar_od4) od5 = get_pcvar_num(pcvar_od5) koszt1 = get_pcvar_num(pcvar_koszt1) koszt2 = get_pcvar_num(pcvar_koszt2) koszt3 = get_pcvar_num(pcvar_koszt3) koszt4 = get_pcvar_num(pcvar_koszt4) koszt5 = get_pcvar_num(pcvar_koszt5) } public client_connect(id) { Load_Odznaki(id) } public client_disconnect(id) { Save_Odznaki(id) } public plugin_end() { nvault_close(zapis) } public eDeath() { new attacker = read_data( 1 ); new ofiara = read_data( 2 ); if(ofiara != attacker && attacker != 0) { if(get_user_team(attacker) != get_user_team(ofiara)) { Odznaki[attacker] += 1; } } } public PokazOdznaki(id) { id -= ZADANIE_POKAZ_ODZNAKI; if(!is_user_alive(id)) { remove_task(id+ZADANIE_POKAZ_ODZNAKI); return; } set_hudmessage(0, 255, 0, 0.02, 0.23, 0, 0.0, 0.3, 0.0, 0.0); ShowSyncHudMsg(id, SyncHudObj, "^n^n^n^n^n^n[Odznaki: %i]", Odznaki[id]); } public ResetHUD(id) { if(!task_exists(id+ZADANIE_POKAZ_ODZNAKI)) set_task(0.1, "PokazOdznaki", id+ZADANIE_POKAZ_ODZNAKI, _, _, "b"); } public kup(id) { new zrob1[128], zrob2[128], zrob3[128], zrob4[128], zrob5[128]; format(zrob1, charsmax(zrob1), "\yKup %d XP - %d odznak", od1, koszt1); format(zrob2, charsmax(zrob2), "\yKup %d XP - %d odznak", od2, koszt2); format(zrob3, charsmax(zrob3), "\yKup %d XP - %d odznak", od3, koszt3); format(zrob4, charsmax(zrob4), "\yKup %d XP - %d odznak", od4, koszt4); format(zrob5, charsmax(zrob5), "\yKup %d XP - %d odznak", od5, koszt5); new menu = menu_create("\d[\wWybierz ilosc XP'a\d]", "Menu_Handle"); menu_additem(menu, zrob1); menu_additem(menu, zrob2); menu_additem(menu, zrob3); menu_additem(menu, zrob4); menu_additem(menu, zrob5); menu_setprop(menu, MPROP_EXIT, MEXIT_ALL); menu_display(id, menu); } public Menu_Handle(id, menu, item) { new exp = cod_get_user_xp(id); switch(item) { case 0: { if(Odznaki[id] < koszt1) { ColorChat(id, RED, "[Call Of Duty]^x04 Nie stac Cie na to!"); } else { Odznaki[id]-=koszt1 cod_set_user_xp(id, exp + od1) ColorChat(id, RED, "[Call Of Duty]^x04 Kupiles %d XP'a!", od1); } } case 1: { if(Odznaki[id] < koszt2) { ColorChat(id, RED, "[Call Of Duty]^x04 Nie stac Cie na to!"); } else { Odznaki[id]-=koszt2 cod_set_user_xp(id, exp + od2) ColorChat(id, RED, "[Call Of Duty]^x04 Kupiles %d XP'a!", od2); } } case 2: { if(Odznaki[id] < koszt3) { ColorChat(id, RED, "[Call Of Duty]^x04 Nie stac Cie na to!"); } else { Odznaki[id]-=koszt3 cod_set_user_xp(id, exp + od3) ColorChat(id, RED, "[Call Of Duty]^x04 Kupiles %d XP'a!", od3); } } case 3: { if(Odznaki[id] < koszt4) { ColorChat(id, RED, "[Call Of Duty]^x04 Nie stac Cie na to!"); } else { Odznaki[id]-=koszt4 cod_set_user_xp(id, exp + od4) ColorChat(id, RED, "[Call Of Duty]^x04 Kupiles %d XP'a!", od4); } } case 4: { if(Odznaki[id] < koszt5) { ColorChat(id, RED, "[Call Of Duty]^x04 Nie stac Cie na to!"); } else { Odznaki[id]-=koszt5 cod_set_user_xp(id, exp + od5) ColorChat(id, RED, "[Call Of Duty]^x04 Kupiles %d XP'a!", od5); } } } } public Load_Odznaki(id) { new vaultkey[64],vaultdata[512]; new authid[64]; get_user_name(id,authid,63); replace_all(authid, 63, " ", "+"); format(vaultkey,63,"%s",authid); nvault_get(zapis,vaultkey,vaultdata,511); replace_all(vaultdata,256,"#"," "); new jeden[100] parse(vaultdata,jeden,99) Odznaki[id] = str_to_num(jeden); } public Save_Odznaki(id) { new vaultkey[64],vaultdata[512]; new authid[64]; get_user_name(id,authid,63); replace_all(authid, 63, " ", "+"); format(vaultkey,63,"%s",authid); format(vaultdata,511,"%d",Odznaki[id]); nvault_set(zapis,vaultkey,vaultdata) } public zabierz(id, level, cid) { if(!(get_user_flags(id) & ADMIN_IMMUNITY)){ return PLUGIN_HANDLED; } new arg[32], arg2[32]; read_argv(1,arg,31); read_argv(2, arg2, 31); new ile, player; ile = str_to_num(arg2); player = cmd_target(id, arg, 6); if(!player) return PLUGIN_HANDLED; Odznaki[id]-=ile new name_name[32], adminname[32]; get_user_name(player, name_name, 31); get_user_name(id, adminname, 31); ColorChat(id, RED, "[Call Of Duty]^x04 Admin: %s zabral graczowi: %s [%d Odznak]", adminname, name_name, ile); return PLUGIN_HANDLED; } public daj(id, level, cid) { if(!(get_user_flags(id) & ADMIN_IMMUNITY)){ return PLUGIN_HANDLED; } new arg[32], arg2[32]; read_argv(1,arg,31); read_argv(2, arg2, 31); new ile, player; ile = str_to_num(arg2); player = cmd_target(id, arg, 6); if(!player) return PLUGIN_HANDLED; Odznaki[id]+=ile new name_name[32], adminname[32]; get_user_name(player, name_name, 31); get_user_name(id, adminname, 31); ColorChat(id, RED, "[Call Of Duty]^x04 Admin: %s podarowal graczowi: %s [%d Odznak]", adminname, name_name, ile); return PLUGIN_HANDLED; } public Sklep(id) { new menu = menu_create("Sklep:", "Sklep_Handle"); menu_additem(menu, "Ketonal \r[Leczy 20 HP] \yKoszt: \r2 Odznaki"); menu_additem(menu, "Flegamina \r[Leczy 50 HP] \yKoszt: \r4 Odznaki"); menu_additem(menu, "Aspirina \r[Leczy 100 HP] \yKoszt: \r6 Odznak"); menu_additem(menu, "RedBull \r[Wysoki Skok + Szybkie Chodzenie] \yKoszt: \r10 Odznak"); menu_additem(menu, "Lotto \r[WKROTCE] \yKoszt: \rWKROTCE"); menu_additem(menu, "Exp \r[Menu Exp'a] \yKoszt: \rRozne ilosci Exp'a!"); menu_display(id, menu); } public Sklep_Handle(id, menu, item) { client_cmd(id, "spk QTM_CodMod/select"); if(item == MENU_EXIT) { menu_destroy(menu); return PLUGIN_CONTINUE; } menu_display(id, menu); new hp = get_user_health(id); switch(item) { case 0: { if(Odznaki[id] < 2) { ColorChat(id, RED, "[Call Of Duty]^x04 Nie masz wystarczajacej ilosci odznak.") return PLUGIN_CONTINUE; } Odznaki[id]-=2 fm_set_user_health(id, hp + 20); ColorChat(id, RED, "[Call Of Duty]^x04 Kupiles^x03 Ketonal"); } case 1: { if(Odznaki[id] < 4) { ColorChat(id, RED, "[Call Of Duty]^x04 Nie masz wystarczajacej ilosci odznak.") return PLUGIN_CONTINUE; } Odznaki[id]-=4 fm_set_user_health(id, hp + 50); ColorChat(id, RED, "[Call Of Duty]^x04 Kupiles^x03 Flegamine"); } case 2: { if(Odznaki[id] < 6) { ColorChat(id, RED, "[Call Of Duty]^x04 Nie masz wystarczajacej ilosci odznak.") return PLUGIN_CONTINUE; } Odznaki[id]-=6 fm_set_user_health(id, hp + 100); ColorChat(id, RED, "[Call Of Duty]^x04 Kupiles^x03 Aspirine"); } case 3: { if(Odznaki[id] < 10) { ColorChat(id, RED, "[Call Of Duty]^x04 Nie masz wystarczajacej ilosci odznak.") return PLUGIN_CONTINUE; } Odznaki[id]-=10 set_user_gravity(id,get_user_gravity(id) - 0.3); set_user_maxspeed(id,get_user_maxspeed(id) + 10.0); ColorChat(id, RED, "[Call Of Duty]^x04 Kupiles^x03 RedBulla"); } case 4: { ColorChat(id, RED, "[Call Of Duty]^x04 Prace nad Lotto trwaja!"); } case 5: { kup(id) } } return PLUGIN_HANDLED; } /* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE *{\\ rtf1\\ ansi\\ ansicpg1250\\ deff0\\ deflang1045{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ f0\\ fs16 \n\\ par } */