modificare VIP

Categoria cu cereri de pluginuri si nu numai.

Moderators: Moderatori ajutatori, Moderatori, Echipa eXtreamCS.com

Forum rules
Accesează link-ul pentru a putea vedea regulile forumului

Daca doriti sa vi se modifice un plugin, va rugam postati aici .
Post Reply
User avatar
CaTa.
Fost moderator
Fost moderator
Posts: 420
Joined: 28 Jul 2013, 15:06
Detinator Steam: Nu
Detinator server CS: In curand !
Reputatie: Fost Moderator ajutator
Location: Targu-Mures
Has thanked: 99 times
Been thanked: 19 times
Contact:

13 Sep 2013, 11:27

SALUT

IMI POATE MODIFICA SI MIE CAREVA PLUGINU ASTA
| Afiseaza codul
/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <cstrike>
#include <fun>
#include <hamsandwich>
#include <fakemeta>
#include <engine>
#include <colorchat>

#pragma semicolon 1

const MAX_PLAYERS = 32;

static Author[] = "eNd.";

static Plugin[] = "Furien VIP";

static TAG[] = "[ViP]";

enum _: g_iCvars
{
	cvar_furien_messages,
	cvar_furien_bind,
	cvar_furien_flags,
	cvar_ap_value,
	cvar_hp_value,
	cvar_lifesteal_value,
	cvar_damage_value,
	cvar_money_value,
	cvar_limita

};
new	\	
		g_AllCvars	[ g_iCvars ]			,
		g_iLimita	[ MAX_PLAYERS + 1 ]		,
		g_iWeapon	[ MAX_PLAYERS + 1 ][4]		,
		g_iPowerT	[ MAX_PLAYERS + 1 ][3]		,
		g_iPowerCT	[ MAX_PLAYERS + 1 ][3]		;
		

new	const Ak47Models[][] = { "models/p_golden_ak47.mdl", "models/v_golden_ak47.mdl" };

new	const DeagleModels[][] = { "models/p_golden_deagle.mdl", "models/v_golden_deagle.mdl" };

new	const KatanaModels[][] = { "models/p_katana.mdl", "models/v_katana.mdl" };

new	const KSoundList[][] = { "katana/katana_deploy1.wav", "katana/katana1.wav", "katana/katana2.wav", "katana/katana2.wav",
			     "katana/katana_hwall.wav", "katana/katana_slash1.wav" , "katana/katana_slash1.wav", "katana/katana_stab.wav" };

new	const szPickSound[] = { "items/9mmclip1.wav" };	

public plugin_init() {
	register_plugin(Plugin, "0.2.beta", Author);
	
	register_clcmd("say", "hook_say");
	
	register_clcmd("say_team", "hook_say");

	register_forward(FM_EmitSound, "sound_emit");
	register_forward(FM_AddToFullPack, "Fwd_AddToFullPack", 1);
	register_forward(FM_PlayerPreThink, "Fwd_PlayerPreThink"); 

	register_event("CurWeapon", "CurWeapon", "be", "1=1");
	register_event("NVGToggle", "NVGToggle", "be");
	register_event("ScreenFade", "ScreenFade", "b", "7=255");

   	RegisterHam(Ham_TakeDamage, "player", "PlayerDamage");
	RegisterHam(Ham_Spawn, "player", "Ham_PlayerSpawn", 1);

}
public hook_say(id) {
	static iArg[192];
	
	read_args(iArg, sizeof(iArg) - 1);
	
	remove_quotes(iArg);
	
	if(szFlags(id) & get_pcvar_flags(g_AllCvars[cvar_furien_flags]) )
		if( (containi(iArg, "vipmenu") != -1) || (containi(iArg, "vm") != -1) || (containi(iArg, "furienvip") != -1))
		{		
			replace( iArg , sizeof( iArg ) - 1, "/", "" );	
			set_task( 0.1 , "VipMenu" , id);
		}

	return 0;
	
}
new g_Kamikaze;
public plugin_precache()
{
	g_AllCvars[ cvar_furien_messages ] = register_cvar("furien_messages", "1");
	g_AllCvars[ cvar_furien_bind ] = register_cvar("furien_bind", "1");
	g_AllCvars[ cvar_furien_flags ] = register_cvar("furien_flags", "a");
	g_AllCvars[ cvar_hp_value ] = register_cvar("furien_health", "150");
	g_AllCvars[ cvar_ap_value ] = register_cvar("furien_armor", "150");
	g_AllCvars[ cvar_lifesteal_value ] = register_cvar("furien_stealhp", "10");
	g_AllCvars[ cvar_damage_value ] = register_cvar("furien_damage", "15");
	g_AllCvars[ cvar_money_value ] = register_cvar("furien_money", "16000");
	g_AllCvars[ cvar_limita ] = register_cvar("furien_limita", "1");
	
	static i;
	for(i = 0; i <= charsmax(KSoundList); i++)
		precache_sound(KSoundList);

	for(i = 0; i < sizeof(KatanaModels); i++)
		precache_model(KatanaModels);

	for(i = 0; i < sizeof(Ak47Models); i++)
		precache_model(Ak47Models);

	for(i = 0; i < sizeof(DeagleModels); i++)
		precache_model(DeagleModels);

	precache_sound(szPickSound);
}
public client_putinserver(id)
{
	if(get_pcvar_num(g_AllCvars[cvar_furien_messages]))
		set_task(1.0, "client_putinserver_vip", id);

	if(get_pcvar_num(g_AllCvars[cvar_furien_bind]))
		set_task(1.5, "client_set_binds", id);
	
	return 1;
	
}
public client_disconnect(id)
{
	if(get_pcvar_num(g_AllCvars[cvar_furien_messages]))
		set_task(1.0, "client_disconnect_vip", id);

	return 1;
	
}
public client_set_bind(id)
{
	if(szFlags(id) & get_pcvar_flags(g_AllCvars[cvar_furien_flags]) )
	{
		client_cmd(id, "bind p say /furienvip");
		ColorChat(id, GREEN, "%s^x03 %s^x01 ai fost bindat apasa^x03 p ^x01", TAG, szName(id));
	}
	
	return 1;
}
public client_putinserver_vip(id)
{
	if(szFlags(id) & get_pcvar_flags(g_AllCvars[cvar_furien_flags]) )
		ColorChat(id, GREEN, "%s^x03 %s^x01 a intrat pe^x03 %s ^x01", TAG, szName(id), szHost());
		
	return 1;
}

public client_disconnect_vip(id)
{
	if(szFlags(id) & get_pcvar_flags(g_AllCvars[cvar_furien_flags]) )
		ColorChat(id, GREEN, "%s^x03 %s^x01 a iesit de pe^x03 %s ^x01", TAG, szName(id), szHost());

	return 1;
}

new const oldknife_sounds[][] =
{
	"weapons/knife_deploy1.wav",   
	"weapons/knife_hit1.wav",   
	"weapons/knife_hit2.wav",    
	"weapons/knife_hit3.wav",    
	"weapons/knife_hit4.wav",    
	"weapons/knife_hitwall1.wav",  
	"weapons/knife_slash1.wav",    
	"weapons/knife_slash2.wav",    
	"weapons/knife_stab.wav"    
};
public sound_emit(const id, const channel, const sample[])
{
	if(is_user_connected(id) && is_user_alive(id))
		if(g_iWeapon[id][3])
		{
			for(new i = 0; i < sizeof KSoundList; i++)
			{
				if(equal(sample, oldknife_sounds))
				{
					emit_sound(id, channel, KSoundList, 1.0, ATTN_NORM, 0, PITCH_NORM);
					return FMRES_SUPERCEDE;
				}
			}
		}

	return FMRES_IGNORED;
}
public Fwd_PlayerPreThink(id)  
{ 
	if(g_iPowerT[id][2])
	{
		new button = get_user_button(id); 
					     
		if(button & IN_USE )
			explode_me(id);	
	}

	return FMRES_IGNORED;

}  
public Ham_PlayerSpawn(const id)
{
	if(is_user_alive(id) && is_user_connected(id))
	{
		g_iLimita[id] = 0;		
		g_iWeapon[id][1] = 0;	
		g_iWeapon[id][2] = 0;		
		g_iPowerT[id][1] = 0;
		g_iWeapon[id][3] = 0;		
		g_iPowerT[id][2] = 0;		
		g_iPowerCT[id][1] = 0;
		g_iPowerCT[id][2] = 0;
		cs_set_user_nvg(id,false);
	}
}
public Fwd_AddToFullPack(es_handle, e, ent, host, hostflags, player, pSet)
{
	if(player && is_user_alive(host))
	{
		if(g_iPowerCT[1][host])
		{
			static CsTeams:team; team = cs_get_user_team(ent);
			static CsTeams:teamhost; teamhost = cs_get_user_team(host);
			static color[3];
			
			switch (team)
			{
				case CS_TEAM_CT:
				{
					color[0] = 0;
					color[1] = 0;
					color[2] = 255;
				}
				case CS_TEAM_T:
				{
					color[0] = 255;
					color[1] = 0;
					color[2] = 0;
				}
			}
			
			if(team != teamhost)
			{
				set_es(es_handle, ES_RenderFx, 19);
				set_es(es_handle, ES_RenderColor, color);
				set_es(es_handle, ES_RenderMode, 0);
				set_es(es_handle, ES_RenderAmt, 25);
			}
		}
	}
	
	return FMRES_IGNORED;
}

public NVGToggle(id)
	g_iPowerCT[1][id] = read_data(1);

public ScreenFade(id){
	if(g_iPowerCT[id][2] == 1 && is_user_alive(id))
	{
		message_begin(MSG_ONE_UNRELIABLE, get_user_msgid( "ScreenFade" ), { 0, 0, 0 }, id );
		write_short(0);
		write_short(0);
		write_short(0);
		write_byte(0);
		write_byte(0);
		write_byte(0);
		write_byte(0);
		message_end();
	}
	return 0;
}

public CurWeapon(id)
{
	new szWeapon = get_user_weapon( id );
	if(is_user_alive(id))
	{
		if(szWeapon == CSW_KNIFE && g_iWeapon[id][3])
		{
			set_pev(id, pev_viewmodel2,KatanaModels[1]);
			set_pev(id, pev_weaponmodel2,KatanaModels[0]);
		}
		if(szWeapon == CSW_AK47 && g_iWeapon[id][1])
		{
			set_pev(id, pev_viewmodel2,Ak47Models[1]);
			set_pev(id, pev_weaponmodel2,Ak47Models[0]);
		}
		if(szWeapon == CSW_DEAGLE && g_iWeapon[id][2])
		{
			set_pev(id, pev_viewmodel2, DeagleModels[1]);
			set_pev(id, pev_weaponmodel2,DeagleModels[0]);
		}
	}
}

public PlayerDamage(iVictim, iInflictor, iAttacker, Float:fDamage, iDamageBits )
{
	new szWeapon = get_user_weapon(iAttacker);

	if(!is_user_alive(iAttacker) || is_user_bot(iAttacker))
		return HAM_IGNORED;
   
	if(iInflictor == iAttacker)
	{
		new DVal = get_pcvar_num(g_AllCvars[cvar_damage_value]);
		if(g_iPowerT[iAttacker][1])
		{
			new LsVal = get_pcvar_num(g_AllCvars[cvar_lifesteal_value]);
			set_user_health(iAttacker, get_user_health(iAttacker) + LsVal);
			set_user_health(iVictim, get_user_health(iVictim) - LsVal);
		}
		
		if(szWeapon == CSW_KNIFE && g_iWeapon[iAttacker][3])
			SetHamParamFloat( 4, fDamage + DVal);
		
		if(szWeapon == CSW_AK47 && g_iWeapon[iAttacker][1])
			SetHamParamFloat( 4, fDamage + DVal);
		
		else if(szWeapon == CSW_DEAGLE && g_iWeapon[iAttacker][2])
			SetHamParamFloat( 4, fDamage + DVal);
		

	}
 	return HAM_HANDLED;
}

