- #include <amxmodx> 
- #include <fakemeta> 
- #include <nvault> 
- #include <cstrike> 
- #include <fun> 
- #include <hamsandwich> 
-   
- #define PLUGIN "Unlocker" 
- #define VERSION "1.0" 
- #define AUTHOR "DeRoiD" 
-   
- new fegyver_ak47[33],fegyver_m4a1[33],fegyver_famas[33],fegyver_tmp[33],fegyver_awp[33],pont[33] 
- new fejloves, oles 
- new csapat_menu, kijelzo, spawn_elohoz 
- new ak47_ar,m4a1_ar, famas_ar, tmp_ar, awp_ar 
- new szerver_prefix[] = "[DeRoiD's Unlocker]" 
- new unlocker_vault, name[33][32] 
-   
- public plugin_init() { 
- 	register_plugin(PLUGIN, VERSION, AUTHOR) 
- 	register_clcmd("say /unlocker","unlockmenu") 
- 	register_clcmd("say_team /unlocker","unlockmenu") 
- 	register_event("DeathMsg","halal","a") 
-   
- 	RegisterHam(Ham_Spawn, "player", "ujraeledes", 0) 
-   
- 	unlocker_vault = nvault_open("UnlockerV1") 
-   
- 	fejloves = register_cvar("oles_fejlovessel","3") 
- 	oles = register_cvar("oles_sima","2") 
-   
- 	csapat_menu = register_cvar("csapat_menu","0") //Akiknek megjelenik a menu!0=Mindenki/1=CT/2=TE 
- 	kijelzo = register_cvar("kijelzo","1") //Ahol mutatja a pontokat !0=Menuben/1=HUD 
- 	spawn_elohoz = register_cvar("elohoz","1") // Ujraeledesnel mutassa a menut? 1=Igen / 0=Nem 
-   
- 	tmp_ar = register_cvar("tmp_ara","0") 
- 	famas_ar = register_cvar("famas_ara","47") 
- 	ak47_ar = register_cvar("ak47_ara","89") 
- 	m4a1_ar = register_cvar("m4a1_ara","147")  
- 	awp_ar = register_cvar("awp_ara","302") 
-   
- 	if(get_pcvar_num(kijelzo) == 1){ 
- 		set_task(2.0, "kijelzo_hud", 0, _, _, "b") 
- 	} 
- } 
- public ujraeledes(id){ 
- 	if(!is_user_alive(id)){ 
- 		if(get_pcvar_num(spawn_elohoz) == 1){ 
- 			unlockmenu(id) 
- 		} 
- 		else if(get_pcvar_num(spawn_elohoz) == 0){ 
- 			client_print(id,print_chat,"") 
- 		} 
- 	} 
- } 
- public halal() { 
- 	new killer = read_data(1) 
- 	new victim = read_data(2) 
- 	new headshot = read_data(3) 
- 	if(killer == victim) { 
- 		return PLUGIN_HANDLED 
- 	} 
- 	if(headshot) { 
- 		pont[killer] += get_pcvar_num(fejloves) 
- 		client_print(killer,print_chat,"%s +%d Pont (Headshot)",szerver_prefix,get_pcvar_num(fejloves)) 
- 	} 
- 	else 
- 	{ 
- 		pont[killer] += get_pcvar_num(oles) 
- 		client_print(killer,print_chat,"%s +%d Pont",szerver_prefix,get_pcvar_num(oles)) 
- 	} 
- 	return PLUGIN_HANDLED 
- } 
- public unlockmenu(id) { 
- 	new menu_cim[121],egy[121],ketto[121],harom[121],negy[121],ot[121] 
- 	if(get_pcvar_num(kijelzo) == 0){ 
- 		format(menu_cim,charsmax(menu_cim),"\w%s \rUnlocker^n\yPont : \r%i",szerver_prefix,pont[id]) 
- 	} 
- 	else 
- 	if(get_pcvar_num(kijelzo) == 1){ 
- 		format(menu_cim,charsmax(menu_cim),"\w%s \rUnlocker^n",szerver_prefix) 
- 	} 
- 	format(egy,charsmax(egy),"\dTMP - Locked \y[\w%i \rPont\y]",get_pcvar_num(tmp_ar)) 
- 	format(ketto,charsmax(ketto),"\dFAMAS - Locked \y[\w%i \rPont\y]",get_pcvar_num(famas_ar)) 
- 	format(harom,charsmax(harom),"\dAK47 - Locked \y[\w%i \rPont\y]",get_pcvar_num(ak47_ar)) 
- 	format(negy,charsmax(negy),"\dM4A1 - Locked \y[\w%i \rPont\y]",get_pcvar_num(m4a1_ar)) 
- 	format(ot,charsmax(ot),"\dAWP - Locked \y[\w%i \rPont\y]",get_pcvar_num(awp_ar)) 
-   
- 	new menu = menu_create(menu_cim,"unlockmenu_handler") 
-   
- 	if(fegyver_tmp[id] == 1) { 
- 		menu_additem(menu,"\rTMP \w- \yUnlocked","1",0) 
- 	} 
- 	else if(fegyver_tmp[id] == 0) { 
- 		menu_additem(menu,egy,"6",0) 
- 	} 
- 	if(fegyver_famas[id] == 1) { 
- 		menu_additem(menu,"\rFAMAS \w- \yUnlocked","2",0) 
- 	} 
- 	else if(fegyver_famas[id] == 0) { 
- 		menu_additem(menu,ketto,"7",0) 
- 	} 
- 	if(fegyver_ak47[id] == 1) { 
- 		menu_additem(menu,"\rAK47 \w- \yUnlocked","3",0) 
- 	} 
- 	else if(fegyver_ak47[id] == 0) { 
- 		menu_additem(menu,harom,"8",0) 
- 	} 
- 	if(fegyver_m4a1[id] == 1) { 
- 		menu_additem(menu,"\rM4A1 \w- \yUnlocked","4",0) 
- 	} 
- 	else if(fegyver_m4a1[id] == 0) { 
- 		menu_additem(menu,negy,"9",0) 
- 	} 
- 	if(fegyver_awp[id] == 1) { 
- 		menu_additem(menu,"\rAWP \w- \yUnlocked","5",0) 
- 	} 
- 	else if(fegyver_awp[id] == 0) { 
- 		menu_additem(menu,ot,"10",0) 
- 	} 
- 	menu_setprop(menu, MPROP_EXIT, MEXIT_ALL); 
-   
- 	if(get_pcvar_num(csapat_menu) == 0){ 
- 		menu_display(id, menu, 0); 
- 	} 
- 	else if(cs_get_user_team(id) == CS_TEAM_CT && get_pcvar_num(csapat_menu) == 1){ 
- 		menu_display(id, menu, 0); 
- 	} 
- 	else if(cs_get_user_team(id) == CS_TEAM_T && get_pcvar_num(csapat_menu) == 2){ 
- 		menu_display(id, menu, 0); 
- 	} 
- } 
- public unlockmenu_handler(id,menu,item) { 
- 	if(item == MENU_EXIT) { 
- 		menu_destroy(menu) 
- 		return PLUGIN_HANDLED 
- 	} 
- 	new data[9], szName[64], szam1[33], szam2[33], szam3[33], szam4[33], szam5[33] 
- 	szam1[id] = get_pcvar_num(tmp_ar) - pont[id] 
- 	szam2[id] = get_pcvar_num(famas_ar) - pont[id] 
- 	szam3[id] = get_pcvar_num(ak47_ar) - pont[id] 
- 	szam4[id] = get_pcvar_num(m4a1_ar) - pont[id] 
- 	szam5[id] = get_pcvar_num(awp_ar) - pont[id] 
- 	new access, callback 
- 	menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback) 
- 	new key = str_to_num(data) 
- 	switch(key) 
- 	{ 
- 		// Ha mar unlockolva vannak a fegyverek 
- 		case 1:{ 
- 			strip_user_weapons(id) 
- 			give_item(id, "weapon_tmp") 
- 			cs_set_user_bpammo(id, CSW_TMP, 120) 
- 			client_print(id,print_chat,"%s Sikeres valasztas!",szerver_prefix) 
- 			masodlagos(id) 
- 		} 
- 		case 2:{ 
- 			strip_user_weapons(id) 
- 			give_item(id, "weapon_famas") 
- 			cs_set_user_bpammo(id, CSW_FAMAS, 90) 
- 			client_print(id,print_chat,"%s Sikeres valasztas!",szerver_prefix) 
- 			masodlagos(id) 
- 		} 
- 		case 3:{ 
- 			strip_user_weapons(id) 
- 			give_item(id, "weapon_ak47") 
- 			cs_set_user_bpammo(id, CSW_AK47, 90) 
- 			client_print(id,print_chat,"%s Sikeres valasztas!",szerver_prefix) 
- 			masodlagos(id) 
- 		} 
- 		case 4:{ 
- 			strip_user_weapons(id) 
- 			give_item(id, "weapon_m4a1") 
- 			cs_set_user_bpammo(id, CSW_M4A1, 90) 
- 			client_print(id,print_chat,"%s Sikeres valasztas!",szerver_prefix) 
- 			masodlagos(id) 
- 		} 
- 		case 5:{ 
- 			strip_user_weapons(id) 
- 			give_item(id, "weapon_awp") 
- 			cs_set_user_bpammo(id, CSW_AWP, 30) 
- 			client_print(id,print_chat,"%s Sikeres valasztas!",szerver_prefix) 
- 			masodlagos(id) 
- 		} 
- 		// Ha nincs unlockolva! 
- 		case 6:{ 
- 			if(pont[id] >= get_pcvar_num(tmp_ar)){ 
- 				fegyver_tmp[id] = 1 
- 				pont[id] -= get_pcvar_num(tmp_ar) 
- 				client_print(id,print_chat,"%s Sikeres vasarlas!",szerver_prefix) 
- 				unlockmenu(id) 
- 				client_cmd(id, "spk ^"buttons/lightswitch2^"") 
- 			} 
- 			else 
- 			{ 
- 				client_print(id,print_chat,"%s Nincs eleg pontod, kell meg %d!",szerver_prefix,szam1[id]) 
- 				client_cmd(id, "spk ^"buttons/latchunlocked2^"") 
- 			} 
- 		} 
- 		case 7:{ 
- 			if(pont[id] >= get_pcvar_num(famas_ar)){ 
- 				fegyver_famas[id] = 1 
- 				pont[id] -= get_pcvar_num(famas_ar) 
- 				client_print(id,print_chat,"%s Sikeres vasarlas!",szerver_prefix) 
- 				unlockmenu(id) 
- 				client_cmd(id, "spk ^"buttons/lightswitch2^"") 
- 			} 
- 			else 
- 			{ 
- 				client_print(id,print_chat,"%s Nincs eleg pontod, kell meg %d!",szerver_prefix,szam2[id]) 
- 				client_cmd(id, "spk ^"buttons/latchunlocked2^"") 
- 			} 
- 		} 
- 		case 8:{ 
- 			if(pont[id] >= get_pcvar_num(ak47_ar)){ 
- 				fegyver_ak47[id] = 1 
- 				pont[id] -= get_pcvar_num(ak47_ar) 
- 				client_print(id,print_chat,"%s Sikeres vasarlas!",szerver_prefix) 
- 				unlockmenu(id) 
- 				client_cmd(id, "spk ^"buttons/lightswitch2^"") 
- 			} 
- 			else 
- 			{ 
- 				client_print(id,print_chat,"%s Nincs eleg pontod, kell meg %d!",szerver_prefix,szam3[id]) 
- 				client_cmd(id, "spk ^"buttons/latchunlocked2^"") 
- 			} 
- 		} 
- 		case 9:{ 
- 			if(pont[id] >= get_pcvar_num(m4a1_ar)){ 
- 				fegyver_m4a1[id] = 1 
- 				pont[id] -= get_pcvar_num(m4a1_ar) 
- 				client_print(id,print_chat,"%s Sikeres vasarlas!",szerver_prefix) 
- 				unlockmenu(id) 
- 				client_cmd(id, "spk ^"buttons/lightswitch2^"") 
- 			} 
- 			else 
- 			{ 
- 				client_print(id,print_chat,"%s Nincs eleg pontod, kell meg %d!",szerver_prefix,szam4[id]) 
- 				client_cmd(id, "spk ^"buttons/latchunlocked2^"") 
- 			} 
- 		} 
- 		case 10:{ 
- 			if(pont[id] >= get_pcvar_num(awp_ar)){ 
- 				fegyver_awp[id] = 1 
- 				pont[id] -= get_pcvar_num(awp_ar) 
- 				client_print(id,print_chat,"%s Sikeres vasarlas!",szerver_prefix) 
- 				unlockmenu(id) 
- 				client_cmd(id, "spk ^"buttons/lightswitch2^"") 
- 			} 
- 			else 
- 			{ 
- 				client_print(id,print_chat,"%s Nincs eleg pontod, kell meg %d!",szerver_prefix,szam5[id]) 
- 				client_cmd(id, "spk ^"buttons/latchunlocked2^"") 
- 			} 
- 		} 
- 	} 
- 	menu_destroy(menu) 
- 	return PLUGIN_HANDLED 
- } 
- public masodlagos(id) { 
- 	give_item(id, "weapon_knife") 
- 	give_item(id, "weapon_deagle") 
- 	cs_set_user_bpammo(id, CSW_DEAGLE, 35) 
- 	give_item(id, "weapon_hegrenade") 
- 	give_item(id, "weapon_flashbang") 
-   
- } 
- public kijelzo_hud(){ 
- 	new players[32], num, id 
- 	get_players(players, num) 
-   
- 	for(new i; i < num; i++) 
- 	{ 
- 		id = players[id] 
- 		set_hudmessage(255, 255, 255, -1.0, 0.0, 0, 6.0, 12.0) 
- 		show_hudmessage(id, "%s Pontjaid : %d",szerver_prefix, pont[id]) 
- 	} 
- } 
- public client_disconnect(id) 
- { 
- 	mentes(id) 
- } 
-   
- public client_connect(id) 
- { 
- 	get_user_name(id, name[id], 31) 
- 	betoltes(id) 
- } 
- public mentes(id)  
- { 
- 	new vaultkey[64],vaultdata[256] 
- 	format(vaultkey,63,"%s-PONTOK", name[id]) 
- 	format(vaultdata,255,"%i#%i#%i#%i#%i#%i",pont[id], fegyver_tmp[id],  
- 	fegyver_famas[id], fegyver_ak47[id], fegyver_m4a1[id], fegyver_awp[id]) 
- 	nvault_set(unlocker_vault,vaultkey,vaultdata) 
- 	return PLUGIN_CONTINUE 
- } 
- public betoltes(id)  
- {  
- 	new vaultkey[64],vaultdata[256] 
- 	format(vaultkey,63,"%s-PONTOK", name[id]) 
- 	format(vaultdata,255,"%i#%i#%i#%i#%i#%i",pont[id], fegyver_tmp[id],  
- 	fegyver_famas[id], fegyver_ak47[id], fegyver_m4a1[id], fegyver_awp[id]) 
- 	nvault_get(unlocker_vault,vaultkey,vaultdata,255) 
- 	replace_all(vaultdata, 255, "#", " ")  
- 	new a1[32], a2[32], a3[32], a4[32], a5[32], a6[32] 
- 	parse(vaultdata, a1, 31, a2, 31, a3, 31, a4, 31, a5, 31, a6, 31)  
- 	pont[id] = str_to_num(a1) 
- 	fegyver_tmp[id] = str_to_num(a2) 
- 	fegyver_famas[id] = str_to_num(a3) 
- 	fegyver_ak47[id] = str_to_num(a4) 
- 	fegyver_m4a1[id] = str_to_num(a5) 
- 	fegyver_awp[id] = str_to_num(a6) 
- 	return PLUGIN_CONTINUE; 
- } 
-