- #include <amxmisc> 
- #include <cstrike> 
- #include <nvault> 
- #include <colorchat> 
- #include <fakemeta_util> 
- #include <hamsandwich> 
-   
-   
- #define VIPTAG			"[Vip]" 
- #define DEADVIPTAG		"[Vip]" 
-   
- new Vip[33], g_max_clients, VipVault; 
- new VipCvar, VipList; 
-   
- public plugin_init() { 
- 	register_plugin("Jailbreak VIP", "1.0", "lolz123") 
-   
- 	VipCvar = register_cvar( "jb_vip", "1" ) 
- 	VipList = register_cvar( "jb_vip_list", "1" ) 
-   
- 	register_clcmd("jb_set_user_vip", "SetVip") 
- 	register_clcmd("jb_remove_user_vip", "RemoveVip") 
-   
- 	register_clcmd("say /vip", "print_viplist") 
- 	register_clcmd("say !vip", "print_viplist") 
-   
- 	register_clcmd("say", "HandleSay") 
-   
- 	RegisterHam(Ham_Spawn, "player", "HamPlayerSpawn", 1)  
-   
- 	g_max_clients = get_maxplayers(); 
- } 
-   
- public plugin_cfg() 
- { 
- 	VipVault = nvault_open( "Vip" ); 
-   
- 	if ( VipVault == INVALID_HANDLE ) 
- 		set_fail_state( "Error opening Vip Vault" ); 
- } 
-   
-   
- public plugin_end() 
- { 
- 	nvault_close(VipVault); 
- } 
-   
- public plugin_natives() 
- { 
- 	register_library("Vip"); 
- 	register_native("is_user_vip", "_user_vip"); 
- } 
-   
- public _user_vip(plugin, params) 
- { 
- 	return IsVip(get_param(1)); 
- }  
-   
- public client_putinserver(id) 
- { 
- 	LoadVip(id); 
- } 
-   
- public HamPlayerSpawn(id) 
- { 
- 	if(!get_pcvar_num(VipCvar)) 
- 		return PLUGIN_HANDLED; 
-   
- 	if(cs_get_user_team(id) == CS_TEAM_T && IsVip(id)) 
- 	{ 
- 		cs_set_user_armor(id, 100, CS_ARMOR_VESTHELM); 
- 		fm_give_item(id, "weapon_flashbang") 
- 		fm_give_item(id, "weapon_flashbang") 
- 		fm_give_item(id, "weapon_smokegrenade") 
- 		fm_set_user_health(id, 120) 
- 		fm_set_user_armor(id, 50) 
- 	} 
- 	return PLUGIN_HANDLED; 
- } 
-   
- public SetVip(id) 
- { 
- 	if(!get_pcvar_num(VipCvar)) 
- 		return PLUGIN_HANDLED; 
-   
- 	if(!(get_user_flags(id) & ADMIN_CVAR)) 
- 	{ 
- 		client_print(id, print_console, "Nincs hozzaferesed ehez a parancshoz!"); 
- 		return PLUGIN_HANDLED; 
- 	} 
-   
- 	new arg[32], name[32]; 
- 	read_argv (1, arg, 31); 
-   
- 	new player = cmd_target(id,arg,3); 
-   
- 	get_user_name(player, name, 31); 
-   
- 	if(!player) 
- 	{ 
- 		client_print(id, print_console, "Nincs ilyen nevu jatekos!"); 
- 		return PLUGIN_HANDLED; 
- 	} 
- 	if(IsVip(player)) 
- 	{ 
- 		client_print(id, print_console, "%s VIP jatekos!", name); 
- 		return PLUGIN_HANDLED; 
- 	} 
- 	set_player_vip(player) 
-   
- 	return PLUGIN_HANDLED; 
- } 
-   
- public RemoveVip(id) 
- { 
- 	if(!get_pcvar_num(VipCvar)) 
- 		return PLUGIN_HANDLED; 
-   
- 	if(!(get_user_flags(id) & ADMIN_CVAR)) 
- 	{ 
- 		client_print(id, print_console, "Nincs hozzaferesed ehez a parancshoz!"); 
- 		return PLUGIN_HANDLED; 
- 	} 
-   
- 	new arg[32], name[32]; 
- 	read_argv (1, arg, 31); 
-   
- 	new player = cmd_target(id,arg,3); 
-   
- 	get_user_name(player, name, 31); 
-   
- 	if(!player) 
- 	{ 
- 		client_print(id, print_console, "Nincs ilyen nevu jatekos!"); 
- 		return PLUGIN_HANDLED; 
- 	} 
- 	if(!IsVip(player)) 
- 	{ 
- 		client_print(id, print_console, "%s Mar nem VIP jatekos!", name); 
- 		return PLUGIN_HANDLED; 
- 	} 
- 	remove_player_vip(player) 
-   
- 	return PLUGIN_HANDLED; 
- } 
-   
- set_player_vip(player) 
- { 
- 	if(is_user_connected(player) && Vip[player] == 0) 
- 	{ 
- 		Vip[player] = 1; 
-   
- 		new name[32]; 
- 		get_user_name(player, name, 31); 
-   
- 		client_print(player, print_center, "VIP jatekos lettel!!"); 
- 		client_print(0, print_chat, "%s VIP jatekos lett!", name); 
-   
- 		SaveVip(player); 
- 	} 
- } 
-   
- remove_player_vip(player) 
- { 
- 	if(is_user_connected(player) && Vip[player] == 1) 
- 	{ 
- 		Vip[player] = 0; 
-   
- 		new name[32]; 
- 		get_user_name(player, name, 31); 
-   
- 		client_print(player, print_center, "Mar nem vagy VIP jatekos!"); 
- 		client_print(0, print_chat, "%s Mar nem VIP jatekos!", name); 
-   
- 		SaveVip(player); 
- 	} 
- } 
-   
- public SaveVip(id) 
- { 
- 	new authid[32];  
- 	get_user_authid(id,authid,31);  
-   
- 	new vaultkey[64], vaultdata[64];  
-   
- 	format(vaultkey,63,"Vip-%s",authid) 
- 	format(vaultdata,63,"%d", Vip[id]);  
-   
- 	nvault_set( VipVault , vaultkey , vaultdata ); 
- }  
-   
- public LoadVip(id) 
- { 
- 	new authid[32], vaultkey[64]; 
- 	get_user_authid(id,authid,31);  
-   
- 	formatex( vaultkey , charsmax( vaultkey ) , "Vip-%s" , authid); 
-   
- 	Vip[id] = nvault_get( VipVault, vaultkey ); 
- }   
-   
- public HandleSay(id) 
- { 
- 	if(!get_pcvar_num(VipCvar)) 
- 		return PLUGIN_CONTINUE; 
-   
- 	new message[192], VipName[32], none[2][32], chat[192]; 
-   
- 	read_args (message, 191) 
- 	remove_quotes (message) 
-   
- 	formatex(none[0], 31, ""), formatex(none[1], 31, " ") 
-   
- 	if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, "")) 
- 		return PLUGIN_HANDLED; 
-   
- 	if(IsVip(id) && !equali(message, none[0]) && !equali(message, none[1]) && cs_get_user_team(id) != CS_TEAM_SPECTATOR) 
- 	{ 
- 		get_user_name(id, VipName, 31); 
-   
- 		if(is_user_alive(id)) 
- 			formatex(chat, 191, "^4%s^3 %s^1 :  %s", VIPTAG, VipName, message) 
- 		else 
- 			formatex(chat, 191, "^4%s^3 %s^1 :  %s", DEADVIPTAG, VipName, message) 
-   
- 		switch(cs_get_user_team(id)) 
- 		{ 
- 			case 1: ColorChat(0, RED, chat) 
- 			case 2: ColorChat(0, BLUE, chat) 
- 		} 
- 		return PLUGIN_HANDLED; 
- 	} 
- 	return PLUGIN_CONTINUE; 
- } 
-   
- public print_viplist(user)  
- { 
- 	if(!get_pcvar_num(VipCvar) || !get_pcvar_num(VipList)) 
- 		return PLUGIN_HANDLED; 
-   
- 	new vipnames[33][32] 
- 	new message[256] 
- 	new id, count, x, len 
-   
- 	for(id = 1 ; id <= g_max_clients ; id++) 
- 	{ 
- 		if(is_user_connected(id)) 
- 		{ 
- 			if(IsVip(id)) 
- 			{ 
- 				get_user_name(id, vipnames[count++], 31) 
- 			} 
- 		} 
- 	} 
-   
- 	len = format(message, 255, "^x04 Online VIP jatekosok:^x03 ") 
-   
- 	if(count > 0) 
- 	{ 
- 		len = format(message, 255, "^x04 Online VIP jatekosok:") 
- 		for(x = 0 ; x < count ; x++) 
- 		{ 
- 			len += format(message[len], 255-len, "^x03 %s%s ", vipnames[x], x < (count-1) ? " ,":"") 
- 		} 
- 		ColorChat(user, BLUE, message) 
- 	} 
- 	else 
- 	{ 
- 		len += format(message, 255, "^x04 Nincs Online VIP!") 
- 		ColorChat(user, BLUE, message) 
- 	} 
- 	return PLUGIN_HANDLED; 
- } 
-   
- bool:IsVip(player) 
- { 
- 	if(Vip[player] == 1) 
- 	{ 
- 		return true; 
- 	} 
- 	return false; 
- }