public VipMenu(id)
{
	if(!is_user_alive(id))
	{
		ColorChat(id, GREEN, "%s^x03 %s^x01 esti mort..", TAG, szName(id));
		return 1;
	}
	if(g_iLimita[id] < get_pcvar_num(g_AllCvars[cvar_limita]))
 	switch(cs_get_user_team(id))
	{
		case CS_TEAM_T:
		{
			new szText[555 char];
	
			formatex(szText, charsmax(szText), "\dFurien VIP^n \r%s", szName(id));
			new szMenu = menu_create(szText, "TSMenu_Submenu");
		
			formatex(szText, charsmax(szText), "\d+ \y[\w%d\y] \rHP",get_pcvar_num(g_AllCvars[cvar_hp_value]));
			menu_additem(szMenu, szText, "1", 0);

			formatex(szText, charsmax(szText), "\d+ \y[\w%d\y] \rAP",get_pcvar_num(g_AllCvars[cvar_ap_value]));
			menu_additem(szMenu, szText, "2", 0);

			formatex(szText, charsmax(szText), "\dNade \yPACK");
			menu_additem(szMenu, szText, "3", 0);

			formatex(szText, charsmax(szText), "\rKATANA!");
			menu_additem(szMenu, szText, "4", 0);

			formatex(szText, charsmax(szText), "\dLife \rSteal \y[\w%d/Hit\y]",get_pcvar_num(g_AllCvars[cvar_lifesteal_value]));
			menu_additem(szMenu, szText, "5", 0);

			formatex(szText, charsmax(szText), "\dKamikaze");
			menu_additem(szMenu, szText, "6", 0);

			menu_setprop(szMenu, MPROP_EXIT , MEXIT_ALL);
			menu_display(id, szMenu, 0);

		}
		case CS_TEAM_CT:
		{			
			new szTexts[555 char];

			formatex(szTexts, charsmax(szTexts), "\dFurien VIP^n \r%s", szName(id));
			new szMenus = menu_create(szTexts, "CTMenu_Submenu");
		
			formatex(szTexts, charsmax(szTexts), "\d+ \y[\w%d\y] \rHP",get_pcvar_num(g_AllCvars[cvar_hp_value]));
			menu_additem(szMenus, szTexts, "1", 0);

			formatex(szTexts, charsmax(szTexts), "\d+ \y[\w%d\y] \rAP",get_pcvar_num(g_AllCvars[cvar_ap_value]));
			menu_additem(szMenus, szTexts, "2", 0);
		
			formatex(szTexts, charsmax(szTexts), "\dAk47+Deagle\r[\yGOLD\r]");
			menu_additem(szMenus, szTexts, "3", 0);

			formatex(szTexts, charsmax(szTexts), "\rThermal \dNightVision");
			menu_additem(szMenus, szTexts, "4", 0);

   			formatex(szTexts, charsmax(szTexts), "\dNo Flash");
			menu_additem(szMenus, szTexts, "5", 0);

			formatex(szTexts, charsmax(szTexts), "\d+ \y[\w%d\y] \r$",get_pcvar_num(g_AllCvars[cvar_money_value]));
			menu_additem(szMenus, szTexts, "6", 0);

			menu_setprop(szMenus, MPROP_EXIT , MEXIT_ALL);
			menu_display(id, szMenus, 0);

		}
	}
	if(g_iLimita[id] == get_pcvar_num(g_AllCvars[cvar_limita]))
	{
		ColorChat(id, GREEN, "%s^x03 %s^x01 ai atins limita maxima(%d).", TAG, szName(id), get_pcvar_num(g_AllCvars[cvar_limita]));
		return 1;
			
	}
	return 1;
}

public CTMenu_Submenu(id, szMenus, item)
{
	if( item == MENU_EXIT || get_user_team(id) == 1)
	{
		menu_destroy(szMenus);
		return 1;
	}
	new data[6], iName[64];
	new access, callback;

	menu_item_getinfo(szMenus, item, access, data,5, iName, 63, callback);

	new key = str_to_num(data);

	switch(key)
	{
		case 1:
		{
			new HpVal = get_pcvar_num(g_AllCvars[cvar_hp_value]);
			g_iLimita[id] ++;
 			set_user_health(id, get_user_health(id) + HpVal);
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 +%d HP ^x01", TAG, szName(id), HpVal);
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
		case 2:
		{
 			new ApVal = get_pcvar_num(g_AllCvars[cvar_ap_value]);
			g_iLimita[id] ++;
 			set_user_armor(id, get_user_armor(id) + ApVal);
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 +%d AP ^x01", TAG, szName(id), ApVal);
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
		case 3:
		{
			g_iLimita[id] ++;
			//strip_user_weapons(id);
			g_iWeapon[id][1] = 1;
			g_iWeapon[id][2] = 1;
			give_item(id, "weapon_knife");
			give_item(id, "weapon_ak47");
			give_item(id, "weapon_deagle");
			cs_set_user_bpammo(id, CSW_AK47, 120);
			cs_set_user_bpammo(id, CSW_DEAGLE, 70);
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 golden ak47+deagle ^x01", TAG, szName(id));
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
		case 4:
		{
			g_iLimita[id] ++;
			g_iPowerCT[id][1] = 1;
			cs_set_user_nvg(id,true);
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 nightvision thermal ^x01", TAG, szName(id));
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
		case 5:
		{
			g_iLimita[id] ++;
			g_iPowerCT[id][2] = 1;
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 anti-flash mask ^x01", TAG, szName(id));
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
		case 6:
		{
 			new MoneyVal = get_pcvar_num(g_AllCvars[cvar_money_value]);
			g_iLimita[id] ++;
 			cs_set_user_money(id , min((cs_get_user_money(id) + MoneyVal), 16000));
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 +%d money ^x01", TAG, szName(id), MoneyVal);
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
	}
	return 1;
}

public TSMenu_Submenu(id, szMenu, item)
{
	if( item == MENU_EXIT || get_user_team(id) != 1)
	{
		menu_destroy(szMenu);
		return 1;
	}
	new data[6], iName[64];

	new access, callback;

	menu_item_getinfo(szMenu, item, access, data,5, iName, 63, callback);

	new key = str_to_num(data);

	switch(key)
	{
		case 1:
		{
			new HpVal = get_pcvar_num(g_AllCvars[cvar_hp_value]);
			g_iLimita[id] ++;
 			set_user_health(id, get_user_health(id) + HpVal);
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 +%d HP ^x01", TAG, szName(id), HpVal);
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
		case 2:
		{
 			new ApVal = get_pcvar_num(g_AllCvars[cvar_ap_value]);
			g_iLimita[id] ++;
 			set_user_armor(id, get_user_armor(id) + ApVal);
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 +%d AP ^x01", TAG, szName(id), ApVal);
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
		case 3:
		{
			if(pev(id, pev_weapons) & (1<<CSW_HEGRENADE) || pev(id, pev_weapons) & (1<<CSW_FLASHBANG) || pev(id, pev_weapons) & (1<<CSW_SMOKEGRENADE))
			{
				ColorChat(id, GREEN, "%s^x03 %s^x01 scapa intai de toate ^x03  grenade^x01", TAG, szName(id));
				return 1;
		
			}
			else
			{
				g_iLimita[id] ++;
				give_item(id, "weapon_hegrenade");
				give_item(id, "weapon_flashbang");
				give_item(id, "weapon_smokegrenade");
				ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 nade pack ^x01", TAG, szName(id));
				emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
			}
		}
		case 4:
		{
			g_iLimita[id] ++;
			//strip_user_weapons(id);
			g_iWeapon[id][3] = 1;
			give_item(id, "weapon_knife");
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 katana ^x01", TAG, szName(id));
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
		case 5:
		{
			g_iLimita[id] ++;
			g_iPowerT[id][1] = 1;
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 life steal ^x01", TAG, szName(id));
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
		case 6:
		{
			g_iLimita[id] ++;
			g_iPowerT[id][2] = 1;
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales kamikaze apasa pe ^x03 e ^x01", TAG, szName(id));
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}		
	}
	return 1;
}

public explode_me(id) {
	new Float:explosion[3];
	pev(id, pev_origin, explosion);

	user_kill(id);   
	g_iPowerT[id][2] = 0;  

	// create explosion
	message_begin(MSG_BROADCAST, SVC_TEMPENTITY);
	write_byte(TE_EXPLOSION);
	write_coord(floatround(explosion[0]));
	write_coord(floatround(explosion[1]));
	write_coord(floatround(explosion[2]));
	write_short(g_Kamikaze);
	write_byte(30);
	write_byte(30);
	write_byte(0);
	message_end();
	emit_sound(0, CHAN_ITEM, "weapons/explode3.wav", 1.0, ATTN_NORM, 0, PITCH_NORM);
	fm_radius_damage(id, explosion, 1000.0, 400.0, "grenade");
}

stock fm_radius_damage(id, Float:orig[3], Float:dmg , Float:rad, wpnName[]="") {
	new szClassname[33], Float:Health;
	static Ent;
	Ent = -1;
	while((Ent = engfunc(EngFunc_FindEntityInSphere, Ent, orig, rad))) {
		pev(Ent,pev_classname,szClassname,32);
		if(equali(szClassname, "player") 
		&& is_user_connected(Ent) 
		&& is_user_alive(Ent) )
		{
			pev(Ent, pev_health, Health);
			Health -= dmg;
			
			new szName[32], szName1[32];
			get_user_name(Ent, szName, charsmax(szName));
			get_user_name(id, szName1, charsmax(szName1));
			
			if(Health <= 0.0) 
				createKill(Ent, id, wpnName);
			else set_pev(Ent, pev_health, Health);
		}
	}             
}

stock szFlags(id)
{
	new sz_Flags = get_user_flags(id);

	return sz_Flags;
}
stock szHost()
{
	new sz_Host[64];
	
	get_cvar_string("hostname", sz_Host ,charsmax(sz_Host));
	
	return sz_Host;
}
stock szName(id)
{
	new sz_Name[33];
	
	get_user_name(id, sz_Name, charsmax(sz_Name));
	
	return sz_Name;
}
stock createKill(id, attacker, weaponDescription[]) {
	new szFrags, szFrags2;
	
	if(id != attacker) {
		szFrags = get_user_frags(attacker);
		set_user_frags(attacker, szFrags + 1);
		logKill(attacker, id, weaponDescription);
		   
		//Kill the victim and block the messages
		set_msg_block(get_user_msgid("DeathMsg"),BLOCK_ONCE);
		set_msg_block(get_user_msgid("ScoreInfo"),BLOCK_ONCE);
		user_kill(id);
		  
		//user_kill removes a frag, this gives it back
		szFrags2 = get_user_frags(id);
		set_user_frags(id, szFrags2 + 1);
		  
		//Replaced HUD death message
		message_begin(MSG_ALL, get_user_msgid("DeathMsg"),{0,0,0},0);
		write_byte(attacker);
		write_byte(id);
		write_byte(0);
		write_string(weaponDescription);
		message_end();
		  
		//Update killers scorboard with new info
		message_begin(MSG_ALL, get_user_msgid("ScoreInfo"));
		write_byte(attacker);
		write_short(szFrags);
		write_short(get_user_deaths(attacker));
		write_short(0);
		write_short(get_user_team(attacker));
		message_end();
		  
		//Update victims scoreboard with correct info
		message_begin(MSG_ALL, get_user_msgid("ScoreInfo"));
		write_byte(id);
		write_short(szFrags2);
		write_short(get_user_deaths(id));
		write_short(0);
		write_short(get_user_team(id));
		message_end();
		
		new szName[32], szName1[32];
		get_user_name(id, szName, charsmax(szName));
		get_user_name(attacker, szName1, charsmax(szName1));
	}
}

// stock for log kill
stock logKill(id, victim, weaponDescription[] ) {
	new namea[32],namev[32],authida[35],authidv[35],teama[16],teamv[16];
   
	//Info On Attacker
	get_user_name(id,namea,charsmax(namea));
	get_user_team(id,teama,15);
	get_user_authid(id,authida,34);
   
	//Info On Victim
	get_user_name(victim,namev,charsmax(namev));
	get_user_team(victim,teamv,15);
	get_user_authid(victim,authidv,34);
   
	//Log This Kill
	if(id != victim)
		log_message("^"%s<%d><%s><%s>^" killed ^"%s<%d><%s><%s>^" with ^"%s^"",
		namea,get_user_userid(id),authida,teama,namev,get_user_userid(victim),authidv,teamv, weaponDescription );
	else
		log_message("^"%s<%d><%s><%s>^" committed suicide with ^"%s^"",
		namea,get_user_userid(id),authida,teama, weaponDescription );
}
ASTFEL"


1. Sa scoateti cvarul ala cu acces vip(de tot) si sa fie doar aia cu VIP_ACCES ADMIN_LEVEL_H
2. Sa adaugati ca la comanda /vips sa apara vipi online
3 Si sa scoateti toate alea cu p_model.mdl ca nu am nevoie de ele

MERSII
CLICK ! | Afiseaza codul
Ma gasesti pe Messenger la id :[/b] [email protected]
Follow me on Instagram
Fa-ti cunoscut serverul de Counter-Strike pe facebook ! 
Fa-ti reclama gratis aici Click
My Plugin Furien Guns
RoyalServer 2
User avatar
YONTU
Scripter eXtreamCS
Scripter eXtreamCS
Posts: 2466
Joined: 10 May 2013, 14:25
Detinator Steam: Nu
CS Status: Everyone is looking at ur shoes
Reputatie: Moderator ajutator
Fost scripter eXtreamCS
Location: Gura Humorului
Has thanked: 256 times
Been thanked: 288 times
Contact:

13 Sep 2013, 11:52

| Afiseaza codul
#include <amxmodx>
#include <cstrike>
#include <fun>
#include <hamsandwich>
#include <fakemeta>
#include <engine>
#include <CC_ColorChat>

//#pragma semicolon 1

const MAX_PLAYERS = 32;

static Author[] = "eNd.";

static Plugin[] = "Furien VIP";

static TAG[] = "[ViP]";

static const COLORG[] = "^x04";
static const COLORD[] = "^x01";
static const COLORT[] = "^x03";

new maxplayers, gmsgSayText;

#define VIP_ACCESS ADMIN_LEVEL_H

enum _: g_iCvars
{
cvar_furien_messages,
cvar_furien_bind,
cvar_furien_flags,
cvar_ap_value,
cvar_hp_value,
cvar_lifesteal_value,
cvar_damage_value,
cvar_money_value,
cvar_limita

};
new	\	
g_AllCvars	[ g_iCvars ]			,
g_iLimita	[ MAX_PLAYERS + 1 ]		,
g_iWeapon	[ MAX_PLAYERS + 1 ][4]		,
g_iPowerT	[ MAX_PLAYERS + 1 ][3]		,
g_iPowerCT	[ MAX_PLAYERS + 1 ][3]		;


new	const Ak47Models[][] = { "models/v_golden_ak47.mdl" };

new	const DeagleModels[][] = { "models/v_golden_deagle.mdl" };

new	const KatanaModels[][] = { "models/v_katana.mdl" };

new	const KSoundList[][] = { "katana/katana_deploy1.wav", "katana/katana1.wav", "katana/katana2.wav", "katana/katana2.wav",
"katana/katana_hwall.wav", "katana/katana_slash1.wav" , "katana/katana_slash1.wav", "katana/katana_stab.wav" };

new	const szPickSound[] = { "items/9mmclip1.wav" };	

public plugin_init() {
register_plugin(Plugin, "0.2.beta", Author);

register_clcmd("say", "hook_say");

register_clcmd("say_team", "hook_say");

register_forward(FM_EmitSound, "sound_emit");
register_forward(FM_AddToFullPack, "Fwd_AddToFullPack", 1);
register_forward(FM_PlayerPreThink, "Fwd_PlayerPreThink"); 

register_event("CurWeapon", "CurWeapon", "be", "1=1");
register_event("NVGToggle", "NVGToggle", "be");
register_event("ScreenFade", "ScreenFade", "b", "7=255");

RegisterHam(Ham_TakeDamage, "player", "PlayerDamage");
RegisterHam(Ham_Spawn, "player", "Ham_PlayerSpawn", 1);

maxplayers = get_maxplayers( );
gmsgSayText = get_user_msgid( "SayText" );
register_clcmd( "say", "handle_say" );

}
public hook_say(id) {
static iArg[192];

read_args(iArg, sizeof(iArg) - 1);

remove_quotes(iArg);

if(szFlags(id) & get_pcvar_flags(g_AllCvars[cvar_furien_flags]) )
	if( (containi(iArg, "vipmenu") != -1) || (containi(iArg, "vm") != -1) || (containi(iArg, "furienvip") != -1))
	{		
		replace( iArg , sizeof( iArg ) - 1, "/", "" );	
		set_task( 0.1 , "VipMenu" , id);
	}
	
return 0;
	
}

new g_Kamikaze;
public plugin_precache()
{
	g_AllCvars[ cvar_furien_messages ] = register_cvar("furien_messages", "1");
	g_AllCvars[ cvar_furien_bind ] = register_cvar("furien_bind", "1");
	g_AllCvars[ cvar_furien_flags ] = register_cvar("furien_flags", "t");
	g_AllCvars[ cvar_hp_value ] = register_cvar("furien_health", "150");
	g_AllCvars[ cvar_ap_value ] = register_cvar("furien_armor", "150");
	g_AllCvars[ cvar_lifesteal_value ] = register_cvar("furien_stealhp", "10");
	g_AllCvars[ cvar_damage_value ] = register_cvar("furien_damage", "15");
	g_AllCvars[ cvar_money_value ] = register_cvar("furien_money", "16000");
	g_AllCvars[ cvar_limita ] = register_cvar("furien_limita", "1");
	
	static i;
	for(i = 0; i <= charsmax(KSoundList); i++)
		precache_sound(KSoundList);
	
	for(i = 0; i < sizeof(KatanaModels); i++)
		precache_model(KatanaModels);
	
	for(i = 0; i < sizeof(Ak47Models); i++)
		precache_model(Ak47Models);
	
	for(i = 0; i < sizeof(DeagleModels); i++)
		precache_model(DeagleModels);
	
	precache_sound(szPickSound);
}
public client_putinserver(id)
{
	if(get_pcvar_num(g_AllCvars[cvar_furien_messages]))
		set_task(1.0, "client_putinserver_vip", id);
	
	if(get_pcvar_num(g_AllCvars[cvar_furien_bind]))
		set_task(1.5, "client_set_binds", id);
	
	return 1;
	
}
public client_disconnect(id)
{
	if(get_pcvar_num(g_AllCvars[cvar_furien_messages]))
		set_task(1.0, "client_disconnect_vip", id);
	
	return 1;
	
}
public client_set_bind(id)
{
	if(szFlags(id) & get_pcvar_flags(g_AllCvars[cvar_furien_flags]) )
	{
		client_cmd(id, "bind p say /furienvip");
		ColorChat(id, GREEN, "%s^x03 %s^x01 ai fost bindat apasa^x03 p ^x01", TAG, szName(id));
	}
	
	return 1;
}
public client_putinserver_vip(id)
{
	if(szFlags(id) & get_pcvar_flags(g_AllCvars[cvar_furien_flags]) )
		ColorChat(id, GREEN, "%s^x03 %s^x01 a intrat pe^x03 %s ^x01", TAG, szName(id), szHost());
	
	return 1;
}

public client_disconnect_vip(id)
{
	if(szFlags(id) & get_pcvar_flags(g_AllCvars[cvar_furien_flags]) )
		ColorChat(id, GREEN, "%s^x03 %s^x01 a iesit de pe^x03 %s ^x01", TAG, szName(id), szHost());
	
	return 1;
}

new const oldknife_sounds[][] =
{
"weapons/knife_deploy1.wav",   
"weapons/knife_hit1.wav",   
"weapons/knife_hit2.wav",    
"weapons/knife_hit3.wav",    
"weapons/knife_hit4.wav",    
"weapons/knife_hitwall1.wav",  
"weapons/knife_slash1.wav",    
"weapons/knife_slash2.wav",    
"weapons/knife_stab.wav"    
};
public sound_emit(const id, const channel, const sample[])
{
if(is_user_connected(id) && is_user_alive(id))
	if(g_iWeapon[id][3])
	{
		for(new i = 0; i < sizeof KSoundList; i++)
		{
			if(equal(sample, oldknife_sounds))
			{
				emit_sound(id, channel, KSoundList, 1.0, ATTN_NORM, 0, PITCH_NORM);
				return FMRES_SUPERCEDE;
			}
		}
	}
	
return FMRES_IGNORED;
}
public Fwd_PlayerPreThink(id)  
{ 
	if(g_iPowerT[id][2])
	{
		new button = get_user_button(id); 
		
		if(button & IN_USE )
			explode_me(id);	
	}
	
	return FMRES_IGNORED;
	
}  
public Ham_PlayerSpawn(const id)
{
	if(is_user_alive(id) && is_user_connected(id))
	{
		g_iLimita[id] = 0;		
		g_iWeapon[id][1] = 0;	
		g_iWeapon[id][2] = 0;		
		g_iPowerT[id][1] = 0;
		g_iWeapon[id][3] = 0;		
		g_iPowerT[id][2] = 0;		
		g_iPowerCT[id][1] = 0;
		g_iPowerCT[id][2] = 0;
		cs_set_user_nvg(id,false);
	}
}
public Fwd_AddToFullPack(es_handle, e, ent, host, hostflags, player, pSet)
{
	if(player && is_user_alive(host))
	{
		if(g_iPowerCT[1][host])
		{
			static CsTeams:team; team = cs_get_user_team(ent);
			static CsTeams:teamhost; teamhost = cs_get_user_team(host);
			static color[3];
			
			switch (team)
			{
				case CS_TEAM_CT:
				{
					color[0] = 0;
					color[1] = 0;
					color[2] = 255;
				}
				case CS_TEAM_T:
				{
					color[0] = 255;
					color[1] = 0;
					color[2] = 0;
				}
			}
			
			if(team != teamhost)
			{
				set_es(es_handle, ES_RenderFx, 19);
				set_es(es_handle, ES_RenderColor, color);
				set_es(es_handle, ES_RenderMode, 0);
				set_es(es_handle, ES_RenderAmt, 25);
			}
		}
	}
	
	return FMRES_IGNORED;
}

public NVGToggle(id)
	g_iPowerCT[1][id] = read_data(1);

public ScreenFade(id){
	if(g_iPowerCT[id][2] == 1 && is_user_alive(id))
	{
		message_begin(MSG_ONE_UNRELIABLE, get_user_msgid( "ScreenFade" ), { 0, 0, 0 }, id );
		write_short(0);
		write_short(0);
		write_short(0);
		write_byte(0);
		write_byte(0);
		write_byte(0);
		write_byte(0);
		message_end();
	}
	return 0;
}

public CurWeapon(id)
{
	new szWeapon = get_user_weapon( id );
	if(is_user_alive(id))
	{
		if(szWeapon == CSW_KNIFE && g_iWeapon[id][3])
		{
			set_pev(id, pev_viewmodel2,KatanaModels[0]);
		}
		if(szWeapon == CSW_AK47 && g_iWeapon[id][1])
		{
			set_pev(id, pev_viewmodel2,Ak47Models[0]);
		}
		if(szWeapon == CSW_DEAGLE && g_iWeapon[id][2])
		{
			set_pev(id, pev_viewmodel2, DeagleModels[0]);
		}
	}
}

public PlayerDamage(iVictim, iInflictor, iAttacker, Float:fDamage, iDamageBits )
{
	new szWeapon = get_user_weapon(iAttacker);
	
	if(!is_user_alive(iAttacker) || is_user_bot(iAttacker))
		return HAM_IGNORED;
	
	if(iInflictor == iAttacker)
	{
		new DVal = get_pcvar_num(g_AllCvars[cvar_damage_value]);
		if(g_iPowerT[iAttacker][1])
		{
			new LsVal = get_pcvar_num(g_AllCvars[cvar_lifesteal_value]);
			set_user_health(iAttacker, get_user_health(iAttacker) + LsVal);
			set_user_health(iVictim, get_user_health(iVictim) - LsVal);
		}
		
		if(szWeapon == CSW_KNIFE && g_iWeapon[iAttacker][3])
			SetHamParamFloat( 4, fDamage + DVal);
		
		if(szWeapon == CSW_AK47 && g_iWeapon[iAttacker][1])
			SetHamParamFloat( 4, fDamage + DVal);
		
		else if(szWeapon == CSW_DEAGLE && g_iWeapon[iAttacker][2])
			SetHamParamFloat( 4, fDamage + DVal);
		
		
	}
	return HAM_HANDLED;
}

public VipMenu(id)
{
	if(!is_user_alive(id))
	{
		ColorChat(id, GREEN, "%s^x03 %s^x01 esti mort..", TAG, szName(id));
		return 1;
	}
	if(g_iLimita[id] < get_pcvar_num(g_AllCvars[cvar_limita]))
		switch(cs_get_user_team(id))
	{
		case CS_TEAM_T:
		{
			new szText[555 char];
			
			formatex(szText, charsmax(szText), "\dFurien VIP^n \r%s", szName(id));
			new szMenu = menu_create(szText, "TSMenu_Submenu");
			
			formatex(szText, charsmax(szText), "\d+ \y[\w%d\y] \rHP",get_pcvar_num(g_AllCvars[cvar_hp_value]));
			menu_additem(szMenu, szText, "1", 0);
			
			formatex(szText, charsmax(szText), "\d+ \y[\w%d\y] \rAP",get_pcvar_num(g_AllCvars[cvar_ap_value]));
			menu_additem(szMenu, szText, "2", 0);
			
			formatex(szText, charsmax(szText), "\dNade \yPACK");
			menu_additem(szMenu, szText, "3", 0);
			
			formatex(szText, charsmax(szText), "\rKATANA!");
			menu_additem(szMenu, szText, "4", 0);
			
			formatex(szText, charsmax(szText), "\dLife \rSteal \y[\w%d/Hit\y]",get_pcvar_num(g_AllCvars[cvar_lifesteal_value]));
			menu_additem(szMenu, szText, "5", 0);
			
			formatex(szText, charsmax(szText), "\dKamikaze");
			menu_additem(szMenu, szText, "6", 0);
			
			menu_setprop(szMenu, MPROP_EXIT , MEXIT_ALL);
			menu_display(id, szMenu, 0);
			
		}
		case CS_TEAM_CT:
		{			
			new szTexts[555 char];
			
			formatex(szTexts, charsmax(szTexts), "\dFurien VIP^n \r%s", szName(id));
			new szMenus = menu_create(szTexts, "CTMenu_Submenu");
			
			formatex(szTexts, charsmax(szTexts), "\d+ \y[\w%d\y] \rHP",get_pcvar_num(g_AllCvars[cvar_hp_value]));
			menu_additem(szMenus, szTexts, "1", 0);
			
			formatex(szTexts, charsmax(szTexts), "\d+ \y[\w%d\y] \rAP",get_pcvar_num(g_AllCvars[cvar_ap_value]));
			menu_additem(szMenus, szTexts, "2", 0);
			
			formatex(szTexts, charsmax(szTexts), "\dAk47+Deagle\r[\yGOLD\r]");
			menu_additem(szMenus, szTexts, "3", 0);
			
			formatex(szTexts, charsmax(szTexts), "\rThermal \dNightVision");
			menu_additem(szMenus, szTexts, "4", 0);
			
			formatex(szTexts, charsmax(szTexts), "\dNo Flash");
			menu_additem(szMenus, szTexts, "5", 0);
			
			formatex(szTexts, charsmax(szTexts), "\d+ \y[\w%d\y] \r$",get_pcvar_num(g_AllCvars[cvar_money_value]));
			menu_additem(szMenus, szTexts, "6", 0);
			
			menu_setprop(szMenus, MPROP_EXIT , MEXIT_ALL);
			menu_display(id, szMenus, 0);
			
		}
	}
	if(g_iLimita[id] == get_pcvar_num(g_AllCvars[cvar_limita]))
	{
		ColorChat(id, GREEN, "%s^x03 %s^x01 ai atins limita maxima(%d).", TAG, szName(id), get_pcvar_num(g_AllCvars[cvar_limita]));
		return 1;
		
	}
	return 1;
}

public CTMenu_Submenu(id, szMenus, item)
{
	if( item == MENU_EXIT || get_user_team(id) == 1)
	{
		menu_destroy(szMenus);
		return 1;
	}
	new data[6], iName[64];
	new access, callback;
	
	menu_item_getinfo(szMenus, item, access, data,5, iName, 63, callback);
	
	new key = str_to_num(data);
	
	switch(key)
	{
		case 1:
		{
			new HpVal = get_pcvar_num(g_AllCvars[cvar_hp_value]);
			g_iLimita[id] ++;
			set_user_health(id, get_user_health(id) + HpVal);
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 +%d HP ^x01", TAG, szName(id), HpVal);
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
		case 2:
		{
			new ApVal = get_pcvar_num(g_AllCvars[cvar_ap_value]);
			g_iLimita[id] ++;
			set_user_armor(id, get_user_armor(id) + ApVal);
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 +%d AP ^x01", TAG, szName(id), ApVal);
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
		case 3:
		{
			g_iLimita[id] ++;
			//strip_user_weapons(id);
			g_iWeapon[id][1] = 1;
			g_iWeapon[id][2] = 1;
			give_item(id, "weapon_knife");
			give_item(id, "weapon_ak47");
			give_item(id, "weapon_deagle");
			cs_set_user_bpammo(id, CSW_AK47, 120);
			cs_set_user_bpammo(id, CSW_DEAGLE, 70);
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 golden ak47+deagle ^x01", TAG, szName(id));
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
		case 4:
		{
			g_iLimita[id] ++;
			g_iPowerCT[id][1] = 1;
			cs_set_user_nvg(id,true);
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 nightvision thermal ^x01", TAG, szName(id));
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
		case 5:
		{
			g_iLimita[id] ++;
			g_iPowerCT[id][2] = 1;
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 anti-flash mask ^x01", TAG, szName(id));
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
		case 6:
		{
			new MoneyVal = get_pcvar_num(g_AllCvars[cvar_money_value]);
			g_iLimita[id] ++;
			cs_set_user_money(id , min((cs_get_user_money(id) + MoneyVal), 16000));
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 +%d money ^x01", TAG, szName(id), MoneyVal);
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
	}
	return 1;
}

public TSMenu_Submenu(id, szMenu, item)
{
	if( item == MENU_EXIT || get_user_team(id) != 1)
	{
		menu_destroy(szMenu);
		return 1;
	}
	new data[6], iName[64];
	
	new access, callback;
	
	menu_item_getinfo(szMenu, item, access, data,5, iName, 63, callback);
	
	new key = str_to_num(data);
	
	switch(key)
	{
		case 1:
		{
			new HpVal = get_pcvar_num(g_AllCvars[cvar_hp_value]);
			g_iLimita[id] ++;
			set_user_health(id, get_user_health(id) + HpVal);
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 +%d HP ^x01", TAG, szName(id), HpVal);
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
		case 2:
		{
			new ApVal = get_pcvar_num(g_AllCvars[cvar_ap_value]);
			g_iLimita[id] ++;
			set_user_armor(id, get_user_armor(id) + ApVal);
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 +%d AP ^x01", TAG, szName(id), ApVal);
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
		case 3:
		{
			if(pev(id, pev_weapons) & (1<<CSW_HEGRENADE) || pev(id, pev_weapons) & (1<<CSW_FLASHBANG) || pev(id, pev_weapons) & (1<<CSW_SMOKEGRENADE))
			{
				ColorChat(id, GREEN, "%s^x03 %s^x01 scapa intai de toate ^x03  grenade^x01", TAG, szName(id));
				return 1;
				
			}
			else
			{
				g_iLimita[id] ++;
				give_item(id, "weapon_hegrenade");
				give_item(id, "weapon_flashbang");
				give_item(id, "weapon_smokegrenade");
				ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 nade pack ^x01", TAG, szName(id));
				emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
			}
		}
		case 4:
		{
			g_iLimita[id] ++;
			//strip_user_weapons(id);
			g_iWeapon[id][3] = 1;
			give_item(id, "weapon_knife");
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 katana ^x01", TAG, szName(id));
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
		case 5:
		{
			g_iLimita[id] ++;
			g_iPowerT[id][1] = 1;
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 life steal ^x01", TAG, szName(id));
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
		case 6:
		{
			g_iLimita[id] ++;
			g_iPowerT[id][2] = 1;
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales kamikaze apasa pe ^x03 e ^x01", TAG, szName(id));
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}		
	}
	return 1;
}

public handle_say( id )
{
	new said[ 192 ];
	read_args( said, 192 );
	if( ( containi( said, "vips" ) != -1 && containi( said, "vips" ) != -1 ) || contain( said, "/vips" ) != -1 )
	set_task( 0.1, "print_viplist", id );
	
	return PLUGIN_CONTINUE;
}

public print_viplist( user ) 
{
	new adminnames[ 33 ][ 32 ];
	new message[ 256 ];
	new id, count, x, len;
	
	for( id = 1 ; id <= maxplayers ; id++ )
		if( is_user_connected( id ) )
			if( is_user_vip( id ) )
				get_user_name( id, adminnames[ count++ ], 31 )
	
	len = format( message, 255, "%s VIP's Online: ",COLORG);
	if( count > 0 )
	{
		for( x = 0 ; x < count ; x++ )
		{
			len += format( message[ len ], 255-len, "^x03%s%s", adminnames[ x ], x < ( count-1 ) ? ", ":"", COLORT );
			if( len > 96 )
			{
				print_message( user, message );
				len = format( message, 255, "%s ",COLORG );
			}
		}
		print_message( user, message );
	}
	
	else
	{
		len += format( message[ len ], 255-len, "^x01Nu sunt VIP-i online.", COLORD );
		print_message( user, message );
	}
}

print_message( id, msg[ ] )
{
	message_begin( MSG_ONE, gmsgSayText, { 0, 0, 0 }, id );
	write_byte( id );
	write_string( msg );
	message_end( );
}

public explode_me(id) {
new Float:explosion[3];
pev(id, pev_origin, explosion);

user_kill(id);   
g_iPowerT[id][2] = 0;  

// create explosion
message_begin(MSG_BROADCAST, SVC_TEMPENTITY);
write_byte(TE_EXPLOSION);
write_coord(floatround(explosion[0]));
write_coord(floatround(explosion[1]));
write_coord(floatround(explosion[2]));
write_short(g_Kamikaze);
write_byte(30);
write_byte(30);
write_byte(0);
message_end();
emit_sound(0, CHAN_ITEM, "weapons/explode3.wav", 1.0, ATTN_NORM, 0, PITCH_NORM);
fm_radius_damage(id, explosion, 1000.0, 400.0, "grenade");
}

stock fm_radius_damage(id, Float:orig[3], Float:dmg , Float:rad, wpnName[]="") {
new szClassname[33], Float:Health;
static Ent;
Ent = -1;
while((Ent = engfunc(EngFunc_FindEntityInSphere, Ent, orig, rad))) {
	pev(Ent,pev_classname,szClassname,32);
	if(equali(szClassname, "player") 
	&& is_user_connected(Ent) 
	&& is_user_alive(Ent) )
{
	pev(Ent, pev_health, Health);
	Health -= dmg;
	
	new szName[32], szName1[32];
	get_user_name(Ent, szName, charsmax(szName));
	get_user_name(id, szName1, charsmax(szName1));
	
	if(Health <= 0.0) 
		createKill(Ent, id, wpnName);
		else set_pev(Ent, pev_health, Health);
	}
}             
}

stock szFlags(id)
{
new sz_Flags = get_user_flags(id);

return sz_Flags;
}
stock szHost()
{
new sz_Host[64];

get_cvar_string("hostname", sz_Host ,charsmax(sz_Host));

return sz_Host;
}
stock szName(id)
{
new sz_Name[33];

get_user_name(id, sz_Name, charsmax(sz_Name));

return sz_Name;
}
stock createKill(id, attacker, weaponDescription[]) {
new szFrags, szFrags2;

if(id != attacker) {
	szFrags = get_user_frags(attacker);
	set_user_frags(attacker, szFrags + 1);
	logKill(attacker, id, weaponDescription);
	
	//Kill the victim and block the messages
	set_msg_block(get_user_msgid("DeathMsg"),BLOCK_ONCE);
	set_msg_block(get_user_msgid("ScoreInfo"),BLOCK_ONCE);
	user_kill(id);
	
	//user_kill removes a frag, this gives it back
	szFrags2 = get_user_frags(id);
	set_user_frags(id, szFrags2 + 1);
	
	//Replaced HUD death message
	message_begin(MSG_ALL, get_user_msgid("DeathMsg"),{0,0,0},0);
	write_byte(attacker);
	write_byte(id);
	write_byte(0);
	write_string(weaponDescription);
	message_end();
	
	//Update killers scorboard with new info
	message_begin(MSG_ALL, get_user_msgid("ScoreInfo"));
	write_byte(attacker);
	write_short(szFrags);
	write_short(get_user_deaths(attacker));
	write_short(0);
	write_short(get_user_team(attacker));
	message_end();
	
	//Update victims scoreboard with correct info
	message_begin(MSG_ALL, get_user_msgid("ScoreInfo"));
	write_byte(id);
	write_short(szFrags2);
	write_short(get_user_deaths(id));
	write_short(0);
	write_short(get_user_team(id));
	message_end();
	
	new szName[32], szName1[32];
	get_user_name(id, szName, charsmax(szName));
	get_user_name(attacker, szName1, charsmax(szName1));
}
}

// stock for log kill
stock logKill(id, victim, weaponDescription[] ) {
new namea[32],namev[32],authida[35],authidv[35],teama[16],teamv[16];

//Info On Attacker
get_user_name(id,namea,charsmax(namea));
get_user_team(id,teama,15);
get_user_authid(id,authida,34);

//Info On Victim
get_user_name(victim,namev,charsmax(namev));
get_user_team(victim,teamv,15);
get_user_authid(victim,authidv,34);

//Log This Kill
if(id != victim)
	log_message("^"%s<%d><%s><%s>^" killed ^"%s<%d><%s><%s>^" with ^"%s^"",
	namea,get_user_userid(id),authida,teama,namev,get_user_userid(victim),authidv,teamv, weaponDescription );
	else
		log_message("^"%s<%d><%s><%s>^" committed suicide with ^"%s^"",
	namea,get_user_userid(id),authida,teama, weaponDescription );
}

stock bool:is_user_vip( id )
{
	if( get_user_flags( id ) & VIP_ACCESS )
		return true;
	
	return false;
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1048\\ f0\\ fs16 \n\\ par }
*/


:D
„Peste douăzeci de ani vei fi dezamăgit din cauza lucrurilor pe care nu le-ai făcut, nu din cauza celor pe care le-ai făcut.” - Mark Twain
„Asa e si in viata, hotii castiga, prostii care invata pierd.” - Mihai Nemeș


Bio.LeagueCs.Ro - Biohazard v4.4 Xmas Edition
discord: IonutC#5114

Experinta in: Java/Spring boot/Angular/C/C++/C#/Javascript/Python/HTML/CSS/Pawn/SQL
Ai nevoie de ajutorul meu? Ma poti gasi doar la adresa de discord de mai sus.
User avatar
CaTa.
Fost moderator
Fost moderator
Posts: 420
Joined: 28 Jul 2013, 15:06
Detinator Steam: Nu
Detinator server CS: In curand !
Reputatie: Fost Moderator ajutator
Location: Targu-Mures
Has thanked: 99 times
Been thanked: 19 times
Contact:

13 Sep 2013, 12:53

YONTU wrote:
| Afiseaza codul
#include <amxmodx>
#include <cstrike>
#include <fun>
#include <hamsandwich>
#include <fakemeta>
#include <engine>
#include <CC_ColorChat>

//#pragma semicolon 1

const MAX_PLAYERS = 32;

static Author[] = "eNd.";

static Plugin[] = "Furien VIP";

static TAG[] = "[ViP]";

static const COLORG[] = "^x04";
static const COLORD[] = "^x01";
static const COLORT[] = "^x03";

new maxplayers, gmsgSayText;

#define VIP_ACCESS ADMIN_LEVEL_H

enum _: g_iCvars
{
cvar_furien_messages,
cvar_furien_bind,
cvar_furien_flags,
cvar_ap_value,
cvar_hp_value,
cvar_lifesteal_value,
cvar_damage_value,
cvar_money_value,
cvar_limita

};
new	\	
g_AllCvars	[ g_iCvars ]			,
g_iLimita	[ MAX_PLAYERS + 1 ]		,
g_iWeapon	[ MAX_PLAYERS + 1 ][4]		,
g_iPowerT	[ MAX_PLAYERS + 1 ][3]		,
g_iPowerCT	[ MAX_PLAYERS + 1 ][3]		;


new	const Ak47Models[][] = { "models/v_golden_ak47.mdl" };

new	const DeagleModels[][] = { "models/v_golden_deagle.mdl" };

new	const KatanaModels[][] = { "models/v_katana.mdl" };

new	const KSoundList[][] = { "katana/katana_deploy1.wav", "katana/katana1.wav", "katana/katana2.wav", "katana/katana2.wav",
"katana/katana_hwall.wav", "katana/katana_slash1.wav" , "katana/katana_slash1.wav", "katana/katana_stab.wav" };

new	const szPickSound[] = { "items/9mmclip1.wav" };	

public plugin_init() {
register_plugin(Plugin, "0.2.beta", Author);

register_clcmd("say", "hook_say");

register_clcmd("say_team", "hook_say");

register_forward(FM_EmitSound, "sound_emit");
register_forward(FM_AddToFullPack, "Fwd_AddToFullPack", 1);
register_forward(FM_PlayerPreThink, "Fwd_PlayerPreThink"); 

register_event("CurWeapon", "CurWeapon", "be", "1=1");
register_event("NVGToggle", "NVGToggle", "be");
register_event("ScreenFade", "ScreenFade", "b", "7=255");

RegisterHam(Ham_TakeDamage, "player", "PlayerDamage");
RegisterHam(Ham_Spawn, "player", "Ham_PlayerSpawn", 1);

maxplayers = get_maxplayers( );
gmsgSayText = get_user_msgid( "SayText" );
register_clcmd( "say", "handle_say" );

}
public hook_say(id) {
static iArg[192];

read_args(iArg, sizeof(iArg) - 1);

remove_quotes(iArg);

if(szFlags(id) & get_pcvar_flags(g_AllCvars[cvar_furien_flags]) )
	if( (containi(iArg, "vipmenu") != -1) || (containi(iArg, "vm") != -1) || (containi(iArg, "furienvip") != -1))
	{		
		replace( iArg , sizeof( iArg ) - 1, "/", "" );	
		set_task( 0.1 , "VipMenu" , id);
	}
	
return 0;
	
}

new g_Kamikaze;
public plugin_precache()
{
	g_AllCvars[ cvar_furien_messages ] = register_cvar("furien_messages", "1");
	g_AllCvars[ cvar_furien_bind ] = register_cvar("furien_bind", "1");
	g_AllCvars[ cvar_furien_flags ] = register_cvar("furien_flags", "t");
	g_AllCvars[ cvar_hp_value ] = register_cvar("furien_health", "150");
	g_AllCvars[ cvar_ap_value ] = register_cvar("furien_armor", "150");
	g_AllCvars[ cvar_lifesteal_value ] = register_cvar("furien_stealhp", "10");
	g_AllCvars[ cvar_damage_value ] = register_cvar("furien_damage", "15");
	g_AllCvars[ cvar_money_value ] = register_cvar("furien_money", "16000");
	g_AllCvars[ cvar_limita ] = register_cvar("furien_limita", "1");
	
	static i;
	for(i = 0; i <= charsmax(KSoundList); i++)
		precache_sound(KSoundList);
	
	for(i = 0; i < sizeof(KatanaModels); i++)
		precache_model(KatanaModels);
	
	for(i = 0; i < sizeof(Ak47Models); i++)
		precache_model(Ak47Models);
	
	for(i = 0; i < sizeof(DeagleModels); i++)
		precache_model(DeagleModels);
	
	precache_sound(szPickSound);
}
public client_putinserver(id)
{
	if(get_pcvar_num(g_AllCvars[cvar_furien_messages]))
		set_task(1.0, "client_putinserver_vip", id);
	
	if(get_pcvar_num(g_AllCvars[cvar_furien_bind]))
		set_task(1.5, "client_set_binds", id);
	
	return 1;
	
}
public client_disconnect(id)
{
	if(get_pcvar_num(g_AllCvars[cvar_furien_messages]))
		set_task(1.0, "client_disconnect_vip", id);
	
	return 1;
	
}
public client_set_bind(id)
{
	if(szFlags(id) & get_pcvar_flags(g_AllCvars[cvar_furien_flags]) )
	{
		client_cmd(id, "bind p say /furienvip");
		ColorChat(id, GREEN, "%s^x03 %s^x01 ai fost bindat apasa^x03 p ^x01", TAG, szName(id));
	}
	
	return 1;
}
public client_putinserver_vip(id)
{
	if(szFlags(id) & get_pcvar_flags(g_AllCvars[cvar_furien_flags]) )
		ColorChat(id, GREEN, "%s^x03 %s^x01 a intrat pe^x03 %s ^x01", TAG, szName(id), szHost());
	
	return 1;
}

public client_disconnect_vip(id)
{
	if(szFlags(id) & get_pcvar_flags(g_AllCvars[cvar_furien_flags]) )
		ColorChat(id, GREEN, "%s^x03 %s^x01 a iesit de pe^x03 %s ^x01", TAG, szName(id), szHost());
	
	return 1;
}

new const oldknife_sounds[][] =
{
"weapons/knife_deploy1.wav",   
"weapons/knife_hit1.wav",   
"weapons/knife_hit2.wav",    
"weapons/knife_hit3.wav",    
"weapons/knife_hit4.wav",    
"weapons/knife_hitwall1.wav",  
"weapons/knife_slash1.wav",    
"weapons/knife_slash2.wav",    
"weapons/knife_stab.wav"    
};
public sound_emit(const id, const channel, const sample[])
{
if(is_user_connected(id) && is_user_alive(id))
	if(g_iWeapon[id][3])
	{
		for(new i = 0; i < sizeof KSoundList; i++)
		{
			if(equal(sample, oldknife_sounds))
			{
				emit_sound(id, channel, KSoundList, 1.0, ATTN_NORM, 0, PITCH_NORM);
				return FMRES_SUPERCEDE;
			}
		}
	}
	
return FMRES_IGNORED;
}
public Fwd_PlayerPreThink(id)  
{ 
	if(g_iPowerT[id][2])
	{
		new button = get_user_button(id); 
		
		if(button & IN_USE )
			explode_me(id);	
	}
	
	return FMRES_IGNORED;
	
}  
public Ham_PlayerSpawn(const id)
{
	if(is_user_alive(id) && is_user_connected(id))
	{
		g_iLimita[id] = 0;		
		g_iWeapon[id][1] = 0;	
		g_iWeapon[id][2] = 0;		
		g_iPowerT[id][1] = 0;
		g_iWeapon[id][3] = 0;		
		g_iPowerT[id][2] = 0;		
		g_iPowerCT[id][1] = 0;
		g_iPowerCT[id][2] = 0;
		cs_set_user_nvg(id,false);
	}
}
public Fwd_AddToFullPack(es_handle, e, ent, host, hostflags, player, pSet)
{
	if(player && is_user_alive(host))
	{
		if(g_iPowerCT[1][host])
		{
			static CsTeams:team; team = cs_get_user_team(ent);
			static CsTeams:teamhost; teamhost = cs_get_user_team(host);
			static color[3];
			
			switch (team)
			{
				case CS_TEAM_CT:
				{
					color[0] = 0;
					color[1] = 0;
					color[2] = 255;
				}
				case CS_TEAM_T:
				{
					color[0] = 255;
					color[1] = 0;
					color[2] = 0;
				}
			}
			
			if(team != teamhost)
			{
				set_es(es_handle, ES_RenderFx, 19);
				set_es(es_handle, ES_RenderColor, color);
				set_es(es_handle, ES_RenderMode, 0);
				set_es(es_handle, ES_RenderAmt, 25);
			}
		}
	}
	
	return FMRES_IGNORED;
}

public NVGToggle(id)
	g_iPowerCT[1][id] = read_data(1);

public ScreenFade(id){
	if(g_iPowerCT[id][2] == 1 && is_user_alive(id))
	{
		message_begin(MSG_ONE_UNRELIABLE, get_user_msgid( "ScreenFade" ), { 0, 0, 0 }, id );
		write_short(0);
		write_short(0);
		write_short(0);
		write_byte(0);
		write_byte(0);
		write_byte(0);
		write_byte(0);
		message_end();
	}
	return 0;
}

public CurWeapon(id)
{
	new szWeapon = get_user_weapon( id );
	if(is_user_alive(id))
	{
		if(szWeapon == CSW_KNIFE && g_iWeapon[id][3])
		{
			set_pev(id, pev_viewmodel2,KatanaModels[0]);
		}
		if(szWeapon == CSW_AK47 && g_iWeapon[id][1])
		{
			set_pev(id, pev_viewmodel2,Ak47Models[0]);
		}
		if(szWeapon == CSW_DEAGLE && g_iWeapon[id][2])
		{
			set_pev(id, pev_viewmodel2, DeagleModels[0]);
		}
	}
}

public PlayerDamage(iVictim, iInflictor, iAttacker, Float:fDamage, iDamageBits )
{
	new szWeapon = get_user_weapon(iAttacker);
	
	if(!is_user_alive(iAttacker) || is_user_bot(iAttacker))
		return HAM_IGNORED;
	
	if(iInflictor == iAttacker)
	{
		new DVal = get_pcvar_num(g_AllCvars[cvar_damage_value]);
		if(g_iPowerT[iAttacker][1])
		{
			new LsVal = get_pcvar_num(g_AllCvars[cvar_lifesteal_value]);
			set_user_health(iAttacker, get_user_health(iAttacker) + LsVal);
			set_user_health(iVictim, get_user_health(iVictim) - LsVal);
		}
		
		if(szWeapon == CSW_KNIFE && g_iWeapon[iAttacker][3])
			SetHamParamFloat( 4, fDamage + DVal);
		
		if(szWeapon == CSW_AK47 && g_iWeapon[iAttacker][1])
			SetHamParamFloat( 4, fDamage + DVal);
		
		else if(szWeapon == CSW_DEAGLE && g_iWeapon[iAttacker][2])
			SetHamParamFloat( 4, fDamage + DVal);
		
		
	}
	return HAM_HANDLED;
}

public VipMenu(id)
{
	if(!is_user_alive(id))
	{
		ColorChat(id, GREEN, "%s^x03 %s^x01 esti mort..", TAG, szName(id));
		return 1;
	}
	if(g_iLimita[id] < get_pcvar_num(g_AllCvars[cvar_limita]))
		switch(cs_get_user_team(id))
	{
		case CS_TEAM_T:
		{
			new szText[555 char];
			
			formatex(szText, charsmax(szText), "\dFurien VIP^n \r%s", szName(id));
			new szMenu = menu_create(szText, "TSMenu_Submenu");
			
			formatex(szText, charsmax(szText), "\d+ \y[\w%d\y] \rHP",get_pcvar_num(g_AllCvars[cvar_hp_value]));
			menu_additem(szMenu, szText, "1", 0);
			
			formatex(szText, charsmax(szText), "\d+ \y[\w%d\y] \rAP",get_pcvar_num(g_AllCvars[cvar_ap_value]));
			menu_additem(szMenu, szText, "2", 0);
			
			formatex(szText, charsmax(szText), "\dNade \yPACK");
			menu_additem(szMenu, szText, "3", 0);
			
			formatex(szText, charsmax(szText), "\rKATANA!");
			menu_additem(szMenu, szText, "4", 0);
			
			formatex(szText, charsmax(szText), "\dLife \rSteal \y[\w%d/Hit\y]",get_pcvar_num(g_AllCvars[cvar_lifesteal_value]));
			menu_additem(szMenu, szText, "5", 0);
			
			formatex(szText, charsmax(szText), "\dKamikaze");
			menu_additem(szMenu, szText, "6", 0);
			
			menu_setprop(szMenu, MPROP_EXIT , MEXIT_ALL);
			menu_display(id, szMenu, 0);
			
		}
		case CS_TEAM_CT:
		{			
			new szTexts[555 char];
			
			formatex(szTexts, charsmax(szTexts), "\dFurien VIP^n \r%s", szName(id));
			new szMenus = menu_create(szTexts, "CTMenu_Submenu");
			
			formatex(szTexts, charsmax(szTexts), "\d+ \y[\w%d\y] \rHP",get_pcvar_num(g_AllCvars[cvar_hp_value]));
			menu_additem(szMenus, szTexts, "1", 0);
			
			formatex(szTexts, charsmax(szTexts), "\d+ \y[\w%d\y] \rAP",get_pcvar_num(g_AllCvars[cvar_ap_value]));
			menu_additem(szMenus, szTexts, "2", 0);
			
			formatex(szTexts, charsmax(szTexts), "\dAk47+Deagle\r[\yGOLD\r]");
			menu_additem(szMenus, szTexts, "3", 0);
			
			formatex(szTexts, charsmax(szTexts), "\rThermal \dNightVision");
			menu_additem(szMenus, szTexts, "4", 0);
			
			formatex(szTexts, charsmax(szTexts), "\dNo Flash");
			menu_additem(szMenus, szTexts, "5", 0);
			
			formatex(szTexts, charsmax(szTexts), "\d+ \y[\w%d\y] \r$",get_pcvar_num(g_AllCvars[cvar_money_value]));
			menu_additem(szMenus, szTexts, "6", 0);
			
			menu_setprop(szMenus, MPROP_EXIT , MEXIT_ALL);
			menu_display(id, szMenus, 0);
			
		}
	}
	if(g_iLimita[id] == get_pcvar_num(g_AllCvars[cvar_limita]))
	{
		ColorChat(id, GREEN, "%s^x03 %s^x01 ai atins limita maxima(%d).", TAG, szName(id), get_pcvar_num(g_AllCvars[cvar_limita]));
		return 1;
		
	}
	return 1;
}

public CTMenu_Submenu(id, szMenus, item)
{
	if( item == MENU_EXIT || get_user_team(id) == 1)
	{
		menu_destroy(szMenus);
		return 1;
	}
	new data[6], iName[64];
	new access, callback;
	
	menu_item_getinfo(szMenus, item, access, data,5, iName, 63, callback);
	
	new key = str_to_num(data);
	
	switch(key)
	{
		case 1:
		{
			new HpVal = get_pcvar_num(g_AllCvars[cvar_hp_value]);
			g_iLimita[id] ++;
			set_user_health(id, get_user_health(id) + HpVal);
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 +%d HP ^x01", TAG, szName(id), HpVal);
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
		case 2:
		{
			new ApVal = get_pcvar_num(g_AllCvars[cvar_ap_value]);
			g_iLimita[id] ++;
			set_user_armor(id, get_user_armor(id) + ApVal);
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 +%d AP ^x01", TAG, szName(id), ApVal);
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
		case 3:
		{
			g_iLimita[id] ++;
			//strip_user_weapons(id);
			g_iWeapon[id][1] = 1;
			g_iWeapon[id][2] = 1;
			give_item(id, "weapon_knife");
			give_item(id, "weapon_ak47");
			give_item(id, "weapon_deagle");
			cs_set_user_bpammo(id, CSW_AK47, 120);
			cs_set_user_bpammo(id, CSW_DEAGLE, 70);
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 golden ak47+deagle ^x01", TAG, szName(id));
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
		case 4:
		{
			g_iLimita[id] ++;
			g_iPowerCT[id][1] = 1;
			cs_set_user_nvg(id,true);
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 nightvision thermal ^x01", TAG, szName(id));
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
		case 5:
		{
			g_iLimita[id] ++;
			g_iPowerCT[id][2] = 1;
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 anti-flash mask ^x01", TAG, szName(id));
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
		case 6:
		{
			new MoneyVal = get_pcvar_num(g_AllCvars[cvar_money_value]);
			g_iLimita[id] ++;
			cs_set_user_money(id , min((cs_get_user_money(id) + MoneyVal), 16000));
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 +%d money ^x01", TAG, szName(id), MoneyVal);
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
	}
	return 1;
}

public TSMenu_Submenu(id, szMenu, item)
{
	if( item == MENU_EXIT || get_user_team(id) != 1)
	{
		menu_destroy(szMenu);
		return 1;
	}
	new data[6], iName[64];
	
	new access, callback;
	
	menu_item_getinfo(szMenu, item, access, data,5, iName, 63, callback);
	
	new key = str_to_num(data);
	
	switch(key)
	{
		case 1:
		{
			new HpVal = get_pcvar_num(g_AllCvars[cvar_hp_value]);
			g_iLimita[id] ++;
			set_user_health(id, get_user_health(id) + HpVal);
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 +%d HP ^x01", TAG, szName(id), HpVal);
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
		case 2:
		{
			new ApVal = get_pcvar_num(g_AllCvars[cvar_ap_value]);
			g_iLimita[id] ++;
			set_user_armor(id, get_user_armor(id) + ApVal);
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 +%d AP ^x01", TAG, szName(id), ApVal);
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
		case 3:
		{
			if(pev(id, pev_weapons) & (1<<CSW_HEGRENADE) || pev(id, pev_weapons) & (1<<CSW_FLASHBANG) || pev(id, pev_weapons) & (1<<CSW_SMOKEGRENADE))
			{
				ColorChat(id, GREEN, "%s^x03 %s^x01 scapa intai de toate ^x03  grenade^x01", TAG, szName(id));
				return 1;
				
			}
			else
			{
				g_iLimita[id] ++;
				give_item(id, "weapon_hegrenade");
				give_item(id, "weapon_flashbang");
				give_item(id, "weapon_smokegrenade");
				ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 nade pack ^x01", TAG, szName(id));
				emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
			}
		}
		case 4:
		{
			g_iLimita[id] ++;
			//strip_user_weapons(id);
			g_iWeapon[id][3] = 1;
			give_item(id, "weapon_knife");
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 katana ^x01", TAG, szName(id));
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
		case 5:
		{
			g_iLimita[id] ++;
			g_iPowerT[id][1] = 1;
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 life steal ^x01", TAG, szName(id));
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
		case 6:
		{
			g_iLimita[id] ++;
			g_iPowerT[id][2] = 1;
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales kamikaze apasa pe ^x03 e ^x01", TAG, szName(id));
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}		
	}
	return 1;
}

public handle_say( id )
{
	new said[ 192 ];
	read_args( said, 192 );
	if( ( containi( said, "vips" ) != -1 && containi( said, "vips" ) != -1 ) || contain( said, "/vips" ) != -1 )
	set_task( 0.1, "print_viplist", id );
	
	return PLUGIN_CONTINUE;
}

public print_viplist( user ) 
{
	new adminnames[ 33 ][ 32 ];
	new message[ 256 ];
	new id, count, x, len;
	
	for( id = 1 ; id <= maxplayers ; id++ )
		if( is_user_connected( id ) )
			if( is_user_vip( id ) )
				get_user_name( id, adminnames[ count++ ], 31 )
	
	len = format( message, 255, "%s VIP's Online: ",COLORG);
	if( count > 0 )
	{
		for( x = 0 ; x < count ; x++ )
		{
			len += format( message[ len ], 255-len, "^x03%s%s", adminnames[ x ], x < ( count-1 ) ? ", ":"", COLORT );
			if( len > 96 )
			{
				print_message( user, message );
				len = format( message, 255, "%s ",COLORG );
			}
		}
		print_message( user, message );
	}
	
	else
	{
		len += format( message[ len ], 255-len, "^x01Nu sunt VIP-i online.", COLORD );
		print_message( user, message );
	}
}

print_message( id, msg[ ] )
{
	message_begin( MSG_ONE, gmsgSayText, { 0, 0, 0 }, id );
	write_byte( id );
	write_string( msg );
	message_end( );
}

public explode_me(id) {
new Float:explosion[3];
pev(id, pev_origin, explosion);

user_kill(id);   
g_iPowerT[id][2] = 0;  

// create explosion
message_begin(MSG_BROADCAST, SVC_TEMPENTITY);
write_byte(TE_EXPLOSION);
write_coord(floatround(explosion[0]));
write_coord(floatround(explosion[1]));
write_coord(floatround(explosion[2]));
write_short(g_Kamikaze);
write_byte(30);
write_byte(30);
write_byte(0);
message_end();
emit_sound(0, CHAN_ITEM, "weapons/explode3.wav", 1.0, ATTN_NORM, 0, PITCH_NORM);
fm_radius_damage(id, explosion, 1000.0, 400.0, "grenade");
}

stock fm_radius_damage(id, Float:orig[3], Float:dmg , Float:rad, wpnName[]="") {
new szClassname[33], Float:Health;
static Ent;
Ent = -1;
while((Ent = engfunc(EngFunc_FindEntityInSphere, Ent, orig, rad))) {
	pev(Ent,pev_classname,szClassname,32);
	if(equali(szClassname, "player") 
	&& is_user_connected(Ent) 
	&& is_user_alive(Ent) )
{
	pev(Ent, pev_health, Health);
	Health -= dmg;
	
	new szName[32], szName1[32];
	get_user_name(Ent, szName, charsmax(szName));
	get_user_name(id, szName1, charsmax(szName1));
	
	if(Health <= 0.0) 
		createKill(Ent, id, wpnName);
		else set_pev(Ent, pev_health, Health);
	}
}             
}

stock szFlags(id)
{
new sz_Flags = get_user_flags(id);

return sz_Flags;
}
stock szHost()
{
new sz_Host[64];

get_cvar_string("hostname", sz_Host ,charsmax(sz_Host));

return sz_Host;
}
stock szName(id)
{
new sz_Name[33];

get_user_name(id, sz_Name, charsmax(sz_Name));

return sz_Name;
}
stock createKill(id, attacker, weaponDescription[]) {
new szFrags, szFrags2;

if(id != attacker) {
	szFrags = get_user_frags(attacker);
	set_user_frags(attacker, szFrags + 1);
	logKill(attacker, id, weaponDescription);
	
	//Kill the victim and block the messages
	set_msg_block(get_user_msgid("DeathMsg"),BLOCK_ONCE);
	set_msg_block(get_user_msgid("ScoreInfo"),BLOCK_ONCE);
	user_kill(id);
	
	//user_kill removes a frag, this gives it back
	szFrags2 = get_user_frags(id);
	set_user_frags(id, szFrags2 + 1);
	
	//Replaced HUD death message
	message_begin(MSG_ALL, get_user_msgid("DeathMsg"),{0,0,0},0);
	write_byte(attacker);
	write_byte(id);
	write_byte(0);
	write_string(weaponDescription);
	message_end();
	
	//Update killers scorboard with new info
	message_begin(MSG_ALL, get_user_msgid("ScoreInfo"));
	write_byte(attacker);
	write_short(szFrags);
	write_short(get_user_deaths(attacker));
	write_short(0);
	write_short(get_user_team(attacker));
	message_end();
	
	//Update victims scoreboard with correct info
	message_begin(MSG_ALL, get_user_msgid("ScoreInfo"));
	write_byte(id);
	write_short(szFrags2);
	write_short(get_user_deaths(id));
	write_short(0);
	write_short(get_user_team(id));
	message_end();
	
	new szName[32], szName1[32];
	get_user_name(id, szName, charsmax(szName));
	get_user_name(attacker, szName1, charsmax(szName1));
}
}

// stock for log kill
stock logKill(id, victim, weaponDescription[] ) {
new namea[32],namev[32],authida[35],authidv[35],teama[16],teamv[16];

//Info On Attacker
get_user_name(id,namea,charsmax(namea));
get_user_team(id,teama,15);
get_user_authid(id,authida,34);

//Info On Victim
get_user_name(victim,namev,charsmax(namev));
get_user_team(victim,teamv,15);
get_user_authid(victim,authidv,34);

//Log This Kill
if(id != victim)
	log_message("^"%s<%d><%s><%s>^" killed ^"%s<%d><%s><%s>^" with ^"%s^"",
	namea,get_user_userid(id),authida,teama,namev,get_user_userid(victim),authidv,teamv, weaponDescription );
	else
		log_message("^"%s<%d><%s><%s>^" committed suicide with ^"%s^"",
	namea,get_user_userid(id),authida,teama, weaponDescription );
}

stock bool:is_user_vip( id )
{
	if( get_user_flags( id ) & VIP_ACCESS )
		return true;
	
	return false;
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1048\\ f0\\ fs16 \n\\ par }
*/


:D

mersiii da nu merge
da am modificat io si acum merge numa celor cu level H la admin
si am scos si cvarul ala cu furien_flags

uite sursa modificata de mine
| Afiseaza codul
#include <amxmodx>
#include <cstrike>
#include <fun>
#include <hamsandwich>
#include <fakemeta>
#include <engine>
#include <CC_ColorChat>

//#pragma semicolon 1

const MAX_PLAYERS = 32;

static Author[] = "eNd.";

static Plugin[] = "Furien VIP";

static TAG[] = "[ViP]";

static const COLORG[] = "^x04";
static const COLORD[] = "^x01";
static const COLORT[] = "^x03";

new maxplayers, gmsgSayText;

#define VIP_ACCESS ADMIN_LEVEL_H

enum _: g_iCvars
{
cvar_furien_messages,
cvar_furien_bind,
cvar_ap_value,
cvar_hp_value,
cvar_lifesteal_value,
cvar_damage_value,
cvar_money_value,
cvar_limita

};
new	\	
g_AllCvars	[ g_iCvars ]			,
g_iLimita	[ MAX_PLAYERS + 1 ]		,
g_iWeapon	[ MAX_PLAYERS + 1 ][4]		,
g_iPowerT	[ MAX_PLAYERS + 1 ][3]		,
g_iPowerCT	[ MAX_PLAYERS + 1 ][3]		;


new	const Ak47Models[][] = { "models/v_ak47.mdl" };

new	const DeagleModels[][] = { "models/v_deagle.mdl" };

new	const KatanaModels[][] = { "models/furien/knifes/v_double_katana.mdl" };

new	const KSoundList[][] = { "katana/katana_deploy1.wav", "katana/katana1.wav", "katana/katana2.wav", "katana/katana2.wav",
"katana/katana_hwall.wav", "katana/katana_slash1.wav" , "katana/katana_slash1.wav", "katana/katana_stab.wav" };

new	const szPickSound[] = { "items/9mmclip1.wav" };	

public plugin_init() {
register_plugin(Plugin, "0.2.beta", Author);

register_clcmd("say", "hook_say");

register_clcmd("say_team", "hook_say");

register_forward(FM_EmitSound, "sound_emit");
register_forward(FM_AddToFullPack, "Fwd_AddToFullPack", 1);
register_forward(FM_PlayerPreThink, "Fwd_PlayerPreThink"); 

register_event("CurWeapon", "CurWeapon", "be", "1=1");
register_event("NVGToggle", "NVGToggle", "be");
register_event("ScreenFade", "ScreenFade", "b", "7=255");

RegisterHam(Ham_TakeDamage, "player", "PlayerDamage");
RegisterHam(Ham_Spawn, "player", "Ham_PlayerSpawn", 1);

maxplayers = get_maxplayers( );
gmsgSayText = get_user_msgid( "SayText" );
register_clcmd( "say", "handle_say" );

}
public hook_say(id) {
static iArg[192];

read_args(iArg, sizeof(iArg) - 1);

remove_quotes(iArg);

if( get_user_flags( id ) & VIP_ACCESS )
	if( (containi(iArg, "vipmenu") != -1) || (containi(iArg, "vm") != -1) || (containi(iArg, "furienvip") != -1))
	{		
		replace( iArg , sizeof( iArg ) - 1, "/", "" );	
		set_task( 0.1 , "VipMenu" , id);
	}
	
return 0;
	
}

new g_Kamikaze;
public plugin_precache()
{
	g_AllCvars[ cvar_furien_messages ] = register_cvar("furien_messages", "1");
	g_AllCvars[ cvar_furien_bind ] = register_cvar("furien_bind", "1");
	g_AllCvars[ cvar_hp_value ] = register_cvar("furien_health", "150");
	g_AllCvars[ cvar_ap_value ] = register_cvar("furien_armor", "150");
	g_AllCvars[ cvar_lifesteal_value ] = register_cvar("furien_stealhp", "10");
	g_AllCvars[ cvar_damage_value ] = register_cvar("furien_damage", "15");
	g_AllCvars[ cvar_money_value ] = register_cvar("furien_money", "16000");
	g_AllCvars[ cvar_limita ] = register_cvar("furien_limita", "1");
	
	static i;
	for(i = 0; i <= charsmax(KSoundList); i++)
		precache_sound(KSoundList);
	
	for(i = 0; i < sizeof(KatanaModels); i++)
		precache_model(KatanaModels);
	
	for(i = 0; i < sizeof(Ak47Models); i++)
		precache_model(Ak47Models);
	
	for(i = 0; i < sizeof(DeagleModels); i++)
		precache_model(DeagleModels);
	
	precache_sound(szPickSound);
}
public client_putinserver(id)
{
	if(get_pcvar_num(g_AllCvars[cvar_furien_messages]))
		set_task(1.0, "client_putinserver_vip", id);
	
	if(get_pcvar_num(g_AllCvars[cvar_furien_bind]))
		set_task(1.5, "client_set_binds", id);
	
	return 1;
	
}
public client_disconnect(id)
{
	if(get_pcvar_num(g_AllCvars[cvar_furien_messages]))
		set_task(1.0, "client_disconnect_vip", id);
	
	return 1;
	
}
public client_set_bind(id)
{
	if( get_user_flags( id ) & VIP_ACCESS )
	{
		client_cmd(id, "bind p say /vipmenu");
		ColorChat(id, GREEN, "%s^x03 %s^x01 ai fost bindat apasa^x03 P ^x01", TAG, szName(id));
	}
	
	return 1;
}
public client_putinserver_vip(id)
{
	if( get_user_flags( id ) & VIP_ACCESS )
		ColorChat(id, GREEN, "%s^x03 %s^x01 a intrat pe^x03 %s ^x01", TAG, szName(id), szHost());
	
	return 1;
}

public client_disconnect_vip(id)
{
	if( get_user_flags( id ) & VIP_ACCESS )
		ColorChat(id, GREEN, "%s^x03 %s^x01 a iesit de pe^x03 %s ^x01", TAG, szName(id), szHost());
	
	return 1;
}

new const oldknife_sounds[][] =
{
"weapons/knife_deploy1.wav",   
"weapons/knife_hit1.wav",   
"weapons/knife_hit2.wav",    
"weapons/knife_hit3.wav",    
"weapons/knife_hit4.wav",    
"weapons/knife_hitwall1.wav",  
"weapons/knife_slash1.wav",    
"weapons/knife_slash2.wav",    
"weapons/knife_stab.wav"    
};
public sound_emit(const id, const channel, const sample[])
{
if(is_user_connected(id) && is_user_alive(id))
	if(g_iWeapon[id][3])
	{
		for(new i = 0; i < sizeof KSoundList; i++)
		{
			if(equal(sample, oldknife_sounds[i]))
			{
				emit_sound(id, channel, KSoundList[i], 1.0, ATTN_NORM, 0, PITCH_NORM);
				return FMRES_SUPERCEDE;
			}
		}
	}
	
return FMRES_IGNORED;
}
public Fwd_PlayerPreThink(id)  
{ 
	if(g_iPowerT[id][2])
	{
		new button = get_user_button(id); 
		
		if(button & IN_USE )
			explode_me(id);	
	}
	
	return FMRES_IGNORED;
	
}  
public Ham_PlayerSpawn(const id)
{
	if(is_user_alive(id) && is_user_connected(id))
	{
		g_iLimita[id] = 0;		
		g_iWeapon[id][1] = 0;	
		g_iWeapon[id][2] = 0;		
		g_iPowerT[id][1] = 0;
		g_iWeapon[id][3] = 0;		
		g_iPowerT[id][2] = 0;		
		g_iPowerCT[id][1] = 0;
		g_iPowerCT[id][2] = 0;
		cs_set_user_nvg(id,false);
	}
}
public Fwd_AddToFullPack(es_handle, e, ent, host, hostflags, player, pSet)
{
	if(player && is_user_alive(host))
	{
		if(g_iPowerCT[1][host])
		{
			static CsTeams:team; team = cs_get_user_team(ent);
			static CsTeams:teamhost; teamhost = cs_get_user_team(host);
			static color[3];
			
			switch (team)
			{
				case CS_TEAM_CT:
				{
					color[0] = 0;
					color[1] = 0;
					color[2] = 255;
				}
				case CS_TEAM_T:
				{
					color[0] = 255;
					color[1] = 0;
					color[2] = 0;
				}
			}
			
			if(team != teamhost)
			{
				set_es(es_handle, ES_RenderFx, 19);
				set_es(es_handle, ES_RenderColor, color);
				set_es(es_handle, ES_RenderMode, 0);
				set_es(es_handle, ES_RenderAmt, 25);
			}
		}
	}
	
	return FMRES_IGNORED;
}

public NVGToggle(id)
	g_iPowerCT[1][id] = read_data(1);

public ScreenFade(id){
	if(g_iPowerCT[id][2] == 1 && is_user_alive(id))
	{
		message_begin(MSG_ONE_UNRELIABLE, get_user_msgid( "ScreenFade" ), { 0, 0, 0 }, id );
		write_short(0);
		write_short(0);
		write_short(0);
		write_byte(0);
		write_byte(0);
		write_byte(0);
		write_byte(0);
		message_end();
	}
	return 0;
}

public CurWeapon(id)
{
	new szWeapon = get_user_weapon( id );
	if(is_user_alive(id))
	{
		if(szWeapon == CSW_KNIFE && g_iWeapon[id][3])
		{
			set_pev(id, pev_viewmodel2,KatanaModels[0]);
		}
		if(szWeapon == CSW_AK47 && g_iWeapon[id][1])
		{
			set_pev(id, pev_viewmodel2,Ak47Models[0]);
		}
		if(szWeapon == CSW_DEAGLE && g_iWeapon[id][2])
		{
			set_pev(id, pev_viewmodel2, DeagleModels[0]);
		}
	}
}

public PlayerDamage(iVictim, iInflictor, iAttacker, Float:fDamage, iDamageBits )
{
	new szWeapon = get_user_weapon(iAttacker);
	
	if(!is_user_alive(iAttacker) || is_user_bot(iAttacker))
		return HAM_IGNORED;
	
	if(iInflictor == iAttacker)
	{
		new DVal = get_pcvar_num(g_AllCvars[cvar_damage_value]);
		if(g_iPowerT[iAttacker][1])
		{
			new LsVal = get_pcvar_num(g_AllCvars[cvar_lifesteal_value]);
			set_user_health(iAttacker, get_user_health(iAttacker) + LsVal);
			set_user_health(iVictim, get_user_health(iVictim) - LsVal);
		}
		
		if(szWeapon == CSW_KNIFE && g_iWeapon[iAttacker][3])
			SetHamParamFloat( 4, fDamage + DVal);
		
		if(szWeapon == CSW_AK47 && g_iWeapon[iAttacker][1])
			SetHamParamFloat( 4, fDamage + DVal);
		
		else if(szWeapon == CSW_DEAGLE && g_iWeapon[iAttacker][2])
			SetHamParamFloat( 4, fDamage + DVal);
		
		
	}
	return HAM_HANDLED;
}

public VipMenu(id)
{
	if(!is_user_alive(id))
	{
		ColorChat(id, GREEN, "%s^x03 %s^x01 esti mort..", TAG, szName(id));
		return 1;
	}
	if(g_iLimita[id] < get_pcvar_num(g_AllCvars[cvar_limita]))
		switch(cs_get_user_team(id))
	{
		case CS_TEAM_T:
		{
			new szText[555 char];
			
			formatex(szText, charsmax(szText), "\dFurien VIP^n \r%s", szName(id));
			new szMenu = menu_create(szText, "TSMenu_Submenu");
			
			formatex(szText, charsmax(szText), "\d+ \y[\w%d\y] \rHP",get_pcvar_num(g_AllCvars[cvar_hp_value]));
			menu_additem(szMenu, szText, "1", 0);
			
			formatex(szText, charsmax(szText), "\d+ \y[\w%d\y] \rAP",get_pcvar_num(g_AllCvars[cvar_ap_value]));
			menu_additem(szMenu, szText, "2", 0);
			
			formatex(szText, charsmax(szText), "\dNade \yPACK");
			menu_additem(szMenu, szText, "3", 0);
			
			formatex(szText, charsmax(szText), "\rKATANA!");
			menu_additem(szMenu, szText, "4", 0);
			
			formatex(szText, charsmax(szText), "\dLife \rSteal \y[\w%d/Hit\y]",get_pcvar_num(g_AllCvars[cvar_lifesteal_value]));
			menu_additem(szMenu, szText, "5", 0);
			
			formatex(szText, charsmax(szText), "\dKamikaze");
			menu_additem(szMenu, szText, "6", 0);
			
			menu_setprop(szMenu, MPROP_EXIT , MEXIT_ALL);
			menu_display(id, szMenu, 0);
			
		}
		case CS_TEAM_CT:
		{			
			new szTexts[555 char];
			
			formatex(szTexts, charsmax(szTexts), "\dFurien VIP^n \r%s", szName(id));
			new szMenus = menu_create(szTexts, "CTMenu_Submenu");
			
			formatex(szTexts, charsmax(szTexts), "\d+ \y[\w%d\y] \rHP",get_pcvar_num(g_AllCvars[cvar_hp_value]));
			menu_additem(szMenus, szTexts, "1", 0);
			
			formatex(szTexts, charsmax(szTexts), "\d+ \y[\w%d\y] \rAP",get_pcvar_num(g_AllCvars[cvar_ap_value]));
			menu_additem(szMenus, szTexts, "2", 0);
			
			formatex(szTexts, charsmax(szTexts), "\dAk47+Deagle\r[\yGOLD\r]");
			menu_additem(szMenus, szTexts, "3", 0);
			
			formatex(szTexts, charsmax(szTexts), "\rThermal \dNightVision");
			menu_additem(szMenus, szTexts, "4", 0);
			
			formatex(szTexts, charsmax(szTexts), "\dNo Flash");
			menu_additem(szMenus, szTexts, "5", 0);
			
			formatex(szTexts, charsmax(szTexts), "\d+ \y[\w%d\y] \r$",get_pcvar_num(g_AllCvars[cvar_money_value]));
			menu_additem(szMenus, szTexts, "6", 0);
			
			menu_setprop(szMenus, MPROP_EXIT , MEXIT_ALL);
			menu_display(id, szMenus, 0);
			
		}
	}
	if(g_iLimita[id] == get_pcvar_num(g_AllCvars[cvar_limita]))
	{
		ColorChat(id, GREEN, "%s^x03 %s^x01 ai atins limita maxima(%d).", TAG, szName(id), get_pcvar_num(g_AllCvars[cvar_limita]));
		return 1;
		
	}
	return 1;
}

public CTMenu_Submenu(id, szMenus, item)
{
	if( item == MENU_EXIT || get_user_team(id) == 1)
	{
		menu_destroy(szMenus);
		return 1;
	}
	new data[6], iName[64];
	new access, callback;
	
	menu_item_getinfo(szMenus, item, access, data,5, iName, 63, callback);
	
	new key = str_to_num(data);
	
	switch(key)
	{
		case 1:
		{
			new HpVal = get_pcvar_num(g_AllCvars[cvar_hp_value]);
			g_iLimita[id] ++;
			set_user_health(id, get_user_health(id) + HpVal);
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 +%d HP ^x01", TAG, szName(id), HpVal);
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
		case 2:
		{
			new ApVal = get_pcvar_num(g_AllCvars[cvar_ap_value]);
			g_iLimita[id] ++;
			set_user_armor(id, get_user_armor(id) + ApVal);
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 +%d AP ^x01", TAG, szName(id), ApVal);
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
		case 3:
		{
			g_iLimita[id] ++;
			//strip_user_weapons(id);
			g_iWeapon[id][1] = 1;
			g_iWeapon[id][2] = 1;
			give_item(id, "weapon_knife");
			give_item(id, "weapon_ak47");
			give_item(id, "weapon_deagle");
			cs_set_user_bpammo(id, CSW_AK47, 120);
			cs_set_user_bpammo(id, CSW_DEAGLE, 70);
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 golden ak47+deagle ^x01", TAG, szName(id));
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
		case 4:
		{
			g_iLimita[id] ++;
			g_iPowerCT[id][1] = 1;
			cs_set_user_nvg(id,true);
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 nightvision thermal ^x01", TAG, szName(id));
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
		case 5:
		{
			g_iLimita[id] ++;
			g_iPowerCT[id][2] = 1;
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 anti-flash mask ^x01", TAG, szName(id));
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
		case 6:
		{
			new MoneyVal = get_pcvar_num(g_AllCvars[cvar_money_value]);
			g_iLimita[id] ++;
			cs_set_user_money(id , min((cs_get_user_money(id) + MoneyVal), 16000));
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 +%d money ^x01", TAG, szName(id), MoneyVal);
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
	}
	return 1;
}

public TSMenu_Submenu(id, szMenu, item)
{
	if( item == MENU_EXIT || get_user_team(id) != 1)
	{
		menu_destroy(szMenu);
		return 1;
	}
	new data[6], iName[64];
	
	new access, callback;
	
	menu_item_getinfo(szMenu, item, access, data,5, iName, 63, callback);
	
	new key = str_to_num(data);
	
	switch(key)
	{
		case 1:
		{
			new HpVal = get_pcvar_num(g_AllCvars[cvar_hp_value]);
			g_iLimita[id] ++;
			set_user_health(id, get_user_health(id) + HpVal);
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 +%d HP ^x01", TAG, szName(id), HpVal);
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
		case 2:
		{
			new ApVal = get_pcvar_num(g_AllCvars[cvar_ap_value]);
			g_iLimita[id] ++;
			set_user_armor(id, get_user_armor(id) + ApVal);
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 +%d AP ^x01", TAG, szName(id), ApVal);
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
		case 3:
		{
			if(pev(id, pev_weapons) & (1<<CSW_HEGRENADE) || pev(id, pev_weapons) & (1<<CSW_FLASHBANG) || pev(id, pev_weapons) & (1<<CSW_SMOKEGRENADE))
			{
				ColorChat(id, GREEN, "%s^x03 %s^x01 scapa intai de toate ^x03  grenade^x01", TAG, szName(id));
				return 1;
				
			}
			else
			{
				g_iLimita[id] ++;
				give_item(id, "weapon_hegrenade");
				give_item(id, "weapon_flashbang");
				give_item(id, "weapon_smokegrenade");
				ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 nade pack ^x01", TAG, szName(id));
				emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
			}
		}
		case 4:
		{
			g_iLimita[id] ++;
			//strip_user_weapons(id);
			g_iWeapon[id][3] = 1;
			give_item(id, "weapon_knife");
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 katana ^x01", TAG, szName(id));
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
		case 5:
		{
			g_iLimita[id] ++;
			g_iPowerT[id][1] = 1;
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales^x03 life steal ^x01", TAG, szName(id));
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}
		case 6:
		{
			g_iLimita[id] ++;
			g_iPowerT[id][2] = 1;
			ColorChat(id, GREEN, "%s^x03 %s^x01 ai ales kamikaze apasa pe ^x03 e ^x01", TAG, szName(id));
			emit_sound(id, CHAN_ITEM, szPickSound, VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
		}		
	}
	return 1;
}

public handle_say( id )
{
	new said[ 192 ];
	read_args( said, 192 );
	if( ( containi( said, "vips" ) != -1 && containi( said, "vips" ) != -1 ) || contain( said, "/vips" ) != -1 )
	set_task( 0.1, "print_viplist", id );
	
	return PLUGIN_CONTINUE;
}

public print_viplist( user ) 
{
	new adminnames[ 33 ][ 32 ];
	new message[ 256 ];
	new id, count, x, len;
	
	for( id = 1 ; id <= maxplayers ; id++ )
		if( is_user_connected( id ) )
			if( is_user_vip( id ) )
				get_user_name( id, adminnames[ count++ ], 31 )
	
	len = format( message, 255, "%s VIP's Online: ",COLORG);
	if( count > 0 )
	{
		for( x = 0 ; x < count ; x++ )
		{
			len += format( message[ len ], 255-len, "^x03%s%s", adminnames[ x ], x < ( count-1 ) ? ", ":"", COLORT );
			if( len > 96 )
			{
				print_message( user, message );
				len = format( message, 255, "%s ",COLORG );
			}
		}
		print_message( user, message );
	}
	
	else
	{
		len += format( message[ len ], 255-len, "^x01Nu sunt VIP-i online.", COLORD );
		print_message( user, message );
	}
}

print_message( id, msg[ ] )
{
	message_begin( MSG_ONE, gmsgSayText, { 0, 0, 0 }, id );
	write_byte( id );
	write_string( msg );
	message_end( );
}

public explode_me(id) {
new Float:explosion[3];
pev(id, pev_origin, explosion);

user_kill(id);   
g_iPowerT[id][2] = 0;  

// create explosion
message_begin(MSG_BROADCAST, SVC_TEMPENTITY);
write_byte(TE_EXPLOSION);
write_coord(floatround(explosion[0]));
write_coord(floatround(explosion[1]));
write_coord(floatround(explosion[2]));
write_short(g_Kamikaze);
write_byte(30);
write_byte(30);
write_byte(0);
message_end();
emit_sound(0, CHAN_ITEM, "weapons/explode3.wav", 1.0, ATTN_NORM, 0, PITCH_NORM);
fm_radius_damage(id, explosion, 1000.0, 400.0, "grenade");
}

stock fm_radius_damage(id, Float:orig[3], Float:dmg , Float:rad, wpnName[]="") {
new szClassname[33], Float:Health;
static Ent;
Ent = -1;
while((Ent = engfunc(EngFunc_FindEntityInSphere, Ent, orig, rad))) {
	pev(Ent,pev_classname,szClassname,32);
	if(equali(szClassname, "player") 
	&& is_user_connected(Ent) 
	&& is_user_alive(Ent) )
{
	pev(Ent, pev_health, Health);
	Health -= dmg;
	
	new szName[32], szName1[32];
	get_user_name(Ent, szName, charsmax(szName));
	get_user_name(id, szName1, charsmax(szName1));
	
	if(Health <= 0.0) 
		createKill(Ent, id, wpnName);
		else set_pev(Ent, pev_health, Health);
	}
}             
}

stock szFlags(id)
{
new sz_Flags = get_user_flags(id);

return sz_Flags;
}
stock szHost()
{
new sz_Host[64];

get_cvar_string("hostname", sz_Host ,charsmax(sz_Host));

return sz_Host;
}
stock szName(id)
{
new sz_Name[33];

get_user_name(id, sz_Name, charsmax(sz_Name));

return sz_Name;
}
stock createKill(id, attacker, weaponDescription[]) {
new szFrags, szFrags2;

if(id != attacker) {
	szFrags = get_user_frags(attacker);
	set_user_frags(attacker, szFrags + 1);
	logKill(attacker, id, weaponDescription);
	
	//Kill the victim and block the messages
	set_msg_block(get_user_msgid("DeathMsg"),BLOCK_ONCE);
	set_msg_block(get_user_msgid("ScoreInfo"),BLOCK_ONCE);
	user_kill(id);
	
	//user_kill removes a frag, this gives it back
	szFrags2 = get_user_frags(id);
	set_user_frags(id, szFrags2 + 1);
	
	//Replaced HUD death message
	message_begin(MSG_ALL, get_user_msgid("DeathMsg"),{0,0,0},0);
	write_byte(attacker);
	write_byte(id);
	write_byte(0);
	write_string(weaponDescription);
	message_end();
	
	//Update killers scorboard with new info
	message_begin(MSG_ALL, get_user_msgid("ScoreInfo"));
	write_byte(attacker);
	write_short(szFrags);
	write_short(get_user_deaths(attacker));
	write_short(0);
	write_short(get_user_team(attacker));
	message_end();
	
	//Update victims scoreboard with correct info
	message_begin(MSG_ALL, get_user_msgid("ScoreInfo"));
	write_byte(id);
	write_short(szFrags2);
	write_short(get_user_deaths(id));
	write_short(0);
	write_short(get_user_team(id));
	message_end();
	
	new szName[32], szName1[32];
	get_user_name(id, szName, charsmax(szName));
	get_user_name(attacker, szName1, charsmax(szName1));
}
}

// stock for log kill
stock logKill(id, victim, weaponDescription[] ) {
new namea[32],namev[32],authida[35],authidv[35],teama[16],teamv[16];

//Info On Attacker
get_user_name(id,namea,charsmax(namea));
get_user_team(id,teama,15);
get_user_authid(id,authida,34);

//Info On Victim
get_user_name(victim,namev,charsmax(namev));
get_user_team(victim,teamv,15);
get_user_authid(victim,authidv,34);

//Log This Kill
if(id != victim)
	log_message("^"%s<%d><%s><%s>^" killed ^"%s<%d><%s><%s>^" with ^"%s^"",
	namea,get_user_userid(id),authida,teama,namev,get_user_userid(victim),authidv,teamv, weaponDescription );
	else
		log_message("^"%s<%d><%s><%s>^" committed suicide with ^"%s^"",
	namea,get_user_userid(id),authida,teama, weaponDescription );
}

stock bool:is_user_vip( id )
{
	if( get_user_flags( id ) & VIP_ACCESS )
		return true;
	
	return false;
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1048\\ f0\\ fs16 \n\\ par }
*/
CLICK ! | Afiseaza codul
Ma gasesti pe Messenger la id :[/b] [email protected]
Follow me on Instagram
Fa-ti cunoscut serverul de Counter-Strike pe facebook ! 
Fa-ti reclama gratis aici Click
My Plugin Furien Guns
Cosmin
Fost moderator
Fost moderator
Posts: 9362
Joined: 06 Jul 2013, 22:08
Detinator Steam: Da
Detinator server CS: Nu
Reputatie: Fost eXtream Mod
Fost Scripter eXtreamCS
Nume anterior: scosmynnnn
Has thanked: 492 times
Been thanked: 547 times

13 Sep 2013, 13:01

Pai si ce doresti,ca nu inteleg :S
User avatar
CaTa.
Fost moderator
Fost moderator
Posts: 420
Joined: 28 Jul 2013, 15:06
Detinator Steam: Nu
Detinator server CS: In curand !
Reputatie: Fost Moderator ajutator
Location: Targu-Mures
Has thanked: 99 times
Been thanked: 19 times
Contact:

13 Sep 2013, 21:52

scosmynnnn wrote:Pai si ce doresti,ca nu inteleg :S
lasa nu intelege ca am rezolvat singur nu vezi ce scrie mai sus
CLICK ! | Afiseaza codul
Ma gasesti pe Messenger la id :[/b] [email protected]
Follow me on Instagram
Fa-ti cunoscut serverul de Counter-Strike pe facebook ! 
Fa-ti reclama gratis aici Click
My Plugin Furien Guns
Post Reply

Return to “Cereri”

  • Information
  • Who is online

    Users browsing this forum: No registered users and 21 guests