Raised This Month: $ Target: $400
 0% 

automatic jail prank


  
 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
Author Message
yagami
Senior Member
Join Date: Jan 2021
Old 11-01-2022 , 12:24   automatic jail prank
Reply With Quote #1

Can anyone help me how do I make the games to be automatic in jailbreak?


Code:
/* LEGENDA DE SKINS
* 
* BODY 4 ZOMBIE
* BODY 3 GUARDA
* BODY 2 PRISIONEIROS
* {
* 		SKINS DO BODY2 
* 		SKIN 1 = PRISIONEIRO NORMAL ( AZUL )
* 		SKIN 2 = PRISIONEIRO NORMAL ( ROXO )
* 		SKIN 3 = PRISIONEIRO NORMAL ( LARANJA )
* 		SKIN 4 = PRISIONEIRO FUNDADOR ( CINZA )
* 		SKIN 5 = PRISIONEIRO FREEDAY ( VERDE )
* 		SKIN 6 = PRISIONEIRO REBELADO ( VERMELHO )
* }
* BODY 1 GUARDA (ADM)
* 
* 
* ADMIN_LEVEL_A = MENU ADMINISTRADOR DO SERVIDOR
*/ 

#include < amxmodx >
#include < amxmisc >
#include < fakemeta >
#include < hamsandwich >
#include < engine >
#include < cstrike >
#include < csx >
#include < xs >
#include < fun > 
#include < colorchat >
#include < nvault >

#if AMXX_VERSION_NUM < 183
#include <dhudmessage>
#endif

//Abaixo sao definidas as TASK do Shop

#define TASKGRAVITY		2490000
#define TASKAPAGAO		2490000
#define TASKINVISIVEL	2690000
#define TASKGOD			2790000
#define TASKROUPATR		2890000
#define TASKROUPACT		2810000
#define TASKCLIP		2830000
#define TASK_CYLINDER	12000

#define TASK_SPEED				10500  
#define TASK_STEALTH			10200

/// TASK GAMEPLAYS
#define DAYS_TASK	54323
#define TASKCOUNT	54325
#define TASK_WELCOMEMSG	50000
#define FREEDAY_TASK			65456

/// TASK SYSTEM
#define MAX_ITENS_MENU 		9
#define m_iPrimaryWeapon 116
#define OFFSET_LINUX 		5
#define OFFSET_CSTEAM 		114
#define b_DmgGrenade 			( 1 << 24 )
#define MAX_PLAYERS		32

#define SetBit(%1,%2)		%2 |= 1<<(%1 & 31)
#define ClearBit(%1,%2)		%2 &= ~( 1<<(%1 & 31) )
#define CheckBit(%1,%2)		( %2 &  1<<(%1 & 31) )

#define is_player(%1)		( 1 <= %1 <= xMaxPlayers)

#define szTag "[MAFIA BR]"
#define PrefixoC "[MAFIA BR]"
#define MenuTag "[MAFIA BR]"
#define FUNID ""
#define IsPlayer(%1) (1 <= %1 <= g_players) 
#pragma tabsize 0
#pragma dynamic 32768 
#pragma semicolon 1
#define m_iCsTeams			114
#define m_iLinux			5

enum { FM_CS_TEAM_UNASSIGNED = 0, FM_CS_TEAM_T, FM_CS_TEAM_CT, FM_CS_TEAM_SPECTATOR };
enum SpeakersType { MUTED_ALL, MUTED_SPEAKER, ALIVE_SPEAKER, ADMIN_SPEAKER, TEAM_SPEAKER };

new const PLUGIN_NAME[] = "JailBreak MAFIA BR";
new const PLUGIN_VERSION[] = "1.0";
new const PLUGIN_AUTHOR[] = "Guizot and Ryhgaa";

new const VERSION[] 	= "";

// Mão dos Players
new GUARDA_MAO[33], PRISIONEIRO_MAO[33];

// Mao dos Prisioneiros
new VIEW_MODELT[]    	  = "models/mafiabr_models/mafiabr_hand/mafiabr_hand.mdl"; 

// Mao dos Guardas
new VIEW_MODELCT[]    	  = "models/mafiabr_models/mafiabr_taser/v_mafiabr_taser.mdl";
new PLAYER_MODELCT[]   	  = "models/mafiabr_models/mafiabr_taser/p_mafiabr_taser.mdl"; 

// Som da Mão dos Prisioneiros
new const KnuckleHit_Sounds[][] 	= { "mafiabr_sounds/TR/soco1.wav", "mafiabr_sounds/TR/soco2.wav" };

// Som da Mão do Guarda
new const ct_deploy[]     = { "mafiabr_sounds/CT/CTConvoca.wav", };
new const ct_slash1[] 	  = { "mafiabr_sounds/CT/Slash1.wav", };
new const ct_slash2[] 	  = { "mafiabr_sounds/CT/Slash2.wav", };
new const ct_wall[] 	  = { "mafiabr_sounds/CT/CTHitWall.wav" };
new const ct_hit1[] 	  = { "mafiabr_sounds/CT/CTHit1.wav",  };
new const ct_hit2[] 	  = { "mafiabr_sounds/CT/CTHit1.wav",  };
new const ct_hit3[] 	  = { "mafiabr_sounds/CT/CTHit1.wav",  };
new const ct_hit4[] 	  = { "mafiabr_sounds/CT/CTHit1.wav",  };
new const ct_stab[] 	  = { "mafiabr_sounds/CT/CTStab.wav"  };

//APAG*********O
new const MP3_APAGAO[] = "mafiabr_sounds/mafiabr_apagao.wav";

// Sirene

new const SomSirene[] = "mafiabr_sounds/Sirene.wav";

new sz_gPlayer;

new const Tempestade[] = "mafiabr_sounds/tempestade.mp3";


/** SEDATIVO **/
new xHasSedativo, xUseSedativo;
new xPlayerUseSedativo[ MAX_PLAYERS+1 ];
new cvar_time_sedativo;
new const V_SEDATIVO[] = "models/mafiabr_models/mafiabr_sedativo/v_mafiabr_sedativo.mdl";
new g_msgScreenFade;

new bool:isFreeday;
new bool:xEvento;
new bool:iGotWeapon[ 33 ][ 2 ];
//new Float:g_flLastTime[33];

new 
;
new xMaxPlayers;
new iRebel;

new iBhop[33];
new HasItem[33];
new HasItem2[33];
new HasItem3[33];
new HasItem4[33];
new bool:contagem = false;


//*~ Conterdown ~*//
new timers;
new g_iButtons[10];


enum {
	FM_TEAM_UNASSINGNED = 0,
	FM_TEAM_TR,
	FM_TEAM_CT,
	FM_TEAM_SPECTADOR
};


//*~ Box ~*//
new iHandler, i, iMaxPlayers;
new Tr_Vivos;
new iTrash[ 32 ], tNum;
new Verify;


new const v_BoxLuva[] = "models/mafiabr_models/mafiabr_boxing/v_mafiabr_boxing.mdl";
//new const p_BoxLuva[] = "models/One6jail/Box/p_boxred.mdl";

new const SomBox[] = "mafiabr_sounds/SoundBox1.mp3" ;

enum{
	DUELO = 0,
	REBELADO,
	ERROR,
	TEMPO,
	MORTE,
	CELA
}

new const sound_psm[][]=  { "mafiabr_sounds/rebel.wav", "mafiabr_sounds/mafiabr_duelo.wav", "buttons/blip2.wav", "mafiabr_sounds/Tempo.wav", "mafiabr_sounds/Morte.wav", "mafiabr_sounds/Cela.wav" };

#define MaxMusicas 3

new const MP3_FREEDAY[MaxMusicas][] = {
	"mafiabr_sounds/racionais.mp3",
	"mafiabr_sounds/weownit.mp3",
	"mafiabr_sounds/duality.mp3"
	
};


/// NATIVES REGISTRO ///

native buy_grenade(id);
native native_xDay();
native Jail_Days(id);

native Native_Esconde();
native Native_Pega();
native Native_Invisivel();
native Native_Sobrevivencia();
native Native_Tubarao();
native Native_Gladiador();
native Native_Zombie_tr();
native Native_Zombie_ct();

/// NATIVES REGISTRO ///

enum{
	LR_NONE=-1,
	LR_SOCO,
	LR_DEAGLE,
	LR_SCOUT,
	LR_AWP,
	LR_M3,
	LR_DROP,
	LR_TUBARAO_CT,
	LR_TUBARAO_TR,
	
	MAX_GAMES
};

enum{
	LR_PRISONER,
	LR_GUARD
};

enum{
	ALIVE, 
	DEAD, 
	ALL	
};

enum ( += 100 ){
	TASK_BEACON,
	TASK_ENDLR
};

new const g_szGameNames[ MAX_GAMES ][ ] = {
	"Soco",
	"Deagle \d[Tiro por Tiro]",
	"Scout \d[Sem Mira]",
	"AWP",
	"M3",
	"Drop",
	"Tubarao \d[CT]",
	"Tubarao \d[TR]"
	//"Espada \r[Novo]"
};

// Integers
////////////

new g_iCurrentGame = LR_NONE;
new g_iLastRequest[ 2 ];
new g_iCurrentPage[ 33 ];
new g_iChosenGame[ 33 ];

//new CylinderSprite

new HamHook:ForwardSecAttackScout, HamHook:UseFuncHealthChargerFwd, HamHook:UseFuncRechargeFwd;

// Booleans
///////////

new bool:g_bAlive[ 33 ];
new bool:g_bConnected[ 33 ];

new bool:g_bLastRequestAllowed;

/** EVENTOS E DATAS ESPECIAIS **/

#define HAPPY_START		12
#define HAPPY_END		20

//new g_happyhour = 0;

new szHud;

// Shop Moedas


#pragma semicolon 1


#define PICKUP_SND		"items/gunpickup2.wav"
#define HEALTH_SOUND		"items/smallmedkit1.wav"
#define ARMOR_SOUND		"items/ammopickup2.wav"
#define CLOACK_SOUND		"hornet/ag_buzz1.wav"
#define LJ_SOUND		"fvox/powermove_on.wav"
#define SOUND_NVGOFF		"items/nvg_off.wav"
#define ADMIN_ACCESS_CMD	ADMIN_KICK	
#define HAS_NVGS		(1<<0)
#define USES_NVGS		(1<<8)
#define get_user_nvg(%1)    	(get_pdata_int(%1,m_iNvg) & HAS_NVGS)

new gBunnyCost;
new gSilentCost;
new gSpeedCvar;
new gAdvertiseCvar;
new gAdvertiseTimeCvar;
new xStrondaCashCvar;
new gSavePlayerPoints;
new gVault;
new gNoclipTime;
new gJetSprite;
new gJetPackCost;
new gJetTime;
new gDeagleCost;
new gMsgItemPickup;
new gLongJumpTime;
new gMessageNVG;
new HasHe[ 33 ];
new HasBothGren[ 33 ];
new HasSilent[ 33 ];
new HasHealth[ 33 ];
new HasArmor[ 33 ];
new HasSpeed[ 33 ];
new HasGravity[ 33 ];
new HasInvis[ 33 ];
new HasNoclip[ 33 ];
new HasJet[ 33 ];
new HasDeagle[ 33 ];
new HasLongJump[ 33 ];
new HasGlow[ 33 ];
new HasNVG[ 33 ];
new gSteamID[ 32 ];
new vKey[ 64 ];
new vData[ 64 ];
new xStrondaCash[ 33 ];

const m_iNvg = 129;
const m_iLinuxDiff = 5;

new SpeakersType:mySpeaker[ 33 ];

new xLimiteReviver[33];
new checkRebel[33];

new ModelTime1[] = "models/player/mafiabr_prisioneiro1/mafiabr_prisioneiro1.mdl";
new ModelTime2[] = "models/player/mafiabr_guarda/mafiabr_guarda.mdl";


//new const ServerIP[] = "187.75.163.3";

public plugin_init() {
	
	/*new szIP[32];
	get_user_ip(0,szIP,charsmax(szIP),1);
	
	if(!equal(szIP,ServerIP))
		set_fail_state("PLUGIN PRIVADO");*/
	
	register_plugin( PLUGIN_NAME, PLUGIN_VERSION, PLUGIN_AUTHOR );
	
	register_clcmd("[Quantidade]Dinheiro","setmoney");
	register_clcmd("[DoarQuantidade]Dinheiro","xDoarDinheiro");
	register_clcmd("[SetarQuantidade]Cigarros","xSetarMoedasQ");
	register_clcmd("[RemoverQuantidade]Cigarros","xRemoverMoedas");
	
	register_clcmd("say /cela","cmdCela");
	register_clcmd("say_team /cela","cmdCela");
	register_clcmd("say /doar","xDoar");
	
	register_message( get_user_msgid( "ShowMenu" ), "message_ShowMenu" );
	
	register_clcmd( "chooseteam", "cmd_team_menu" );
	register_clcmd( "jointeam", "cmd_team_menu" );
	register_clcmd( "joinclass", "cmd_team_menu" );
	
	register_message(get_user_msgid("TextMsg"), "Message_TextMsg");
	register_message(get_user_msgid("StatusIcon"), "Message_StatusIcon");
	
	register_forward( FM_EmitSound, "FwdEmitSoundPre", 0 );
	register_forward(FM_PlayerPreThink, "PlayerPreThink");
	register_forward(FM_SetClientKeyValue, "set_client_kv");
	register_forward( FM_CmdStart, "FwdPlayerCmdStart", 1 );
	register_forward( FM_Voice_SetClientListening, "FwdSetClientListeningPre", 0 );
	
	register_event( "CurWeapon", "Event_CurWeapon", "be", "1=1" );
	register_event("HLTV", "Event_RoundStart", "a", "1=0", "2=0");
	
	RegisterHam( Ham_Spawn, "player", "FwdPlayerSpawnPost", 1 );
	RegisterHam( Ham_TakeDamage, "player", "FwdPlayerTakeDamagePre", 0 );
	RegisterHam(Ham_TraceAttack, "func_button", "FwdTraceAttack_Post", 1);
	RegisterHam( Ham_Killed, "player", "Ham_PlayerKilled_Post",	1 );
	
	register_clcmd("say /reviver", "cmdReviver");
	register_clcmd("say /shop", "CmdAcessoShop");
	register_clcmd("say /duelo", "Cmd_LastRequest");
	register_clcmd("say /celas", "CmdCelas");
	register_clcmd("say /regras","regras_motd");
	
	register_logevent( "RoundEnd", 2, "1=Round_End" );
	register_logevent( "RoundStart", 2, "1=Round_Start" );
	
	set_task( 1.0, "DaysHUD", DAYS_TASK );
	
	setup_buttons();
	
	DisableHamForward( UseFuncHealthChargerFwd );
	DisableHamForward( UseFuncRechargeFwd );
	
	/** SHOP PRISIONEIRO **/
	cvar_time_sedativo = register_cvar("shop_time_sedativo", "6");
	Tr_Vivos = register_cvar("box_num" , "5");
	
	xMaxPlayers = get_maxplayers();
	iMaxPlayers = get_maxplayers();
	
	szHud = CreateHudSyncObj( );
	
	set_task(1.0,"HudT",0,"",0,"b");
	
	register_cvar( "drshop_version", VERSION, FCVAR_SERVER | FCVAR_SPONLY );
	register_logevent( "logevent_round_start", 2, "1=Round_Start" );
	register_event( "DeathMsg", "Hook_Deathmessage", "a" );
	register_event( "CurWeapon", "HookCurWeapon", "be", "1=1" );
	
	
	RegisterHam( Ham_Player_Jump, "player", "bacon_playerJumping" );
	register_forward( FM_ClientKill, "forward_kill" );
	
	
	gBunnyCost = register_cvar( "StrondaJB_he_cost", "80" ); 
	gSilentCost = register_cvar( "StrondaJB_silent_cost", "24" );
	gJetPackCost = register_cvar( "StrondaJB_jetpack_cost", "20" );
	gSpeedCvar = register_cvar( "StrondaJB_speed_power", "400.0" );
	gNoclipTime = register_cvar( "StrondaJB_noclip_duration", "3" );
	gJetTime = register_cvar( "StrondaJB_jetpack_duration", "10" );
	gDeagleCost = register_cvar( "StrondaJB_deagle_cost", "15" );
	gAdvertiseCvar = register_cvar( "StrondaJB_advertise_message", "1" );
	gAdvertiseTimeCvar = register_cvar( "StrondaJB_advertise_time", "7.0" );
	xStrondaCashCvar = register_cvar( "StrondaJB_killer_bonuspoints", "1" );
	gSavePlayerPoints = register_cvar( "StrondaJB_save_points", "1" );
	gLongJumpTime = register_cvar( "StrondaJB_longjump_duration", "6" );
	
	/* --| Let's find/do some stuff here */
	gMsgItemPickup = get_user_msgid( "ItemPickup" );
	gMessageNVG = get_user_msgid( "NVGToggle" );
	
	/* --| Register the multilingual file */
	register_dictionary( "StrondaJBShopLang.txt" );
	/************************************************************************************/
}

public plugin_precache()
{	
	precache_model("models/player/mafiabr_prisioneiro1/mafiabr_prisioneiro1.mdl");
	precache_model("models/player/mafiabr_guarda/mafiabr_guarda.mdl");
	precache_model("models/player/mafiabr_guarda/mafiabr_guardaT.mdl");	
	
	precache_sound( "mafiabr_sounds/racionais.mp3" );
	precache_sound( "mafiabr_sounds/weownit.mp3" );
	precache_sound( "mafiabr_sounds/duality.mp3" );
	
	engfunc( EngFunc_PrecacheModel, V_SEDATIVO );
	
	precache_model(VIEW_MODELT);
	precache_model(VIEW_MODELCT); 
	precache_model(PLAYER_MODELCT);
	precache_model(ModelTime1);
	precache_model(ModelTime2);
	
	precache_sound(SomSirene);
	precache_sound(SomBox);
	precache_model(v_BoxLuva);
	//precache_model(p_BoxLuva)
	precache_sound(Tempestade);
	
	precache_sound(ct_deploy);
	precache_sound(ct_slash1);
	precache_sound(ct_slash2);
	precache_sound(ct_stab);
	precache_sound(ct_wall);
	precache_sound(ct_hit1);
	precache_sound(ct_hit2);
	precache_sound(ct_hit3);
	precache_sound(ct_hit4);
	
	precache_sound(MP3_APAGAO);
	
	gJetSprite = precache_model( "sprites/explode1.spr" );
	precache_sound( PICKUP_SND );
	precache_sound( HEALTH_SOUND );
	precache_sound( ARMOR_SOUND );
	precache_sound( CLOACK_SOUND );
	precache_sound( LJ_SOUND );
	
	//precache_generic(MP3_FREEDAY);
	
	for( new iMusic = 0; iMusic < sizeof( MP3_FREEDAY ); iMusic++ )
	{
		new len[150];
		formatex(len,charsmax(len),"sound/%s",MP3_FREEDAY[iMusic]);
		
		precache_sound(MP3_FREEDAY[iMusic]);
		precache_generic(len);
	}
	
	//CylinderSprite = engfunc(EngFunc_PrecacheModel, "sprites/shockwave.spr");
	
	UseFuncHealthChargerFwd	= RegisterHam(Ham_Use, "func_healthcharger", "BlockUseOnDuelPre");
	UseFuncRechargeFwd  = RegisterHam(Ham_Use, "func_recharge", "BlockUseOnDuelPre");
	ForwardSecAttackScout = RegisterHam( Ham_Weapon_SecondaryAttack, "weapon_scout", "OnSecondaryAttack" );
	DisableHamForward(UseFuncHealthChargerFwd);
	DisableHamForward(UseFuncRechargeFwd);
	DisableHamForward(ForwardSecAttackScout); 
	
	for(new ssf = 0; ssf < sizeof(sound_psm); ssf++)
		engfunc(EngFunc_PrecacheSound, sound_psm[ ssf ]);
	
	for( new khs = 0; khs < sizeof( KnuckleHit_Sounds ); khs++ )
		engfunc( EngFunc_PrecacheSound, KnuckleHit_Sounds[ khs ] );
}
public regras_motd( id ) {
	show_motd( id, "https://headgames.net.br/mafia/cstrike/regras.html" );
}
public plugin_cfg()
{
	new iCfgDir[ 32 ], iFile[ 192 ];
	
	get_configsdir( iCfgDir, charsmax( iCfgDir ) );
	formatex( iFile, charsmax( iFile ), "%s/StrondaJBShop_Cfg.cfg", iCfgDir );
	
	if( !file_exists( iFile ) )
	{
		server_print( "[ ONE6 ] %L", LANG_SERVER, "DRSHOP_SVPRINT", iFile );
		write_file( iFile, " ", -1 );
	}
	else
	{		
		server_print( "[ ONE6 ] %L", LANG_SERVER, "DRSHOP_SVPRINT_DONE", iFile );
		server_cmd( "exec %s", iFile );
	}
	server_cmd( "sv_maxspeed 99999999.0" );
}
public client_connect(id)
{
	set_user_info(id, "_vgui_menus", "0");
	
	HasHe[ id ] = false;
	HasBothGren[ id ] = false;
	HasSilent[ id ] = false;
	HasHealth[ id ] = false;
	HasArmor[ id] = false;
	HasSpeed[ id ] = false;
	HasGravity[ id ] = false;
	HasInvis[ id ] = false;
	HasNoclip[ id ] = false;
	HasJet[ id ] = false;
	HasDeagle[ id ] = false;
	HasLongJump[ id ] = false;
	HasGlow[ id ] = false;
	HasNVG[ id ] = false;
	
	/* --| Load client points */
	load_client_points( id );
}

public client_putinserver( id )
{
	g_iCurrentPage[ id ] = 0;
	
	g_bConnected[ id ] = true;
	mySpeaker[ id ] = MUTED_ALL;	
	
	set_task(5.0, "AnuncioC",id);
	
	load_client_points( id );
	
	if( get_pcvar_num( gAdvertiseCvar ) != 0 )
	{
		/* --| Need to set task, 7 default because need to wait for player choosing a team or something */
		set_task( get_pcvar_float( gAdvertiseTimeCvar ), "ShowPlayerInfo", id );
	}
	
}

public client_disconnected( id )
{
	g_bConnected[ id ] = false;
	set_user_info(id, "_vgui_menus", "1");
	
	if( g_bAlive[ id ] )
		g_bAlive[ id ] = false;
	
	if( id == g_iLastRequest[ LR_PRISONER ] || id == g_iLastRequest[ LR_GUARD ] )
	{
		EndLastRequest( id == g_iLastRequest[ LR_PRISONER ] ? g_iLastRequest[ LR_GUARD ] : g_iLastRequest[ LR_PRISONER ], id );
	}
	
	if(g_iCurrentGame != LR_NONE)
	{
		DisableHamForward( UseFuncHealthChargerFwd );
		DisableHamForward( UseFuncRechargeFwd );
	}
	remove_task( id + TASK_ENDLR );
	
	HasHe[ id ] = false;
	HasBothGren[ id ] = false;
	HasSilent[ id ] = false;
	HasHealth[ id ] = false;
	HasArmor[ id] = false;
	HasSpeed[ id ] = false;
	HasGravity[ id ] = false;
	HasInvis[ id ] = false;
	HasNoclip[ id ] = false;
	HasJet[ id ] = false;
	HasDeagle[ id ] = false;
	HasLongJump[ id ] = false;
	HasGlow[ id ] = false;
	HasNVG[ id ] = false;
	
	/* --| If player is not a bot, let's save the points */
	if( get_pcvar_num( gSavePlayerPoints ) != 0 && !is_user_bot( id ) )
	{
		/* --| Save player points is cvar is 1 */
		save_client_points( id );
	}
}
public AnuncioC(id)
{
	new szName[32];
	get_user_name(id,szName,charsmax(szName));
	
	client_cmd(0, "spk buttons/blip2.wav");
	
	if(get_user_flags(id) & ADMIN_LEVEL_F  )
	{
		ColorChat(0,GREEN,"%s ^1VIP ^4%s ^1Entrou no Servidor ( ^3Cigarros^1: ^4%d ^1)", szTag, szName, xStrondaCash[ id ]); 
	}
	if(get_user_flags(id) & ADMIN_LEVEL_E )
	{
		ColorChat(0,GREEN,"%s ^1ADMIN ^4%s ^1Entrou no Servidor ( ^3Cigarros^1: ^4%d ^1)", szTag, szName, xStrondaCash[ id ]); 
	}
	if(get_user_flags(id) & ADMIN_LEVEL_C)
	{
		ColorChat(0,GREEN,"%s ^1MASTER ^4%s ^1Entrou no Servidor ( ^3Cigarros^1: ^4%d ^1)", szTag, szName, xStrondaCash[ id ]); 
	}
	if(get_user_flags(id) & ADMIN_LEVEL_B)
	{
		ColorChat(0,GREEN,"%s ^1STAFF ^4%s ^1Entrou no Servidor ( ^3Cigarros^1: ^4%d ^1)", szTag, szName, xStrondaCash[ id ]); 
	}
	if(get_user_flags(id) & ADMIN_LEVEL_G)
	{
		ColorChat(0,GREEN,"%s ^1DONO ^4%s ^1Entrou no Servidor ( ^3Cigarros^1: ^4%d ^1)", szTag, szName, xStrondaCash[ id ]); 
	}
	if(get_user_flags(id) & ADMIN_LEVEL_D)
	{
		ColorChat(0,GREEN,"%s ^1ADMIN GIRL ^4%s ^1Entrou no Servidor ( ^3Cigarros^1: ^4%d ^1)", szTag, szName, xStrondaCash[ id ]); 
	}
	if(get_user_flags(id) & ADMIN_USER)
	{
		ColorChat(0,GREEN,"%s ^1JOGADOR ^4%s ^1Entrou no Servidor ( ^3Cigarros^1: ^4%d ^1)", szTag, szName, xStrondaCash[ id ]);
	}
	return PLUGIN_HANDLED;
}
public get_cash(id)
{
	//ColorTAG(id, "%s Voce tem^4 %i ^1Cash", szTag, client_get_cash(id))
}
public CmdCelas(id)
{
	if(get_user_flags(id) & ADMIN_KICK) {
		cmdCela(id);
	}
}
public DaysHUD(Taskid)
{
	static szHudDays[ 128 ];
	
	if( isFreeday == true )
	{
		formatex( szHudDays, 127, "[MAFIA BR] JAILBREAK 2K22 ®^nDIA : %d [FREEDAY]", g_iCurrentDay );
		set_dhudmessage(255, 0, 0, -1.0, 0.02, 1, 5.1, 2.5);
	}
	else if(g_iCurrentGame == LR_AWP ||  g_iCurrentGame == LR_DEAGLE ||  g_iCurrentGame == LR_DROP
		||  g_iCurrentGame == LR_M3 ||  g_iCurrentGame == LR_SCOUT ||  g_iCurrentGame == LR_SOCO || g_iCurrentGame == LR_TUBARAO_CT || g_iCurrentGame == LR_TUBARAO_TR ){
		formatex( szHudDays, 127, "[MAFIA BR] JAILBREAK 2K22 ®^nDIA : %d [DUELO INICIADO]", g_iCurrentDay );
		set_dhudmessage(0, 255, 255, -1.0, 0.02, 1, 5.1, 2.5);
	}
	else if( xEvento == true )
	{
		formatex( szHudDays, 127, "[MAFIA BR] JAILBREAK 2K22 ®^nDIA : %d [MODO EVENTO ATIVADO]", g_iCurrentDay );
		set_dhudmessage(255, 0, 0, -1.0, 0.02, 1, 5.1, 2.5);
	}	
	else if( Native_Invisivel() )
	{
		formatex( szHudDays, 127, "[MAFIA BR] JAILBREAK 2K22 ®^nDIA : %d [BRINCADEIRA]^n[NIGHTCRAWLER]", g_iCurrentDay );
		set_dhudmessage(255, 0, 0, -1.0, 0.02, 1, 5.1, 2.5);
	}
	else if( Native_Pega() )
	{
		formatex( szHudDays, 127, "[MAFIA BR] JAILBREAK 2K22 ®^nDIA : %d [BRINCADEIRA]^n[PEGA-PEGA]", g_iCurrentDay );
		set_dhudmessage(255, 0, 0, -1.0, 0.02, 1, 5.1, 2.5);
	}
	else if( Native_Esconde() )
	{
		formatex( szHudDays, 127, "[MAFIA BR] JAILBREAK 2K22 ®^nDIA : %d [BRINCADEIRA]^n[ESCONDE-ESCONDE]", g_iCurrentDay );
		set_dhudmessage(255, 0, 0, -1.0, 0.02, 1, 5.1, 2.5);
	}
	else if( Native_Sobrevivencia() )
	{
		formatex( szHudDays, 127, "[MAFIA BR] JAILBREAK 2K22 ®^nDIA : %d [BRINCADEIRA]^n[SOBREVIVENCIA]", g_iCurrentDay );
		set_dhudmessage(255, 0, 0, -1.0, 0.02, 1, 5.1, 2.5);
	}
	else if( Native_Tubarao() )
	{
		formatex( szHudDays, 127, "[MAFIA BR] JAILBREAK 2K22 ®^nDIA : %d [BRINCADEIRA]^n[TUBARAO]", g_iCurrentDay );
		set_dhudmessage(255, 0, 0, -1.0, 0.02, 1, 5.1, 2.5);
	}
    else if( Native_Gladiador() )
	{
		formatex( szHudDays, 127, "[MAFIA BR] JAILBREAK 2K22 ®^nDIA : %d [BRINCADEIRA]^n[GLADIADOR]", g_iCurrentDay );
		set_dhudmessage(255, 0, 0, -1.0, 0.02, 1, 5.1, 2.5);
	}
    else if( Native_Zombie_tr() )
	{
		formatex( szHudDays, 127, "[MAFIA BR] JAILBREAK 2K22 ®^nDIA : %d [BRINCADEIRA]^n[ZOMBIE TR]", g_iCurrentDay );
		set_dhudmessage(255, 0, 0, -1.0, 0.02, 1, 5.1, 2.5);
	}
    else if( Native_Zombie_ct() )
	{
		formatex( szHudDays, 127, "[MAFIA BR] JAILBREAK 2K22 ®^nDIA : %d [BRINCADEIRA]^n[ZOMBIE CT]", g_iCurrentDay );
		set_dhudmessage(255, 0, 0, -1.0, 0.02, 1, 5.1, 2.5);
	}
	else
	{
		formatex( szHudDays, 127, "[MAFIA BR] JAILBREAK 2K22 ®^nDIA : %d [REGRA NORMAL]", g_iCurrentDay );
		set_dhudmessage(0, 255, 0, -1.0, 0.02, 1, 5.1, 2.5);
	}
	
	show_dhudmessage( 0, szHudDays );
	
	remove_task(Taskid);
	set_task(2.5, "DaysHUD", Taskid);
}


public RoundStart() {
	isFreeday = false;
	contagem = false;
	StopSound();
	
	switch( g_iCurrentDay )
	{
		case 1, 11, 21, 31, 41, 51:
		{
			isFreeday = true;
			contagem = true;
			timers = 15;
			set_task(0.1, "Simples_Countdown", TASKCOUNT);
			set_task(1.0, "SireneF");
			set_task(18.3, "MusicFreday", FREEDAY_TASK);
		}
	}
	set_task( 0.5, "DaysHUD", DAYS_TASK );
	
	for(new i = 1; i <= xMaxPlayers; i++) 
	{
		if(is_user_connected(i) && is_user_alive(i) && fm_get_user_team(i) == FM_TEAM_TR && isFreeday == true)
		{
			entity_set_int(i, EV_INT_body, 1);
			entity_set_int(i, EV_INT_skin, 5);
			fm_set_user_rendering(i, kRenderFxGlowShell, 0, 255, 0, kRenderNormal, 16);		
		}
	}
}
public SireneF(id)
{
	client_cmd(0, "spk %s", SomSirene);
}
public MusicFreday(id)
{
	//client_cmd( 0, "mp3 play %s", MP3_FREEDAY );
	
	new szRandom = random_num(0,sizeof(MP3_FREEDAY) - 1);
	
	new players[32], num;
	get_players(players, num);
	
	for(new i = 0 ; i < num ; i++)
	{
		if(is_user_connected(players[i]))
		{
			client_cmd(players[i],"speak %s",MP3_FREEDAY[szRandom]);
			client_cmd(players[i], "mp3 play ^"sound/%s^"", MP3_FREEDAY[szRandom]);
		}
	}
}
public StopSound()
{
	client_cmd( 0, "stopsound" );
	client_cmd(0,"mp3 stop");
}
public cmdCela(id)
{
	new szName[32];
	get_user_name(id, szName, charsmax(szName));
	if(cs_get_user_team(id) == CS_TEAM_CT)
	{
		ColorTAG(0, "\g%s \nGuarda \t%s \nAbriu as Celas", szTag, szName);
		Push_Button();
	}
	else if(get_user_flags(id) & ADMIN_KICK)
	{
		ColorTAG(0, "\g%s \nAdmin \t%s \nAbriu as Celas", szTag, szName);
		Push_Button();
	}
}
public RoundEnd() 
{
	show_menu(0, 0, "^n", 1);					
	
	remove_task( DAYS_TASK );	
	remove_task( TASKCOUNT );	
	remove_task(TASKGRAVITY);
	remove_task(TASKAPAGAO);
	remove_task(TASKINVISIVEL);
	remove_task(TASKGOD);
	remove_task(TASKROUPACT);
	remove_task(TASKROUPATR);
	remove_task(TASKCLIP);
	remove_task( FREEDAY_TASK );
	g_iCurrentDay++; 
	
	client_cmd(0, "mp3 stop");
	client_cmd(0, "stop mp3");
	
	for(new i = 1; i <= xMaxPlayers; i++)
	{
		if(!is_user_connected(i))
			continue;
		
		fm_set_user_rendering(i, kRenderFxGlowShell, 0, 0, 0, kRenderNormal, 0);	
		xLimiteReviver[i] = 0;
	}
}

public Event_RoundStart()
{		
	iRebel = 0;
	xUseSedativo = 0;
	xHasSedativo = 0;
	
	remove_task( TASK_WELCOMEMSG );
}

/*
public welcome_msg()
{
	static iHora[ 3 ];
	get_time("%H", iHora, charsmax( iHora ));
	
	if( str_to_num( iHora ) >= HAPPY_START || str_to_num( iHora ) <= HAPPY_END )
	{
		if( g_happyhour == 0 )
		{
			server_cmd("hostname ^"-= Presidio SkyFall ( HAPPY HOUR ) =-@ MundiGames.com.br^"")
			
			set_cvar_num("set_cash_cvar", 10)
		}
		
		g_happyhour = 1;
		ColorTAG(0, "^4%s ^3( Happy Hour ) ^4+Cash x3^1 ate as^4 %dh00! da Noite", szTag, HAPPY_END)
	}
	
	else
	{
		if( g_happyhour == 1 )
		{
			server_cmd("hostname ^"-= Presidio SkyFall =-@ MundiGames.com.br^"")
			
			set_cvar_num("set_cash_cvar", 3)
			
			ColorTAG(0, "^4%s ^3( Happy Hour Acabou ) ^1comeca novamente as^4 %dh00!", szTag, HAPPY_START)
		}
		
		g_happyhour = 0
	}
}
*/

public Event_CurWeapon( id ) {
	if( !is_user_connected( id ) )
		return PLUGIN_HANDLED;
	
	new iWeaponID = read_data( 2 );
	
	if( fm_get_user_team( id ) == FM_TEAM_TR) 
	{
		if( PRISIONEIRO_MAO[id] && iWeaponID == CSW_KNIFE ) 
		{
			set_pev(id, pev_viewmodel2, VIEW_MODELT);
			set_pev( id, pev_weaponmodel, 0 );			
		}
		else if( CheckBit( id,xUseSedativo ) && !xPlayerUseSedativo[ id ]){
			set_pev( id, pev_viewmodel2, V_SEDATIVO );
			set_pev( id, pev_weaponmodel, 0 );
		}
	}	
	else 
	{
		if( fm_get_user_team( id ) == FM_TEAM_CT) 
		{
			if( GUARDA_MAO[id] && iWeaponID == CSW_KNIFE ) 
			{
				set_pev(id, pev_viewmodel2, VIEW_MODELCT);
				set_pev(id, pev_weaponmodel2, PLAYER_MODELCT);
			}
		}
	}
	return PLUGIN_CONTINUE;
}

public FwdEmitSoundPre( id, channel, const sample[], Float:volume, Float:attn, flags, pitch ) 
{
	if( !is_player( id ) || !is_user_alive( id ) )
		return FMRES_IGNORED;
	
	if( equali( sample, "items/flashlight1.wav" ) ) {
		client_cmd( id, "spk items/flashlight1.wav" );
		return FMRES_SUPERCEDE;
	}
	
	if( equali( sample, "common/wpn_denyselect.wav" ) ) {
		client_cmd( id, "spk common/wpn_denyselect.wav" );
		return FMRES_SUPERCEDE;
	}
	
	if( GUARDA_MAO[id] && PRISIONEIRO_MAO[id] )
	{
		if(fm_get_user_team(id) == FM_TEAM_CT)
		{
			if (equal(sample[8], "kni", 3))
			{
				if (equal(sample[14], "sla", 3)) 
				{
					switch (random_num(1, 2))
					{
						case 1: engfunc(EngFunc_EmitSound, id, channel, ct_slash1, volume, attn, flags, pitch);
							case 2: engfunc(EngFunc_EmitSound, id, channel, ct_slash2, volume, attn, flags, pitch);
						}
					
					return FMRES_SUPERCEDE;
				}
				if(equal(sample,"weapons/knife_deploy1.wav"))
				{
					engfunc(EngFunc_EmitSound, id, channel, ct_deploy, volume, attn, flags, pitch);
					return FMRES_SUPERCEDE;
				}
				if (equal(sample[14], "hit", 3))
				{
					if (sample[17] == 'w')
					{
						engfunc(EngFunc_EmitSound, id, channel, ct_wall, volume, attn, flags, pitch);
						return FMRES_SUPERCEDE;
					}
					else 
					{
						switch (random_num(1, 4))
						{
							case 1: engfunc(EngFunc_EmitSound, id, channel, ct_hit1, volume, attn, flags, pitch);
								case 2: engfunc(EngFunc_EmitSound, id, channel, ct_hit2, volume, attn, flags, pitch);
								case 3: engfunc(EngFunc_EmitSound, id, channel, ct_hit3, volume, attn, flags, pitch);
								case 4: engfunc(EngFunc_EmitSound, id, channel, ct_hit4, volume, attn, flags, pitch);
							}
						
						return FMRES_SUPERCEDE;
					}
				}
				if (equal(sample[14], "sta", 3)) 
				{
					engfunc(EngFunc_EmitSound, id, channel, ct_stab, volume, attn, flags, pitch);
					return FMRES_SUPERCEDE;
				}
			}
		}	
		
		if(fm_get_user_team(id) == FM_TEAM_TR)
		{
			if( sample[ 0 ] == 'w' && sample[ 1 ] == 'e' && sample[ 8 ] == 'k' && sample[ 9 ] == 'n' )
			{	
				if( sample[15] == 't' )
				{
					engfunc( EngFunc_EmitSound, id, channel, KnuckleHit_Sounds[ 1 ], volume, attn, flags, pitch );			
					return FMRES_SUPERCEDE;
				}
				
				switch( sample[ 17 ] )
				{
					case '1', '3':{
						engfunc( EngFunc_EmitSound, id, channel,KnuckleHit_Sounds[ 0 ], volume, attn, flags, pitch );
						return FMRES_SUPERCEDE;
					}
					case '2', '4': {
						engfunc( EngFunc_EmitSound, id, channel, KnuckleHit_Sounds[ 1 ], volume, attn, flags, pitch );
						return FMRES_SUPERCEDE;
					}
					case 'w': {
						engfunc( EngFunc_EmitSound, id, channel, KnuckleHit_Sounds[ 0 ], volume, attn, flags, pitch );
						return FMRES_SUPERCEDE;
					}
				}
			}
		}
	}
	return FMRES_IGNORED;
}

public FwdPlayerSpawnPost( id ) 
{
	if( !is_user_alive( id ) )
		return HAM_IGNORED;
	
	g_bAlive[ id ] = true;
	
	HasItem[id] = false;	
	HasItem2[id] = false;	
	HasItem3[id] = false;	
	HasItem4[id] = false;	
	
	fm_strip_player_weapons(id);
	fm_give_item(id, "weapon_knife");
	
	if(fm_get_user_team(id) == FM_TEAM_CT)
	{
		set_user_info(id, "model", "mafiabr_guarda");	
		
		if(is_user_admin(id))
			entity_set_int(id, EV_INT_body, 1);
		
		else
			entity_set_int(id, EV_INT_body, 3);
		
		fm_set_user_health(id, 100.0);		
		
		iGotWeapon[ id ][ 0 ] = false;
		iGotWeapon[ id ][ 1 ] = false;
		
		ShowWeapons( id );
	}
	else if(fm_get_user_team(id) == FM_TEAM_TR)
	{
		set_user_info(id, "model", "mafiabr_prisioneiro1");		
		entity_set_int(id, EV_INT_body, 2); //Essa skin n*********o muda a skin de STARTROUND e nem quando acaba o ROUND.
		
		new authid[51];
		get_user_authid(id, authid, 50);
		
		if(equal(authid, FUNID)) 
			entity_set_int(id, EV_INT_skin, 0); //Essa skin n*********o muda a skin de STARTROUND e nem quando acaba o ROUND.
			
		else //SKIN STARTROUND
			entity_set_int(id, EV_INT_skin, 0);
		
		iBhop[id] = false;
	}
	
	//client_set_cash(id, client_get_cash(id) + 30)
	
	GUARDA_MAO[id] = 1;
	PRISIONEIRO_MAO[id] = 1;
	
	set_task(0.9,"ResetPlayerStuffs",id);
	
	return HAM_IGNORED;
} 


public Message_StatusIcon( msgid, msgdest, id)
{
	static szMsg[ 8 ];
	get_msg_arg_string( 2, szMsg, 7 );
	
	if( equal( szMsg, "buyzone" ) && get_msg_arg_int( 1 ) )
	{
		set_pdata_int( id, 235, get_pdata_int( id, 235 ) & ~( 1 << 0 ), OFFSET_LINUX );
		return PLUGIN_HANDLED;
	}
	
	return PLUGIN_CONTINUE;
} 

public Message_TextMsg( msg_id, msg_dest, id)
{
	static message[ 20 ];
	get_msg_arg_string(2, message, sizeof message -1);
	
	if( equali( message, "#Game_will_restart_" ) )
	{
		client_print( id, print_center, "" );		
		g_iCurrentDay = 1;
		remove_task( DAYS_TASK );			
		remove_task( TASKCOUNT );			
	}
	
	return PLUGIN_CONTINUE;
}

public Ham_PlayerKilled_Post( iVictim, iKiller, iShouldGib )
{	
	g_bAlive[ iVictim ] = false;
	
	if( iVictim == g_iLastRequest[ LR_PRISONER ] )
	{
		EndLastRequest( g_iLastRequest[ LR_GUARD ], iVictim );
		DisableHamForward( UseFuncHealthChargerFwd );
		DisableHamForward( UseFuncRechargeFwd );
		
	}
	
	else if( iVictim == g_iLastRequest[ LR_GUARD ] )
	{
		EndLastRequest( g_iLastRequest[ LR_PRISONER ], iVictim );
		DisableHamForward( UseFuncHealthChargerFwd );
		DisableHamForward( UseFuncRechargeFwd );
	}
	
	if( !g_bLastRequestAllowed && cs_get_user_team( iVictim ) == CS_TEAM_T )
	{
		if( get_playercount( CS_TEAM_T, ALIVE ) == 1 )
		{
			g_bLastRequestAllowed = true;
		}
	}
	new iTempid;
	set_task( 0.1, "ResetPlayerStuffs", iVictim );
}
public ResetPlayerStuffs( id ) 
{
	if( !is_user_alive( id ) )
		return PLUGIN_HANDLED;
	
	switch( fm_cs_get_user_team( id ) ) {
		case FM_CS_TEAM_T: {							
			
			if( get_user_flags( id ) & ADMIN_BAN ) {
				if( mySpeaker[ id ] != TEAM_SPEAKER )
					mySpeaker[ id ] = ADMIN_SPEAKER;
			}
			
			else if( mySpeaker[ id ] == MUTED_ALL )
				mySpeaker[ id ] = TEAM_SPEAKER;
			
			else if( mySpeaker[ id ] == ALIVE_SPEAKER )
				mySpeaker[ id ] = TEAM_SPEAKER;
			
			else	
				mySpeaker[ id ] = mySpeaker[ id ] != TEAM_SPEAKER ? MUTED_SPEAKER : TEAM_SPEAKER;
		}
		
		case FM_CS_TEAM_CT: {			
			iGotWeapon[ id ][ 0 ] = false;
			iGotWeapon[ id ][ 1 ] = false;
			
			
			
			if( get_user_flags( id ) & ADMIN_BAN ) 
				mySpeaker[ id ] = ADMIN_SPEAKER;
			
			else 
				mySpeaker[ id ] = ALIVE_SPEAKER;
			
		}
	}
	
	return PLUGIN_HANDLED;
}
public OnSecondaryAttack( const entity )
	return HAM_SUPERCEDE;

public BlockUseOnDuelPre( iButton, caller, activator, use_type, Float:value )
{
	return g_iCurrentGame != LR_NONE ? HAM_SUPERCEDE : HAM_IGNORED;
}

public FwdPlayerCmdStart( id, uc, iRandom ) 
{
	if(!is_player( id ) )
		return FMRES_IGNORED;
	
	if(!is_user_alive(id))
		return FMRES_IGNORED;
	
	if(is_user_alive(id) && g_iCurrentGame == LR_DEAGLE)
	{
		cs_set_user_bpammo(id, CSW_DEAGLE, 1);
	}
	
	return FMRES_IGNORED;
}
public FwdSetClientListeningPre( iReceiver, iSender, bool:Listen ) {
	if( !is_player( iSender ) || !is_player( iReceiver ) )
		return FMRES_IGNORED;
	
	if( mySpeaker[ iReceiver ] == MUTED_ALL )
		Listen = false;
	
	else if( mySpeaker[ iSender ] == ADMIN_SPEAKER )
		Listen = true;
	
	else if( mySpeaker[ iSender ] == TEAM_SPEAKER && fm_cs_get_user_team( iSender ) == fm_cs_get_user_team( iReceiver ) && mySpeaker[ iReceiver ] == TEAM_SPEAKER ) {
		if( is_user_alive( iReceiver ) && is_user_alive( iSender ) || !is_user_alive( iReceiver ) && !is_user_alive( iSender ) )
			Listen = true;
		
		else Listen = false;
	}
	
	else if( mySpeaker[ iSender ] == ALIVE_SPEAKER ) {
		if( is_user_alive( iSender ) )
			Listen = true;
		else
			Listen = false;
	}
	
	else if( mySpeaker[ iSender ] == MUTED_SPEAKER )
		Listen = false;
	
	else
		Listen = false;
	
	engfunc( EngFunc_SetClientListening, iReceiver, iSender, Listen );
	
	return FMRES_SUPERCEDE;
}

public FwdPlayerTakeDamagePre( iVictim, Weapon, iAttacker, Float:flDamage, DamageBits ) 
{
	if( iVictim == iAttacker )
		return HAM_IGNORED;
	
	if( is_player( iVictim ) ) 
	{		
		if( is_player( iAttacker ) ) {	
			if( !is_user_connected( iAttacker ) || !is_user_connected( iVictim ) )
				return HAM_IGNORED;
			
			new iAttackerWeapon = get_user_weapon( iAttacker ), iAttackerTeam = get_user_team( iAttacker ), iVictimTeam = get_user_team( iVictim );
			
			if( iAttackerTeam == 1 && iVictimTeam == 2 ) 
			{							
				if( is_user_alive( iAttacker ) && !CheckBit( iAttacker, iRebel ) && isFreeday == false && g_iCurrentGame == LR_NONE) 
				{					
					SetBit( iAttacker,iRebel );
					
					new szName[32];
					get_user_name(iAttacker, szName, charsmax(szName));
					
					checkRebel[iAttacker] = true;
					
					//fm_set_user_rendering( iAttacker, kRenderFxGlowShell, 255, 0, 0, kRenderNormal, 20 );
					entity_set_int(iAttacker, EV_INT_body, 1);
					entity_set_int(iAttacker, EV_INT_skin, 6);
					
					ColorTAG( iAttacker, "^4%s ^1Voce esta ^4REBELADO^1 pois atacou um ^4Guarda, ^1e agora podera ser ^4morto.", szTag );
					ColorTAG(0, "^4%s ^1O Prisioneiro ^4%s ^1REBELOU!", szTag, szName );
					
					EmitSound(0, REBELADO);
				}
			}
			
			if( iAttackerWeapon == CSW_KNIFE && !( DamageBits & b_DmgGrenade ) ) {
				static bool:CanDamage;
				
				CanDamage = false;
				
				if( get_user_team( iAttacker ) != get_user_team( iVictim ) )
					CanDamage = true;
				
				if( CanDamage ) {
					static Float:flMinRand, Float:flMaxRand;
					
					if( flDamage < 30.0 ) {
						flMinRand = -30.0;
						flMaxRand = 30.0;	
					}
					
					else if( flDamage < 90.0 ) {					
						flMinRand = -60.0;
						flMaxRand = 60.0;
					}
					
					else {
						flMinRand = -90.0;
						flMaxRand = 90.0;
					}
					
					new Float:vecRandomFloat[ 3 ];
					vecRandomFloat[ 0 ] = random_float( flMinRand, flMaxRand );
					vecRandomFloat[ 1 ] = random_float( flMinRand, flMaxRand );
					vecRandomFloat[ 2 ] = random_float( flMinRand, flMaxRand );
					
					//set_pev( iVictim, pev_punchangle, vecRandomFloat );
				}	
			}
			/** SEDATIVO **/
			if( fm_get_user_team( iAttacker ) == FM_TEAM_TR && fm_get_user_team( iVictim ) == FM_TEAM_CT && CheckBit( iAttacker,xUseSedativo ) && !xPlayerUseSedativo[ iAttacker ]){
				if( get_user_weapon( iAttacker ) == CSW_KNIFE ){
					set_pev( iAttacker, pev_viewmodel2, VIEW_MODELT );
					set_pev( iAttacker, pev_weaponmodel, 0 );
					
					SetHamParamFloat(4, 3.000000);
					make_ScreenFade( iVictim , get_pcvar_float( cvar_time_sedativo ), 0, 0, 0, 255);
					
					xPlayerUseSedativo[ iAttacker ] = 1;
				}
				
				return HAM_HANDLED;
			}
		}
	}
	
	if( !( 1 <= iAttacker <= xMaxPlayers ) )
		return HAM_IGNORED;
	
	new bool:g_bVictimLR = iVictim == g_iLastRequest[ LR_PRISONER ] || iVictim == g_iLastRequest[ LR_GUARD ];
	new bool:g_bAttackerLR = iAttacker == g_iLastRequest[ LR_PRISONER ] || iAttacker == g_iLastRequest[ LR_GUARD ];
	
	if( g_bVictimLR && !g_bAttackerLR )
	{
		return HAM_SUPERCEDE;
	}
	
	else if( !g_bVictimLR && g_bAttackerLR )
	{
		return HAM_SUPERCEDE;
	}
	return HAM_IGNORED;
}

public ShowWeapons(id)
{
	if( iGotWeapon[ id ][ 0 ] ) {
		if( !iGotWeapon[ id ][ 1 ] )
			
		return PLUGIN_HANDLED;
	}
	
	new menu = menu_create("\r[MAFIA BR] \d| Menu de Armas", "MenuP_handler");
	menu_additem(menu, "\r› \wM4A1 \d+ DEAGLE + COLETE", "1", 0);
	menu_additem(menu, "\r› \wAK47 \d+ DEAGLE + COLETE", "2", 0);
	menu_additem(menu, "\r› \wAWP \d+ DEAGLE + COLETE", "3", 0);
	menu_additem(menu, "\r› \wM3 \d+ DEAGLE + COLETE", "4", 0);
	menu_additem(menu, "\r› \wFAMAS \d+ DEAGLE + COLETE", "5", 0);
	
	menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
	
	menu_display(id, menu, 0);
	
	return PLUGIN_HANDLED;
}

public MenuP_handler(id, menu, item)
{
	if( item == MENU_EXIT )
	{
		menu_destroy(menu);
		return PLUGIN_HANDLED;
	}
	
	if( UserHasWeapons( id, 1 ) || iGotWeapon[ id ][ 0 ] ) {
		menu_destroy(menu );
		return PLUGIN_HANDLED;	
	}
	
	if(!(cs_get_user_team(id) == CS_TEAM_CT))
		return PLUGIN_HANDLED;
	
	new data[6], szName[64];
	new access, callback;
	
	menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
	
	new key = str_to_num(data);
	
	switch(key)
	{	
		case 1:
		{
			fm_give_item(id, "weapon_m4a1");
			cs_set_user_bpammo(id, CSW_M4A1, 999);
			fm_give_item(id, "weapon_deagle");
			cs_set_user_bpammo(id, CSW_DEAGLE, 999);
			fm_set_user_armor(id, 100.0);
			fm_give_item(id, "item_assaultsuit");
		}
		case 2:
		{
			fm_give_item(id, "weapon_ak47");
			cs_set_user_bpammo(id, CSW_AK47, 999);
			fm_give_item(id, "weapon_deagle");
			cs_set_user_bpammo(id, CSW_DEAGLE, 999);
			fm_set_user_armor(id, 100.0);
			fm_give_item(id, "item_assaultsuit");
		}
		case 3:
		{
			fm_give_item(id, "weapon_awp");
			cs_set_user_bpammo(id, CSW_AWP, 999);
			fm_give_item(id, "weapon_deagle");
			cs_set_user_bpammo(id, CSW_DEAGLE, 999);
			fm_set_user_armor(id, 100.0);
			fm_give_item(id, "item_assaultsuit");
		}
		case 4:
		{
			fm_give_item(id, "weapon_m3");
			cs_set_user_bpammo(id, CSW_M3, 999);
			fm_give_item(id, "weapon_deagle");
			cs_set_user_bpammo(id, CSW_DEAGLE, 999);
			fm_set_user_armor(id, 100.0);
			fm_give_item(id, "item_assaultsuit");
		}		
		case 5:
		{
			fm_give_item(id, "weapon_famas");
			cs_set_user_bpammo(id, CSW_FAMAS, 999);
			fm_give_item(id, "weapon_deagle");
			cs_set_user_bpammo(id, CSW_DEAGLE, 999);
			fm_set_user_armor(id, 100.0);
			fm_give_item(id, "item_assaultsuit");
		}
	}
	iGotWeapon[ id ][ 0 ] = true;
	menu_destroy(menu);
	return PLUGIN_HANDLED;
}

/////////////////////////
////// MENU TIMES //////
///////////////////////


public message_ShowMenu( msg, dest, id ){
	static iMenu[ 32 ];
	get_msg_arg_string( 4, iMenu, sizeof iMenu - 1 );
	
	if( equal( iMenu, "#Team_Select") || equal( iMenu, "#IG_Team_Select") || equal( iMenu, "#IG_Team_Select_Spect") || equal( iMenu, "#Team_Select_Spect") || equal( iMenu, "#Terrorist_Select") || equal( iMenu, "#CT_Select")){
		cmd_team_menu( id );
		return PLUGIN_HANDLED;
	}
	
	return PLUGIN_CONTINUE;
}

public cmd_team_menu( id ){
	if( !is_user_connected( id ))
		return PLUGIN_HANDLED;
	
	new iMenu, iTemp[ 512 ], szTemp[ 128 ];
	if( cs_get_user_team( id ) == CS_TEAM_UNASSIGNED ){
		formatex( iTemp, charsmax( iTemp ), "\r[MAFIA BR] \dEscolha seu Time");
	}
	else {
		formatex( iTemp, charsmax( iTemp ), "\r[MAFIA BR] \dMenu Principal:^n\y» \wDinheiro: \d[\r%d\d]^n\y» \wCigarros: \d[\r%d\d]^n\w",cs_get_user_money(id),xStrondaCash[ id ] );
	}
	iMenu = menu_create( iTemp, "team_choice");
	menu_additem(iMenu, "Time dos Prisioneiros", "0", _, menu_makecallback( "CanEnterT_Callback" ) );
	
	if( check_players())
		menu_additem(iMenu, "Time dos Guardas ( \yTem Vaga\w )^n", "1", _, menu_makecallback( "CanEnter_Callback" ));
	
	if( !check_players())
		menu_additem(iMenu, "\dTime dos Guardas \d( \rSem Vaga \d)^n", "1", _, menu_makecallback( "CanEnter_Callback" ));
	
	if(fm_get_user_team(id) == FM_TEAM_TR)
	{
		formatex( szTemp, 127, "\wTeam Voice %s^n", mySpeaker[ id ] == TEAM_SPEAKER ? "\d(\yAtivado\d)":"\d(\rDesativado\d)" );
		menu_additem(iMenu, szTemp, "2");
		menu_additem(iMenu, "Shop", "3");
		menu_additem(iMenu, "Regras", "4");
		menu_additem(iMenu, "Doar^n", "5");
		menu_additem(iMenu, "Menu \rAdministrador", "6");
	}
	else if(fm_get_user_team(id) == FM_TEAM_CT)
	{
		menu_additem(iMenu, "Reviver", "3");
		
		new szTempBox[ 120 ];
		formatex(szTempBox, 119, "\wBox \d(%s\d)", (iHandler)?"\yAtivado":"\rDesativado");
		menu_additem( iMenu, szTempBox, "4");
		
		menu_additem(iMenu, "Dividir Times", "5");
		menu_additem(iMenu, "Shop", "6");
		menu_additem(iMenu, "Doar", "7");
		menu_additem(iMenu, "Contagens^n", "8");
		menu_additem(iMenu, "Menu \rAdministrador", "9");
	}			
	
	menu_setprop( iMenu, MPROP_EXITNAME, "Sair" ); 
	menu_display( id, iMenu );
	
	return PLUGIN_HANDLED;
}

public CanEnterT_Callback( id, menu, iKey )
{
	if( fm_get_user_team( id ) == FM_TEAM_TR )
		return ITEM_DISABLED;
	
	if( fm_get_user_team( id ) != FM_TEAM_TR )
		return ITEM_ENABLED;
	
	return ITEM_ENABLED;
}

public CanEnter_Callback( id, menu, iKey )
{
	if( !check_players())
		return ITEM_DISABLED;
	
	if( fm_get_user_team( id ) == FM_TEAM_CT )
		return ITEM_DISABLED;
	
	if( check_players() )
		return ITEM_ENABLED;
	
	return ITEM_ENABLED;
}

public team_choice( id, menu, item )
{
	if( item == MENU_EXIT ){
		menu_destroy( menu );
		return PLUGIN_HANDLED;
	}
	
	new iData[ 7 ], iName[ 64 ], iAcess, iCallBack;
	menu_item_getinfo( menu, item, iAcess, iData, MAX_ITENS_MENU, iName, 63, iCallBack );
	
	new iKey = str_to_num( iData );
	
	switch( iKey ){
		case 0: {
			if( fm_get_user_team( id ) == FM_TEAM_TR ){
				cmd_team_menu( id );
				menu_destroy( menu );
				return PLUGIN_HANDLED;
			}
			
			engclient_cmd( id, "jointeam", "1" );
			engclient_cmd( id, "joinclass", "1" );
		}
		
		case 1: 
		{
			if( fm_get_user_team( id ) == FM_TEAM_CT ){
				cmd_team_menu( id );
				menu_destroy( menu );
				return PLUGIN_HANDLED;
			}
			
			else if( check_players())
			{
				engclient_cmd( id, "jointeam", "2" );
				engclient_cmd( id, "joinclass", "1" );
				menu_destroy( menu );				
			}
			
			else 
			{
				cmd_team_menu( id );
				menu_destroy( menu );
				return PLUGIN_HANDLED;
			}
		}
		case 2:
		{
			if(fm_cs_get_user_team(id) == FM_CS_TEAM_T)
			{
				if( mySpeaker[ id ] != TEAM_SPEAKER )
					mySpeaker[ id ] = TEAM_SPEAKER;
				
				else 
				{
					if( get_user_flags(id) & ADMIN_BAN )
						mySpeaker[ id ] = ADMIN_SPEAKER;
					
					else if( fm_cs_get_user_team(id) == FM_CS_TEAM_CT && is_user_alive( id ) )
						mySpeaker[ id ] = ALIVE_SPEAKER;
					
					else
						mySpeaker[id] = MUTED_SPEAKER;
				}
			}
			
		}
		case 3:
		{
			if(fm_get_user_team(id) == FM_TEAM_CT)
			{
				cmdReviver(id);
			}
			else if(fm_get_user_team(id) == FM_TEAM_TR)
			{
				CmdAcessoShop(id);
			}
		}
		
		case 4:
		{
			if(fm_get_user_team(id) == FM_TEAM_CT)
			{
				if(isFreeday == true)
				{
					ColorChat(id, GREEN, "%s ^1Proibido usar box no ^4Freeday!", PrefixoC);
					EmitSound(id, ERROR);
					return PLUGIN_HANDLED;
				}
				if(g_iCurrentGame == LR_AWP ||  g_iCurrentGame == LR_DEAGLE ||  g_iCurrentGame == LR_DROP
				||  g_iCurrentGame == LR_M3 ||  g_iCurrentGame == LR_SCOUT ||  g_iCurrentGame == LR_SOCO || g_iCurrentGame == LR_TUBARAO_CT || g_iCurrentGame == LR_TUBARAO_TR)
				{
					ColorChat(id, GREEN, "%s ^1Proibido usar box no ^4Duelo!", PrefixoC);
					EmitSound(id, ERROR);
					return PLUGIN_HANDLED;
				}
				if(!is_user_alive(id))
				{
					ColorTAG(id, "^4%s ^1Voce precisa estar ^4vivo ^1para ligar o ^4box!", szTag);	
					EmitSound(id, ERROR);		
					return PLUGIN_HANDLED;
				}
				switch(iHandler)  
				{ 
					case 0: 
					{
						get_players( iTrash, tNum, "ae", "TERRORIST" );
						
						if(tNum <= get_pcvar_num(Tr_Vivos) ) 
						{
							iHandler = 1;						
							server_cmd("mp_friendlyfire 1");
							ColorTAG( 0, "^4%s ^1O Guarda ^4%s ^1ativou o ^4box!", szTag, szName(id));
							client_cmd(0, "mp3 play ^"sound/%s^"", SomBox);
							cmd_team_menu( id );
							
							for(i = 1; i <= iMaxPlayers; i++)
							{
								if(cs_get_user_team( i ) == CS_TEAM_T) 
								{
									set_pev(i, pev_viewmodel2, v_BoxLuva);
									//set_pev(i, pev_weaponmodel2, p_BoxLuva)
									set_user_health(i, 100);
								}
							}
						}			
						else
						{
							ColorTAG( id, "^4%s ^1Para ativar o ^4box ^1e preciso ^4%i ^1ou menos Prisioneiros.", szTag, get_pcvar_num(Tr_Vivos) );
							EmitSound(id, ERROR);
						}
						return PLUGIN_HANDLED;
					}
					
					case 1: 
					{
						iHandler = 0;						
						server_cmd("mp_friendlyfire 0");
						ColorTAG( 0, "^4%s ^1O Guarda ^4%s ^1desativou o ^4box!", szTag, szName(id));
						client_cmd(0, "stopsound");
						cmd_team_menu( id );
						client_cmd(0, "stopsound");
						client_cmd(0,"mp3 stop");
						
						for(i = 1; i <= iMaxPlayers; i++) 
						{
							if(cs_get_user_team( i ) == CS_TEAM_T) 
							{
								set_pev(i, pev_viewmodel2, VIEW_MODELT);
								set_user_health(i, 100);
								
							}
						}
						
					}
				}
			}
			else if(fm_get_user_team(id) == FM_TEAM_TR)
			{
				client_cmd(id, "say /regras");
			}
		}
		
		case 5:
		{
			if(fm_get_user_team(id) == FM_TEAM_CT)
			{
				if(isFreeday == true)
				{
					ColorChat(id, GREEN, "%s ^1Proibido usar dividir times no ^4Freeday!", PrefixoC);
					EmitSound(id, ERROR);
					return PLUGIN_HANDLED;
				}
				if(g_iCurrentGame == LR_AWP ||  g_iCurrentGame == LR_DEAGLE ||  g_iCurrentGame == LR_DROP
				||  g_iCurrentGame == LR_M3 ||  g_iCurrentGame == LR_SCOUT ||  g_iCurrentGame == LR_SOCO || g_iCurrentGame == LR_TUBARAO_CT || g_iCurrentGame == LR_TUBARAO_TR)
				{
					ColorChat(id, GREEN, "%s ^1Proibido usar dividir times no ^4Duelo!", PrefixoC);
					EmitSound(id, ERROR);
					return PLUGIN_HANDLED;
				}
				if(!is_user_alive(id))
				{
					ColorTAG(id, "^4%s ^1Voce precisa estar ^4vivo ^1para ^4dividir times!", szTag);	
					EmitSound(id, ERROR);		
					return PLUGIN_HANDLED;
				}
				{
					ChangeTeamGlow(id);
				}
			}
			else if(fm_get_user_team(id) == FM_TEAM_TR)
			{
				//client_cmd(id, "amx_doardinheiro");
				xDoar(id);
			}
		}		
		case 6:
		{
			if(fm_get_user_team(id) == FM_TEAM_CT)
			{
				CmdAcessoShop(id);
			}
			else if(fm_get_user_team(id) == FM_TEAM_TR)
			{
				ADM_Menu(id);
			}
		}
		
		case 7:
		{
			if(fm_get_user_team(id) == FM_TEAM_CT)
			{
				//client_cmd(id, "amx_doardinheiro");
				xDoar(id);
			}
			else if(fm_get_user_team(id) == FM_TEAM_TR)
			{
				//client_cmd(id, "amx_doardinheiro");
				xDoar(id);
			}
		}
		case 8:
		{
			if(fm_get_user_team(id) == FM_TEAM_CT)
			{
				if(isFreeday == true)
				{
					ColorChat(id, GREEN, "%s ^1Proibido usar contagem no ^4Freeday!", PrefixoC);
					EmitSound(id, ERROR);
					return PLUGIN_HANDLED;
				}
				
				client_cmd(id, "say /timer");
			}
			else if(fm_get_user_team(id) == FM_TEAM_TR)
			{
				
			}
		}
		case 9:
		{
			{
				ADM_Menu(id);
			}
		}
	}
	
	menu_destroy( menu );
	return PLUGIN_HANDLED;
}

stock check_players(){
	new iCount, iTrCount, iCtCount;
	for( new i = 1; i < xMaxPlayers; i++ ){
		if( !is_user_connected( i ))
			continue;
		
		switch( fm_get_user_team( i )){
			case FM_TEAM_TR: iTrCount ++;
				case FM_TEAM_CT: iCtCount ++;
			}
	}
	
	iCount = iTrCount + iCtCount;
	
	switch( iCount ){
		case 0..7: iCount = 1;
			case 8..11: iCount = 2;
			case 12..15: iCount = 3;
			case 16..19: iCount = 4;
			case 20..23: iCount = 5;
			case 24..27: iCount = 6;
			default: iCount = 6;
	}
	
	return ( iCtCount >= iCount ? 0 : 1 );
}

stock fm_get_user_team( index )
	return get_pdata_int( index, OFFSET_CSTEAM, OFFSET_LINUX );

public CmdAcessoShop(id)
{
	new menu = menu_create("\r[MAFIA BR] \d| Acesso Shop", "AcessoShop");
	
	menu_additem(menu, "\wShop \rDinheiro", "", 0); // case 0
	menu_additem(menu, "\wShop \rCigarros", "", 0); // case 1
	
	menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
	menu_setprop(menu, MPROP_BACKNAME, "Voltar");
	menu_setprop(menu, MPROP_NEXTNAME, "Proximo");
	menu_setprop(menu, MPROP_EXITNAME, "Sair");
	menu_setprop(menu, MPROP_NUMBER_COLOR, "\r");
	
	menu_display(id, menu, 0);
	
	return PLUGIN_HANDLED;
}

public AcessoShop(id, menu, item)
{
	if(item == MENU_EXIT)
	{
		menu_cancel(id);
		return PLUGIN_HANDLED;
	}
	
	new command[6], name[64], access, callback;
	
	menu_item_getinfo(menu, item, access, command, sizeof command - 1, name, sizeof name - 1, callback);
	
	switch(item)
	{
		case 0:
		{
			cmdverific(id);
		}
		case 1:
		{
			cmdverific2(id);
		}
		
	}
	
	menu_destroy(menu);
	
	return PLUGIN_HANDLED;
}
public cmdReviver(id)
{
	if(isFreeday == true)
	{
		ColorChat(id, GREEN, "%s ^1Proibido usar reviver no ^4Freeday!", PrefixoC);
		EmitSound(id, ERROR);
		return PLUGIN_HANDLED;
	}
	if(fm_get_user_team(id) == FM_TEAM_TR)
	{
		ColorTAG(id, "^4%s ^1Somente ^4Guardas ^1podem ^4reviver.", szTag);
		EmitSound(id, ERROR);
		return PLUGIN_HANDLED;
	}
	if(!is_user_alive(id))
	{
		ColorTAG(id, "^4%s ^1Voce precisa estar ^4vivo ^1para ^4reviver!", szTag);	
		EmitSound(id, ERROR);		
		return PLUGIN_HANDLED;
	}
	
	new szTitle[999];
	formatex(szTitle, charsmax(szTitle), "\r%s\w Escolha um jogador para reviver^n\yPreco \rR$\w2000,00", szTag);
	
	new szMenu = menu_create(szTitle, "CmdQuit_Handler");
	
	new iPlayers[32], iNum;
	get_players(iPlayers, iNum);
	
	new szItem[64], szName[32], szNum[3], iPlayer;
	
	for( new i; i < iNum; i++ )
	{
		iPlayer = iPlayers[i];
		
		if(is_user_connected(iPlayer))
		{
			num_to_str(iPlayer, szNum, charsmax(szNum));
			get_user_name(iPlayer, szName, charsmax(szName));
			
			formatex(szItem, charsmax(szItem), "\w%s \d[\w%d\r/\w2\d]", szName,xLimiteReviver[iPlayer]);
			menu_additem(szMenu, szItem, szNum);
		}
	}
	
	menu_display(id, szMenu);
	
	return PLUGIN_CONTINUE;
}

public CmdQuit_Handler(id, szMenu, iItem)
{
	if( iItem == MENU_EXIT )
	{
		return PLUGIN_HANDLED;
	}
	
	new szData[6], szName[32], iAccess, iCallback, szName2[32];
	menu_item_getinfo(szMenu, iItem, iAccess, szData, charsmax(szData), _, _, iCallback);
	
	new iPlayer = str_to_num(szData);
	
	get_user_name(iPlayer, szName, charsmax(szName));
	get_user_name(id, szName2, charsmax(szName2));
	
	if(xLimiteReviver[iPlayer] == 2)
	{
		ColorTAG(id,"\g%s \nVoce so pode reviver este player \g2 \nvezes", szTag, szName);
		return PLUGIN_HANDLED;	
	}
	if(!is_user_connected(iPlayer))
	{
		ColorTAG(id,"\g%s\n O jogador \t%s\n nao esta conectado", szTag, szName);
		return PLUGIN_HANDLED;
	}
	if(cs_get_user_money(id) < 2000)
	{
		ColorChat(id,GREEN,"^x04%s ^1Voce nao tem ^4dinheiro ^1suficiente",szTag);
		return PLUGIN_HANDLED;
	}
	if(!is_user_alive(iPlayer))
	{
		xLimiteReviver[iPlayer]++;
		ColorTAG(0,"\g%s\n Guarda \g%s \nacabou de reviver \t%s\n.", szTag, szName2, szName);
		ExecuteHamB(Ham_CS_RoundRespawn, iPlayer);
		cs_set_user_money(id,cs_get_user_money(id) - 2000);
	}
	else
	{
		ColorTAG(id,"\g%s\n O jogador \t%s\n ja esta vivo", szTag, szName);
	}
	return PLUGIN_HANDLED;
}

public cmdReviverADM(id)
{
	
	new szTitle[999];
	formatex(szTitle, charsmax(szTitle), "\r%s\w Escolha um jogador para Reviver", szTag);
	
	new szMenu = menu_create(szTitle, "CmdQuit_HandlerA");
	
	new iPlayers[32], iNum;
	get_players(iPlayers, iNum);
	
	new szItem[64], szName[32], szNum[3], iPlayer;
	
	for( new i; i < iNum; i++ )
	{
		iPlayer = iPlayers[i];
		
		if(is_user_connected(iPlayer))
		{
			num_to_str(iPlayer, szNum, charsmax(szNum));
			get_user_name(iPlayer, szName, charsmax(szName));
			
			formatex(szItem, charsmax(szItem), "\w%s", szName);
			menu_additem(szMenu, szItem, szNum);
		}
	}
	
	menu_display(id, szMenu);
	
	return PLUGIN_CONTINUE;
}

public CmdQuit_HandlerA(id, szMenu, iItem)
{
	if( iItem == MENU_EXIT )
	{
		return PLUGIN_HANDLED;
	}
	
	new szData[6], szName[32], iAccess, iCallback, szName2[32];
	menu_item_getinfo(szMenu, iItem, iAccess, szData, charsmax(szData), _, _, iCallback);
	
	new iPlayer = str_to_num(szData);
	
	get_user_name(iPlayer, szName, charsmax(szName));
	get_user_name(id, szName2, charsmax(szName2));
	
	if(!is_user_connected(iPlayer))
	{
		ColorTAG(id,"\g%s\n O jogador \t%s\n nao esta conectado", szTag, szName);
		return PLUGIN_HANDLED;
	}
	if(!is_user_alive(iPlayer))
	{
		ColorTAG(0,"\g%s\n Admin \g%s \nacabou de reviver \t%s\n.", szTag, szName2, szName);
		ExecuteHamB(Ham_CS_RoundRespawn, iPlayer);
	}
	else
	{
		ColorTAG(id,"\g%s\n O jogador \t%s\n ja esta vivo", szTag, szName);
	}
	return PLUGIN_HANDLED;
}
public ChangeTeamGlow( id ) {
	if(!is_user_alive(id) ) {
		return PLUGIN_HANDLED;
	}
	
	new szName[33];
	get_user_name(id, szName, 32);
	
	Verify = 0;
	new players[32], pnum, tempid; 
	
	get_players(players, pnum, "ae", "TERRORIST"); 
	
	if(pnum == 0){
		ColorChat(id, GREEN, "%s ^1Nao e possivel ^3separar os times, ^1com nenhum ^3Preso", szTag);
		EmitSound(id, ERROR);		
		return PLUGIN_HANDLED;
	}
	
	else if(pnum == 1 || pnum == 3 || pnum == 5 || pnum == 7 || pnum == 9
		|| pnum == 11 || pnum == 13 || pnum == 15 || pnum == 17 || pnum == 19
	|| pnum == 21 || pnum == 23 || pnum == 25 || pnum == 27 || pnum == 29
	|| pnum == 31) {
		ColorChat(id, GREEN, "%s ^1Nao e possivel ^3separar os times, ^1com numero de player ^3impar.", szTag);
		EmitSound(id, ERROR);
		return PLUGIN_HANDLED;
	}
	
	ColorChat(0, GREEN, "%s ^1O Guarda ^3%s ^1separou os Times!", szTag, szName);
	new TeaM = pnum / 2;
	
	for( new i; i<pnum; i++ ) {
		tempid = players[i]; 
		if( TeaM == Verify ) {
			fm_set_user_rendering(tempid, kRenderFxGlowShell, 255, 0, 0, kRenderNormal, 25);
			ColorChat(tempid, GREEN, "%s ^1Voce Ficou no ^3Time Vermelho!", szTag);
			new const ModelTime1[] = "models/player/mafiabr_prisioneiro1/mafiabr_prisioneiro1.mdl";
			//cs_set_user_model(tempid, ModelTime1);		
			entity_set_int(tempid, EV_INT_body, 2);
			entity_set_int(tempid, EV_INT_skin, 0);	
		}
		
		else {
			fm_set_user_rendering(tempid, kRenderFxGlowShell, 0, 0, 255, kRenderNormal, 25); 
			ColorChat(tempid, GREEN, "%s ^1Voce Ficou no ^3Time Azul", szTag);
			new const ModelTime2[] = "models/player/mafiabr_prisioneiro1/mafiabr_prisioneiro1.mdl";
			//cs_set_user_model(tempid, ModelTime2);	
			entity_set_int(tempid, EV_INT_body, 2);
			entity_set_int(tempid, EV_INT_skin, 0);
			Verify++;
		}
	}
	
	return PLUGIN_CONTINUE;
}

public ADM_Menu(id)
{	
	if(get_user_flags(id) & ADMIN_KICK) {
		new menu = menu_create("\r[MAFIA BR]\d| Menu Administrador:", "ShowADM_Menu");
		
		menu_additem(menu, "\wMenu \rReviver", "1", 0, -1);
		menu_additem(menu, "\wAbrir \rCelas", "2", 0, -1);
		menu_additem(menu, "\wMenu \rBola", "3", 0, -1);
		menu_additem(menu, "\wBrincadeiras", "4", 0, -1);
		menu_additem(menu, "\wMenu \rFundador", "5", 0, -1);
		
		
		menu_setprop(menu, 4, "\wSair");
		
		menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
		menu_display(id, menu, 0);
	}
	else
	{
		ColorChat(id, GREEN, "%s ^1Somente ^4Admins ^1pode acessar este ^4Menu.", szTag);
		EmitSound(id, ERROR);
	}
	
	return PLUGIN_HANDLED;
}

public ShowADM_Menu(id, menu, item)
{
	if( item == MENU_EXIT )
	{
		menu_destroy(menu);
		return PLUGIN_HANDLED;
	}
	
	new data[6], szName[64];
	new access, callback;
	menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
	new key = str_to_num(data);
	
	switch(key)
	{
		case 1:
		{
			cmdReviverADM(id);
		}
		case 2: 
		{
			Push_Button();
		}
		case 3:
		{
			client_cmd(id,"say /ball");
		}
		case 4: 
		{
			Jail_Days(id);
		}			
		case 5: 
		{
			if(get_user_flags(id) & ADMIN_CVAR)
			{
				Fun_Menu(id);
			}	
			else
			{
				ColorChat(id, GREEN, "%s ^1Somente ^4Fundador ^1pode acessar este ^4Menu.", szTag);
				EmitSound(id, ERROR);
				return PLUGIN_HANDLED;
			}
		}			
	}
	return PLUGIN_HANDLED;
}

public Fun_Menu(id)
{	
	new menu = menu_create("\r[MAFIA BR]\d| Menu Fundador:", "ShowFun_Menu");
	
	menu_additem(menu, "\wDoar \rDinheiro^n", "1", 0, -1);
	menu_additem(menu, "\wAtivar \rModo Evento", "2", 0, -1);
	menu_additem(menu, "\wDesativar \rModo Evento^n", "3", 0, -1);
	menu_additem(menu, "\wDoar \rCigarros", "4", 0, -1);
	menu_additem(menu, "\wRemover \rCigarros", "5", 0, -1);
	
	menu_setprop(menu, 4, "\wSair");
	
	menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
	menu_display(id, menu, 0);
	
	return PLUGIN_HANDLED;
}

public ShowFun_Menu(id, menu, item)
{
	if( item == MENU_EXIT )
	{
		menu_destroy(menu);
		return PLUGIN_HANDLED;
	}
	
	new data[6], szName[64];
	new access, callback;
	menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
	new key = str_to_num(data);
	
	switch(key)
	{
		case 1: 
		{
			MoneyCmd(id);
		}			
		case 2: 
		{
			xEvento = true;
			
			new players[32], num, player;
			get_players( players,  num, "a" );
			
			for(new i = 0; i < num; i++)
			{
				player = players[i];
				
				if(!is_user_alive( player ))
					continue;
				
				StripPlayerWeapons( player );
				fm_give_item(player, "weapon_knife");
				
				switch(fm_get_user_team(player))
				{
					case FM_TEAM_CT:
					{									
						fm_set_user_health(player, 100.0);
						fm_set_user_godmode(player, 1);
						fm_set_user_rendering(player, kRenderFxGlowShell, 0, 0, 255, kRenderNormal, 20);
					}
					
					case FM_TEAM_TR:
					{			
						fm_set_user_health(player, 100.0);
					}
				}
			}
		}			
		case 3: 
		{
			xEvento = false;
			
			new players[32], num, player;
			get_players( players,  num, "a" );
			
			for(new i = 0; i < num; i++)
			{
				player = players[i];
				
				if(!is_user_alive( player ))
					continue;
				
				StripPlayerWeapons( player );
				fm_give_item(player, "weapon_knife");
				
				switch(fm_get_user_team(player))
				{
					case FM_TEAM_CT:
					{									
						fm_set_user_health(player, 100.0);
						fm_set_user_godmode(player, 0);
						fm_set_user_rendering(player, kRenderFxGlowShell, 0, 0, 0, kRenderNormal, 0); 	
					}
					
					case FM_TEAM_TR:
					{			
						fm_set_user_health(player, 100.0);
					}
				}
			}
		}
		case 4:
		{
			xSetarMoedas(id);
		}
		case 5:
		{
			xRemoverMoedasQ(id);
		}
	}
	return PLUGIN_HANDLED;
}
public MoneyCmd(id)
{
	if(!(get_user_flags(id) & ADMIN_KICK))
	{
		ColorTAG(id,"\g%s\n Somente \gAdmins \ntem acesso a este Comando", szTag);
		client_cmd(id, "spk buttons/button2.wav");
		return PLUGIN_HANDLED;
	}
	
	new szTitle[150]; 
	formatex(szTitle, charsmax(szTitle), "\r%s\w Escolha um jogador para setar Dinheiro", MenuTag); 
	
	new szMenu = menu_create(szTitle, "cmdmoney_Handler"); 
	
	new iPlayers[32], iNum; 
	get_players(iPlayers, iNum); 
	
	new szItem[64], szName[32], szNum[3], iPlayer; 
	
	for( new i; i < iNum; i++ ) 
	{ 
		iPlayer = iPlayers[i]; 
		
		if(is_user_connected(iPlayer))
		{
			num_to_str(iPlayer, szNum, charsmax(szNum)); 
			get_user_name(iPlayer, szName, charsmax(szName)); 
			
			formatex(szItem, charsmax(szItem), "\w%s", szName); 
			menu_additem(szMenu, szItem, szNum); 
		}
	} 
	
	menu_display(id, szMenu); 
	
	return PLUGIN_CONTINUE; 
} 
public cmdmoney_Handler(id, szMenu, iItem) 
{ 
	if( iItem == MENU_EXIT ) 
	{ 
		return PLUGIN_HANDLED; 
	} 
	
	new szData[6],szName[32], iAccess, iCallback; 
	menu_item_getinfo(szMenu, iItem, iAccess, szData, charsmax(szData), _, _, iCallback); 
	
	new iPlayer = str_to_num(szData); 
	sz_gPlayer = iPlayer;
	
	get_user_name(iPlayer, szName, charsmax(szName)); 
	
	if(!is_user_connected(iPlayer))
	{
		ColorTAG(id,"\g%s\nO jogador \g%s\n nao esta conectado",szTag,szName);
		return PLUGIN_HANDLED;
	}
	
	client_cmd(id,"messagemode [Quantidade]Dinheiro");
	ColorTAG(id,"\g%s\n Digite a quantidade de dinheiro para dar para \g%s\n.",szTag,szName);
	
	return PLUGIN_CONTINUE; 
} 
public setmoney(id)
{
	if(!is_user_connected(sz_gPlayer))
	{
		ColorTAG(id,"\g%s\n Este jogador nao esta conectado\g.", szTag);
		return PLUGIN_HANDLED;
	}
	if(!(get_user_flags(id) & ADMIN_KICK))
	{
		ColorTAG(id,"\g%s\n Voce nao tem acesso a este comando", szTag);
		return PLUGIN_HANDLED;
	}
	if(cs_get_user_money(sz_gPlayer) >= 16000)
	{
		ColorChat(id,GREEN,"^x04%s ^1Quantidade maxima nao pode ultrapassar 16000",szTag);
		return PLUGIN_HANDLED;
	}
	new szName[32];
	new szName2[32];
	get_user_name(id, szName, 31);
	get_user_name(sz_gPlayer, szName2, 31);
	
	new amount[30]; read_args(amount, charsmax(amount)); remove_quotes(amount);
	new ammount = str_to_num(amount);
	
	ColorTAG(sz_gPlayer,"\g%s\n Voce recebeu \g%d de Dinheiro\n do admin \t%s\n",szTag,ammount,szName);
	ColorTAG(id,"\g%s\n Voce deu \g%d\n de Dinheiro para \t%s\n",szTag,ammount,szName2);
	cs_set_user_money(sz_gPlayer,cs_get_user_money(sz_gPlayer) + ammount);
	return PLUGIN_HANDLED;
}
public xDoar(id)
{
	new szTitle[150]; 
	formatex(szTitle, charsmax(szTitle), "\r[MAFIA BR] \y| \dMenu de Doacao^nSeu Dinheiro \y|| \r[%d]",cs_get_user_money(id)); 
	
	new szMenu = menu_create(szTitle, "xDoar_Handler"); 
	
	new iPlayers[32], iNum; 
	get_players(iPlayers, iNum); 
	
	new szItem[64], szName[32], szNum[3], iPlayer; 
	
	for( new i; i < iNum; i++ ) 
	{ 
		iPlayer = iPlayers[i]; 
		
		if(is_user_connected(iPlayer))
		{
			if (iPlayer == id) 
			{
				num_to_str(iPlayer, szNum, charsmax(szNum)); 
				get_user_name(iPlayer, szName, charsmax(szName)); 
				
				formatex(szItem, charsmax(szItem), "\r* \d%s \r- \d( \yDinheiro\w: \r[%d] \d)", szName , cs_get_user_money(iPlayer)); 
				menu_additem(szMenu, szItem, szNum); 
			}
			else
			{
				num_to_str(iPlayer, szNum, charsmax(szNum)); 
				get_user_name(iPlayer, szName, charsmax(szName)); 
				
				formatex(szItem, charsmax(szItem), "\w%s \r- \d( \yDinheiro\w: \r[%d] \d)", szName , cs_get_user_money(iPlayer)); 
				menu_additem(szMenu, szItem, szNum); 
			}
		}
	} 
	
	menu_display(id, szMenu); 
	
	return PLUGIN_CONTINUE; 
} 
public xDoar_Handler(id, szMenu, iItem) 
{ 
	if( iItem == MENU_EXIT ) 
	{ 
		menu_destroy(szMenu);
		return PLUGIN_HANDLED; 
	} 
	
	new szData[6],szName[32], iAccess, iCallback; 
	menu_item_getinfo(szMenu, iItem, iAccess, szData, charsmax(szData), _, _, iCallback); 
	
	new iPlayer = str_to_num(szData); 
	sz_gPlayer = iPlayer;
	
	get_user_name(iPlayer, szName, charsmax(szName)); 
	
	if(!is_user_connected(iPlayer))
	{
		ColorChat(id,GREEN,"%s^1 O jogador ^4%s^1 nao esta conectado",szTag,szName);
		return PLUGIN_HANDLED;
	}
	if (iPlayer == id) 
	{
		ColorChat(id,GREEN,"%s ^1Voce nao pode doar ^3Dinheiro ^1para voce mesmo^4.",szTag,szName);
		return PLUGIN_HANDLED;
	}
	
	
	client_cmd(id,"messagemode [DoarQuantidade]Dinheiro");
	client_cmd(id, "spk events/enemy_died.wav");
	ColorChat(id,GREEN,"%s^1 Digite a quantidade de ^4Dinheiro ^1para dar para ^4%s^1.",szTag,szName);
	
	menu_destroy(szMenu);
	return PLUGIN_CONTINUE; 
} 
public xDoarDinheiro(id)
{
	new szName[32];
	new szName2[32];
	get_user_name(id, szName, 31);
	get_user_name(sz_gPlayer, szName2, 31);
	
	new amount[30]; read_args(amount, charsmax(amount)); remove_quotes(amount);
	new ammount = str_to_num(amount);
	new szNum = str_to_num(amount);
	
	if(!is_user_connected(sz_gPlayer))
	{
		ColorChat(id,GREEN,"%s ^1O jogador ^4%s^1 nao esta conectado",szTag,szName);
		return PLUGIN_HANDLED;
	}
	if(cs_get_user_money(id) < ammount)
	{
		ColorChat(id,GREEN,"^x04%s ^1Voce nao tem ^4Dinheiro ^1suficiente",szTag);
		return PLUGIN_HANDLED;
	}
	if(cs_get_user_money(sz_gPlayer) >= 16000)
	{
		ColorChat(id,GREEN,"^x04%s ^1Quantidade maxima nao pode ultrapassar 16000",szTag);
		return PLUGIN_HANDLED;
	}
	if (szNum <= 0)
	{
		set_dhudmessage(255, 0, 0, 0.02, 0.17, 2, 0.3, 2.0, 0.07, 0.07);
		show_dhudmessage(id, "Quantia invalida.");
		ColorChat(id,GREEN, "%s ^1Quantia Invalida^3.",szTag);
		xDoar(id);
		
		return PLUGIN_HANDLED;
	}
	
	ColorChat(sz_gPlayer,GREEN,"%s^1 Voce recebeu ^4%d ^1de Dinheiro^1 do jogador ^3%s^1",szTag,ammount,szName);
	ColorChat(id,GREEN,"%s^1 Voce deu ^4%d^1de Dinheiro para ^3%s^1.",szTag,ammount,szName2);
	
	//log_to_file ( "STD_MENUDOAR.log", "[STD] Player %s Deu %s Cash parar o Jogador: %s", szName, ammount, szName2 );
	
	cs_set_user_money(sz_gPlayer, cs_get_user_money(sz_gPlayer) + ammount);
	cs_set_user_money(id, cs_get_user_money(id) - ammount);
	
	return PLUGIN_HANDLED;
}
public xSetarMoedas(id)
{
	new szTitle[150]; 
	formatex(szTitle, charsmax(szTitle), "\r%s \y| \dMenu de Doacao",szTag); 
	
	new szMenu = menu_create(szTitle, "xSetarMoedas_Handler"); 
	
	new iPlayers[32], iNum; 
	get_players(iPlayers, iNum); 
	
	new szItem[64], szName[32], szNum[3], iPlayer; 
	
	for( new i; i < iNum; i++ ) 
	{ 
		iPlayer = iPlayers[i]; 
		
		if(is_user_connected(iPlayer))
		{
			if (iPlayer == id) 
			{
				num_to_str(iPlayer, szNum, charsmax(szNum)); 
				get_user_name(iPlayer, szName, charsmax(szName)); 
				
				formatex(szItem, charsmax(szItem), "\r* \d%s \r- \d( \yCigarros\w: \r[%d] \d)", szName , xStrondaCash[ iPlayer ]); 
				menu_additem(szMenu, szItem, szNum); 
			}
			else
			{
				num_to_str(iPlayer, szNum, charsmax(szNum)); 
				get_user_name(iPlayer, szName, charsmax(szName)); 
				
				formatex(szItem, charsmax(szItem), "\w%s \r- \d( \yCigarros\w: \r[%d] \d)", szName , xStrondaCash[ iPlayer ]); 
				menu_additem(szMenu, szItem, szNum); 
			}
		}
	} 
	
	menu_display(id, szMenu); 
	
	return PLUGIN_CONTINUE; 
} 
public xSetarMoedas_Handler(id, szMenu, iItem) 
{ 
	if( iItem == MENU_EXIT ) 
	{ 
		menu_destroy(szMenu);
		return PLUGIN_HANDLED; 
	} 
	
	new szData[6],szName[32], iAccess, iCallback; 
	menu_item_getinfo(szMenu, iItem, iAccess, szData, charsmax(szData), _, _, iCallback); 
	
	new iPlayer = str_to_num(szData); 
	sz_gPlayer = iPlayer;
	
	get_user_name(iPlayer, szName, charsmax(szName)); 
	
	if(!is_user_connected(iPlayer))
	{
		ColorChat(id,GREEN,"%s^1 O jogador ^4%s^1 nao esta conectado",szTag,szName);
		return PLUGIN_HANDLED;
	}
	
	
	client_cmd(id,"messagemode [SetarQuantidade]Cigarros");
	client_cmd(id, "spk events/enemy_died.wav");
	ColorChat(id,GREEN,"%s^1 Digite a quantidade de ^4Cigarros ^1para dar para ^4%s^1.",szTag,szName);
	
	menu_destroy(szMenu);
	return PLUGIN_CONTINUE; 
} 
public xSetarMoedasQ(id)
{
	new szName[32];
	new szName2[32];
	get_user_name(id, szName, 31);
	get_user_name(sz_gPlayer, szName2, 31);
	
	new amount[30]; read_args(amount, charsmax(amount)); remove_quotes(amount);
	new ammount = str_to_num(amount);
	new szNum = str_to_num(amount);
	
	if(!is_user_connected(sz_gPlayer))
	{
		ColorChat(id,GREEN,"%s ^1O jogador ^4%s^1 nao esta conectado",szTag,szName);
		return PLUGIN_HANDLED;
	}
	if (szNum <= 0)
	{
		set_dhudmessage(255, 0, 0, 0.02, 0.17, 2, 0.3, 2.0, 0.07, 0.07);
		show_dhudmessage(id, "Quantia invalida.");
		ColorChat(id,GREEN, "%s ^1Quantia Invalida^3.",szTag);
		xDoar(id);
		
		return PLUGIN_HANDLED;
	}
	
	ColorChat(sz_gPlayer,GREEN,"%s^1 Voce recebeu ^4%d ^1de Cigarros^1 do jogador ^3%s^1",szTag,ammount,szName);
	ColorChat(id,GREEN,"%s^1 Voce deu ^4%d^1de Cigarros para ^3%s^1.",szTag,ammount,szName2);
	
	//log_to_file ( "STD_MENUDOAR.log", "[STD] Player %s Deu %s Cash parar o Jogador: %s", szName, ammount, szName2 );
	
	xStrondaCash[ sz_gPlayer ] += ammount;
	
	return PLUGIN_HANDLED;
}
public xRemoverMoedasQ(id)
{
	new szTitle[150]; 
	formatex(szTitle, charsmax(szTitle), "\r%s \y| \dMenu de Remover Cigarros",szTag); 
	
	new szMenu = menu_create(szTitle, "xRemoverMoedas_Handler"); 
	
	new iPlayers[32], iNum; 
	get_players(iPlayers, iNum); 
	
	new szItem[64], szName[32], szNum[3], iPlayer; 
	
	for( new i; i < iNum; i++ ) 
	{ 
		iPlayer = iPlayers[i]; 
		
		if(is_user_connected(iPlayer))
		{
			if (iPlayer == id) 
			{
				num_to_str(iPlayer, szNum, charsmax(szNum)); 
				get_user_name(iPlayer, szName, charsmax(szName)); 
				
				formatex(szItem, charsmax(szItem), "\r* \d%s \r- \d( \yCigarros\w: \r[%d] \d)", szName , xStrondaCash[ iPlayer ]); 
				menu_additem(szMenu, szItem, szNum); 
			}
			else
			{
				num_to_str(iPlayer, szNum, charsmax(szNum)); 
				get_user_name(iPlayer, szName, charsmax(szName)); 
				
				formatex(szItem, charsmax(szItem), "\w%s \r- \d( \yCigarros\w: \r[%d] \d)", szName , xStrondaCash[ iPlayer ]); 
				menu_additem(szMenu, szItem, szNum); 
			}
		}
	} 
	
	menu_display(id, szMenu); 
	
	return PLUGIN_CONTINUE; 
} 
public xRemoverMoedas_Handler(id, szMenu, iItem) 
{ 
	if( iItem == MENU_EXIT ) 
	{ 
		menu_destroy(szMenu);
		return PLUGIN_HANDLED; 
	} 
	
	new szData[6],szName[32], iAccess, iCallback; 
	menu_item_getinfo(szMenu, iItem, iAccess, szData, charsmax(szData), _, _, iCallback); 
	
	new iPlayer = str_to_num(szData); 
	sz_gPlayer = iPlayer;
	
	get_user_name(iPlayer, szName, charsmax(szName)); 
	
	if(!is_user_connected(iPlayer))
	{
		ColorChat(id,GREEN,"%s^1 O jogador ^4%s^1 nao esta conectado",szTag,szName);
		return PLUGIN_HANDLED;
	}
	
	
	client_cmd(id,"messagemode [RemoverQuantidade]Cigarros");
	client_cmd(id, "spk events/enemy_died.wav");
	ColorChat(id,GREEN,"%s^1 Digite a quantidade de ^4Cigarros ^1para remover de ^4%s^1.",szTag,szName);
	
	menu_destroy(szMenu);
	return PLUGIN_CONTINUE; 
} 
public xRemoverMoedas(id)
{
	new szName[32];
	new szName2[32];
	get_user_name(id, szName, 31);
	get_user_name(sz_gPlayer, szName2, 31);
	
	new amount[30]; read_args(amount, charsmax(amount)); remove_quotes(amount);
	new ammount = str_to_num(amount);
	new szNum = str_to_num(amount);
	
	if(!is_user_connected(sz_gPlayer))
	{
		ColorChat(id,GREEN,"%s ^1O jogador ^4%s^1 nao esta conectado",szTag,szName);
		return PLUGIN_HANDLED;
	}
	if (szNum <= 0)
	{
		set_dhudmessage(255, 0, 0, 0.02, 0.17, 2, 0.3, 2.0, 0.07, 0.07);
		show_dhudmessage(id, "Quantia invalida.");
		ColorChat(id,GREEN, "%s ^1Quantia Invalida^3.",szTag);
		xDoar(id);
		
		return PLUGIN_HANDLED;
	}
	
	ColorChat(id,GREEN,"%s^1 Voce removeu ^4%d^1de Cigarros do jogador ^3%s^1.",szTag,ammount,szName2);
	
	//log_to_file ( "STD_MENUDOAR.log", "[STD] Player %s Deu %s Cash parar o Jogador: %s", szName, ammount, szName2 );
	
	xStrondaCash[ sz_gPlayer ] -= ammount;
	
	return PLUGIN_HANDLED;
}
public cmdverific(id)
{
	if(!is_user_alive(id))
	{
		ColorChat(id, GREEN, "%s ^1Voce precisa estar ^4vivo ^1para abrir o Shop!", PrefixoC);
		EmitSound(id, ERROR);
		return PLUGIN_HANDLED;
	}
	if(isFreeday == true)
	{
		ColorChat(id, GREEN, "%s ^1Proibido usar shop no ^4Freeday!", PrefixoC);
		EmitSound(id, ERROR);
		return PLUGIN_HANDLED;
	}
	else if(xEvento == true)
	{
		ColorChat(id, GREEN, "%s ^1Proibido usar shop no ^4Modo Evento!", PrefixoC);
		EmitSound(id, ERROR);
		return PLUGIN_HANDLED;
	}	
	else if(g_iCurrentGame == LR_AWP ||  g_iCurrentGame == LR_DEAGLE ||  g_iCurrentGame == LR_DROP
		||  g_iCurrentGame == LR_M3 ||  g_iCurrentGame == LR_SCOUT ||  g_iCurrentGame == LR_SOCO || g_iCurrentGame == LR_TUBARAO_CT || g_iCurrentGame == LR_TUBARAO_TR){
		ColorChat(id, GREEN, "%s ^1Proibido usar Shop no ^4Duelo!", PrefixoC);
		EmitSound(id, ERROR);
		return PLUGIN_HANDLED;
	}
	else if( Native_Invisivel() || Native_Pega() || Native_Esconde() || Native_Sobrevivencia() || Native_Tubarao () || Native_Gladiador () || Native_Zombie_tr () || Native_Zombie_ct () )
	{
		ColorChat(id, GREEN, "%s ^1Proibido usar shop nas ^4Brincadeiras!", PrefixoC);
		EmitSound(id, ERROR);
		return PLUGIN_HANDLED;
	}
	if(fm_get_user_team(id) == FM_TEAM_TR)
	{
		Shop_TR(id);
	}
	if(fm_get_user_team(id) == FM_TEAM_CT)
	{
		Shop_CT(id);
	}
	return PLUGIN_HANDLED;
}
public cmdverific2(id)
{
	if(!is_user_alive(id))
	{
		ColorChat(id, GREEN, "%s ^1Voce precisa estar ^4vivo ^1para abrir o Shop!", PrefixoC);
		EmitSound(id, ERROR);
		return PLUGIN_HANDLED;
	}
	if(isFreeday == true)
	{
		ColorChat(id, GREEN, "%s ^1Proibido usar shop no ^4Freeday!", PrefixoC);
		EmitSound(id, ERROR);
		return PLUGIN_HANDLED;
	}
	else if(xEvento == true)
	{
		ColorChat(id, GREEN, "%s ^1Proibido usar shop no ^4Modo Evento!", PrefixoC);
		EmitSound(id, ERROR);
		return PLUGIN_HANDLED;
	}	
	else if(g_iCurrentGame == LR_AWP ||  g_iCurrentGame == LR_DEAGLE ||  g_iCurrentGame == LR_DROP
		||  g_iCurrentGame == LR_M3 ||  g_iCurrentGame == LR_SCOUT ||  g_iCurrentGame == LR_SOCO || g_iCurrentGame == LR_TUBARAO_CT || g_iCurrentGame == LR_TUBARAO_TR){
		ColorChat(id, GREEN, "%s ^1Proibido usar Shop no ^4Duelo!", PrefixoC);
		EmitSound(id, ERROR);
		return PLUGIN_HANDLED;
	}
	else if( Native_Invisivel() || Native_Pega() || Native_Esconde() || Native_Sobrevivencia () || Native_Tubarao () || Native_Gladiador () || Native_Zombie_tr () || Native_Zombie_ct () )
	{
		ColorChat(id, GREEN, "%s ^1Proibido usar shop nas ^4Brincadeiras!", PrefixoC);
		EmitSound(id, ERROR);
		return PLUGIN_HANDLED;
	}
	if(fm_get_user_team(id) == FM_TEAM_TR)
	{
		StrondaJBShop(id);
	}
	if(fm_get_user_team(id) == FM_TEAM_CT)
	{
		ColorChat(id,GREEN,"%s ^1Somente ^3Prisioneiros ^1podem ^4acesssar ^1o shop de Cigarros^4.",szTag);
		EmitSound(id, ERROR);
	}
	return PLUGIN_HANDLED;
}
public Shop_TR(id)
{	
	
	new TAMTAM[128];
	formatex(TAMTAM, 127, "\r%s \dShop Dinheiro^n \r» \wDinheiro \y[\r$\w%d\y]\w", MenuTag, cs_get_user_money(id));
	new menu  = menu_create(TAMTAM, "ShowShopTR");
	
	menu_additem(menu, "\w2 Flash \y[\r$\w6000\y]", "1", 0, -1);
	menu_additem(menu, "\w1 He \y[\r$\w5000\y]", "2", 0, -1);
	menu_additem(menu, "\wKit Granadas \y[\r$\w10000\y]", "3", 0, -1);
	menu_additem(menu, "\wDeagle \d(1 Bala) \y[\r$\w12000\y]", "4", 0, -1);
	menu_additem(menu, "\wGravidade \d(15 Segundos) \y[\r$\w9000\y]", "5", 0, -1);
	menu_additem(menu, "\wAndar em Silencio \y[\r$\w8000\y]", "6", 0, -1);
	menu_additem(menu, "\wApagao \d(10 Segundos) \y[\r$\w15000\y]", "7", 0, -1);
	menu_additem(menu, "\wInvisivel \d(12 Segundos) \y[\r$\w14000\y]", "8", 0, -1);
	menu_additem(menu, "\w+100 HP \y[\r$\w7000\y]", "9", 0, -1);
	menu_additem(menu, "\wRoupa de Guarda \d(15 Segundos) \y[\r$\w12000\y]", "10", 0, -1);
	menu_additem(menu, "\wGlock \d(20 Balas) \y[\r$\w16000\y]", "11", 0, -1);
	menu_additem(menu, "\wVelocidade \y[\r$\w12000\y]", "12", 0, -1);
	menu_additem(menu, "\wNoclip \d(3 Segundos) \y[\r$\w15000\y]", "13", 0, -1);
	
	menu_setprop(menu, 4, "\wSair");
	
	menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
	menu_display(id, menu, 0);
	
	return PLUGIN_HANDLED;
}

public ShowShopTR(id, menu, item)
{
	if( item == MENU_EXIT )
	{
		menu_destroy(menu);
		return PLUGIN_HANDLED;
	}
	
	new data[6], szName[64];
	new access, callback;
	menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
	new key = str_to_num(data);
	new money;
	money = cs_get_user_money(id);
	
	switch(key)
	{
		case 1: 
		{
			if(money < 6000)
			{
				ColorChat(id, GREEN, "%s ^1Seu Vagabundo voce nao tem ^4dinheiro suficiente", PrefixoC);
				EmitSound(id, ERROR);				
				return PLUGIN_HANDLED;
			}
			else
			{
				fm_give_item(id, "weapon_flashbang");
				fm_give_item(id, "weapon_flashbang");
				ColorChat(id, GREEN, "%s ^1Voce comprou^4 2 Flash", PrefixoC);
				cs_set_user_money(id, money - 6000);
			}
		}			
		case 2: 
		{
			if(money < 5000)
			{
				ColorChat(id, GREEN, "%s ^1Seu Vagabundo voce nao tem ^4dinheiro suficiente", PrefixoC);
				EmitSound(id, ERROR);
				return PLUGIN_HANDLED;
			}
			else
			{
				fm_give_item(id, "weapon_hegrenade");
				ColorChat(id, GREEN, "%s ^1Voce comprou^4 1 HE", PrefixoC);
				cs_set_user_money(id, money - 5000);
			}
		}			
		case 3:
		{
			if(money < 10000)
			{
				ColorChat(id, GREEN, "%s ^1Seu Vagabundo voce nao tem ^4dinheiro suficiente", PrefixoC);
				EmitSound(id, ERROR);
				return PLUGIN_HANDLED;
			}
			else
			{
				fm_give_item(id, "weapon_flashbang");
				fm_give_item(id, "weapon_flashbang");
				fm_give_item(id, "weapon_hegrenade");
				ColorChat(id, GREEN, "%s ^1Voce comprou^4 Kit Granadas", PrefixoC);
				cs_set_user_money(id, money - 10000);
			}
		}	
		case 4:
		{
			if(money < 12000)
			{
				ColorChat(id, GREEN, "%s ^1Seu Vagabundo voce nao tem ^4dinheiro suficiente", PrefixoC);
				EmitSound(id, ERROR);
				return PLUGIN_HANDLED;
			}
			else
			{
				cs_set_weapon_ammo(give_item(id, "weapon_deagle"), 1);
				ColorChat(id, GREEN, "%s ^1Voce comprou^4 Deagle 1 Bala", PrefixoC);
				cs_set_user_money(id, money - 12000);
			}
		}		
		case 5:
		{
			if(money < 10000)
			{
				ColorChat(id, GREEN, "%s ^1Seu Vagabundo voce nao tem ^4dinheiro suficiente", PrefixoC);
				EmitSound(id, ERROR);
				return PLUGIN_HANDLED;
			}
			else
			{
				fm_set_user_gravity(id, 0.500);
				set_task(15.0, "retirargravidade", id+TASKGRAVITY);
				ColorChat(id, GREEN, "%s ^1Voce comprou ^4Gravidade ^1por 15 Segundos", PrefixoC);
				cs_set_user_money(id, money - 9000);
			}
		}
		case 6:
		{
			if(money < 8000)
			{
				ColorChat(id, GREEN, "%s ^1Seu Vagabundo voce nao tem ^4dinheiro suficiente", PrefixoC);
				EmitSound(id, ERROR);
				return PLUGIN_HANDLED;
			}
			else
			{
				set_user_footsteps( id, 1 );
				
				ColorChat(id, GREEN, "%s ^1Voce comprou ^4Andar em Silencio", PrefixoC);
				HasSilent[ id ] = true;
				
				emit_sound( id, CHAN_ITEM, PICKUP_SND, VOL_NORM , ATTN_NORM , 0 , PITCH_NORM );
				menu_display( id, menu, 0 );
				cs_set_user_money(id, money - 8000);
			}
		}	
		case 7:
		{
			if(money < 15000)
			{
				ColorChat(id, GREEN, "%s ^1Seu Vagabundo voce nao tem ^4dinheiro suficiente", PrefixoC);
				EmitSound(id, ERROR);
				return PLUGIN_HANDLED;
			}
			else
			{
				set_lights("a");
				set_task(10.0, "retirarapagao", id+TASKAPAGAO);
				ColorChat(id, GREEN, "%s ^1Voce comprou ^4Apagao^1 10 Segundos", PrefixoC);
				cs_set_user_money(id, money - 15000);
				client_cmd(0, "spk %s", MP3_APAGAO);
				
			}
		}	
		case 8:
		{
			if(money < 14000)
			{
				ColorChat(id, GREEN, "%s ^1Seu Vagabundo voce nao tem ^4dinheiro suficiente", PrefixoC);
				EmitSound(id, ERROR);
				return PLUGIN_HANDLED;
			}
			else
			{
				set_user_rendering( id, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 0 );
				set_task(12.0, "retirarinvisivel", id+TASKINVISIVEL);
				ColorChat(id, GREEN, "%s ^1Voce comprou ^4Invisivel^1 12 Segundos", PrefixoC);
				cs_set_user_money(id, money - 14000);
			}
		}	
		case 9:
		{
			if(money < 7000)
			{
				ColorChat(id, GREEN, "%s ^1Seu Vagabundo voce nao tem ^4dinheiro suficiente", PrefixoC);
				EmitSound(id, ERROR);
				return PLUGIN_HANDLED;
			}
			else
			{
				set_user_health( id, get_user_health( id ) + 100 );
				ColorChat(id, GREEN, "%s ^1Voce comprou ^4+100 HP", PrefixoC);
				cs_set_user_money(id, money - 7000);
			}
		}	
		case 10:
		{
			if(money < 12000)
			{
				ColorChat(id, GREEN, "%s ^1Seu Vagabundo voce nao tem ^4dinheiro suficiente", PrefixoC);
				EmitSound(id, ERROR);
				return PLUGIN_HANDLED;
			}
			else
			{
				set_user_info(id, "model", "mafiabr_guarda");		
				entity_set_int(id, EV_INT_body, 3);
				
				set_task(15.0, "retirarroupaTR", id+TASKROUPATR);
				ColorChat(id, GREEN, "%s ^1Voce comprou ^4Roupa de Guarda^1 por 15 Segundos", PrefixoC);
				cs_set_user_money(id, money - 12000);
			}
		}
		case 11:
		{
			if(money < 16000)
			{
				ColorChat(id, GREEN, "%s ^1Seu Vagabundo voce nao tem ^4dinheiro suficiente", PrefixoC);
				EmitSound(id, ERROR);
				return PLUGIN_HANDLED;
			}
			else
			{
				new gItem = fm_give_item( id, "weapon_glock18" );
				if( pev_valid( gItem ) ) {
					cs_set_weapon_ammo( gItem, 20 );
					cs_set_user_bpammo( id , CSW_GLOCK18, 0 );
				}
				ColorChat(id, GREEN, "%s ^1Voce comprou ^4Glock 20 Balas", PrefixoC);
				cs_set_user_money(id, money - 16000);
			}
		}
		case 12:
		{
			if(money < 12000)
			{
				ColorChat(id, GREEN, "%s ^1Seu Vagabundo voce nao tem ^4dinheiro suficiente", PrefixoC);
				EmitSound(id, ERROR);
				return PLUGIN_HANDLED;
			}
			else
			{
				set_user_maxspeed( id, get_pcvar_float( gSpeedCvar ) );
				HasSpeed[ id ] = true;
				
				ColorChat(id, GREEN, "%s ^1Voce comprou ^4Velocidade", PrefixoC);
				cs_set_user_money(id, money - 12000);
			}
		}
		case 13:
		{
			if(money < 15000)
			{
				ColorChat(id, GREEN, "%s ^1Seu Vagabundo voce nao tem ^4dinheiro suficiente", PrefixoC);
				EmitSound(id, ERROR);
				return PLUGIN_HANDLED;
			}
			else
			{
				
				set_task( float( get_pcvar_num( gNoclipTime ) ), "remove_noclip", id );
				set_user_noclip( id, 1 );
				
				HasNoclip[ id ] = true;
				ColorChat(id, GREEN, "%s ^1Voce comprou ^4Noclip", PrefixoC);
				cs_set_user_money(id, money - 15000);
			}
		}
		
	}
	return PLUGIN_HANDLED;
}

public Shop_CT(id)
{	
	//new menu = menu_create("\rPresidio SKYFALL \d| Shop Guarda:", "ShowShopCT",0)
	
	new TAMTAM[128];
	formatex(TAMTAM, 127, "\r%s \dShop Dinheiro^n \r» \wDinheiro \y[\r$\w%d\y]", MenuTag, cs_get_user_money(id));
	new menu  = menu_create(TAMTAM, "ShowShopCT");
	
	menu_additem(menu, "\wNo-Clip \d(3 Segundos) \y[\r$\w7000\y]", "1", 0, -1);
	menu_additem(menu, "\wGravidade \d(15 Segundos) \y[\r$\w9000\y]", "2", 0, -1);
	menu_additem(menu, "\wHP 255 \y[\r$\w16000\y]", "4", 0, -1);
	menu_additem(menu, "\w+255 Colete \y[\r$\w7000\y]", "5", 0, -1);
	
	menu_setprop(menu, 4, "\wSair");
	
	menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
	menu_display(id, menu, 0);
	
	return PLUGIN_HANDLED;
}

public ShowShopCT(id, menu, item)
{
	if( item == MENU_EXIT )
	{
		menu_destroy(menu);
		return PLUGIN_HANDLED;
	}
	
	new data[6], szName[64];
	new access, callback;
	menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
	new key = str_to_num(data);
	
	new money;
	money = cs_get_user_money(id);
	
	switch(key)
	{
		case 1: 
		{
			if(money < 7000)
			{
				ColorChat(id, GREEN, "%s ^1Seu Vagabundo voce nao tem ^4dinheiro suficiente", PrefixoC);
				EmitSound(id, ERROR);
				return PLUGIN_HANDLED;
			}
			else
			{
				fm_set_user_noclip(id, 1);
				set_task(3.0, "retiraclip", id+TASKCLIP);
				ColorChat(id, GREEN, "%s ^1Voce comprou ^4No-Clip^1 por 3 Segundos", PrefixoC);
				cs_set_user_money(id, money - 7000);
			}
		}			
		case 2: 
		{
			if(money < 9000)
			{
				ColorChat(id, GREEN, "%s ^1Seu Vagabundo voce nao tem ^4dinheiro suficiente", PrefixoC);
				EmitSound(id, ERROR);
				return PLUGIN_HANDLED;
			}
			else
			{
				fm_set_user_gravity(id, 0.500);
				set_task(15.0, "retirargravidade", id+TASKGRAVITY);
				ColorChat(id, GREEN, "%s ^1Voce comprou ^4Gravidade ^1por 15 Segundos", PrefixoC);
				cs_set_user_money(id, money - 9000);
			}
		}				
		case 4:
		{
			if(money < 16000)
			{
				ColorChat(id, GREEN, "%s ^1Seu Vagabundo voce nao tem ^4dinheiro suficiente", PrefixoC);
				EmitSound(id, ERROR);
				return PLUGIN_HANDLED;
			}
			else
			{
				fm_set_user_health(id, 255.0);
				ColorChat(id, GREEN, "%s ^1Voce comprou^4 255 HP", PrefixoC);
				cs_set_user_money(id, money - 16000);
			}
		}		
		case 5:
		{
			if(money < 7000)
			{
				ColorChat(id, GREEN, "%s ^1Seu Vagabundo voce nao tem ^4dinheiro suficiente", PrefixoC);
				EmitSound(id, ERROR);
				return PLUGIN_HANDLED;
			}
			else
			{
				
				set_user_armor( id, get_user_armor( id ) + 255 );
				ColorChat(id, GREEN, "%s ^1Voce comprou ^4+255 Colete", PrefixoC);
				cs_set_user_money(id, money - 7000);
			}
		}
	}
	return PLUGIN_HANDLED;
}
public Remover_terremoto(id)
{
	remove_task(4701);
	client_cmd(id, "stop");
	ColorTAG(0, "\g[%s] \nO \tTerremoto \nAcabou", szTag);
}

public retirargravidade(id)
{
	id -= TASKGRAVITY;
	
	if( is_user_alive( id ) )
		fm_set_user_gravity(id, 1.0);
	
	ColorChat(id, GREEN, "%s ^1Sua ^4Gravidade ^1Terminou.", PrefixoC);
}

public retirarapagao(id)
{
	id -= TASKAPAGAO;
	
	set_lights("#OFF");
	
	ColorChat(id, GREEN, "%s ^1Seu ^4Apagao ^1Terminou.", PrefixoC);
}	

public retirarinvisivel(id)
{
	id -= TASKINVISIVEL;
	
	if( is_user_alive( id ) )
		set_user_rendering( id, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, 250 );
	
	ColorChat(id, GREEN, "%s ^1Seu ^4Invisivel ^1Terminou.", PrefixoC);
}	

public retirargod(id)
{
	id -= TASKGOD;
	
	if( is_user_alive( id ) )
		fm_set_user_godmode(id, 0);
		set_user_rendering( id, kRenderFxGlowShell, 0, 0, 0, kRenderNormal, 25 );
	
	ColorChat(id, GREEN, "%s ^1Seu ^4GodMode ^1Terminou.", PrefixoC);
}	

public retirarroupaTR(id)
{
	id -= TASKROUPATR;
	
	if(is_user_alive(id))
	{
		set_user_info(id, "model", "mafiabr_prisioneiro1");
		entity_set_int(id, EV_INT_body, 2);
		entity_set_int(id, EV_INT_skin, 0);	
	}
	ColorChat(id, GREEN, "%s ^1Sua ^4Roupa de Guarda ^1Terminou.", PrefixoC);
}

public retirarroupaCT(id)
{
	id -= TASKROUPACT;
	
	if(is_user_alive(id))
	{
		set_user_info(id, "model", "One6Models");		
		entity_set_int(id, EV_INT_body, 3);
	}
	ColorChat(id, GREEN, "%s ^1Sua ^4Roupa de Prisioneiro ^1Terminou.", PrefixoC);
}

public retiraclip(id)
{
	id -= TASKCLIP;
	
	if( is_user_alive( id ) )
		fm_set_user_noclip(id, 0);
	
	ColorChat(id, GREEN, "%s ^1Seu ^4No-Clip^1 Terminou.", PrefixoC);
}	

public Terremoto(id)
{
	for(new i = 1; i < 33; i++)
	{
		if(is_user_connected(i) && is_user_alive(i) )
		{
			message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("ScreenShake"), {0,0,0}, i) ; 
			write_short(0xFFFF);
			write_short(1<<13);
			write_short(0xFFFF) ;
			message_end();
			set_task(10.1,"Remover_terremoto",id);
		}
	}
}

////////////////////////////////// DUELO MAFIA BR ///////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////

public Cmd_LastRequest( id )
{
	if( !g_bAlive[ id ] )
	{
		ColorChat(id, GREEN, "%s ^1Voce precisar estar ^4vivo^1, para ^4Duelar!", PrefixoC);
		EmitSound(id, ERROR);
		return PLUGIN_HANDLED;
	}
	
	else if(!is_last_tr()) 
	{
		ColorChat(id, GREEN, "%s ^1Aguarde voce ser o ^4ultimo preso, ^1para Duelar", PrefixoC);
		EmitSound(id, ERROR);		
		return PLUGIN_HANDLED;
	}		
	
	else if(!has_ct_alive()) 
	{
		ColorChat(id, GREEN, "%s ^1Nenhum Guarda ^4encontrado^1, nao e possivel ^4Duelar.", PrefixoC);
		EmitSound(id, ERROR)		;
		return PLUGIN_HANDLED;
	}	
	else if(isFreeday == true) 
	{
		ColorChat(id, GREEN, "%s ^1Nao e possivel ^4duelar ^1no Freeday.", PrefixoC);
		EmitSound(id, ERROR);
		return PLUGIN_HANDLED;
	}
	else if( fm_get_user_team( id ) != FM_TEAM_TR )
	{
		ColorChat(id, GREEN, "%s ^1Somente ^4Prisioneiros^1, podem dar ^4Duelo", PrefixoC);
		EmitSound(id, ERROR);
		return PLUGIN_HANDLED;
	}
	
	/*
	else if( !g_bLastRequestAllowed )
	{
		ColorChat(id, GREEN, "%s ^1Aguarde, voce ser ultimo ^4preso ^1vivo, para ^4Duelar", PrefixoC);
		EmitSound(id, ERROR);
		return PLUGIN_HANDLED;
	}
	*/
	else if( g_iCurrentGame != LR_NONE )
	{
		ColorChat(id, GREEN, "%s ^1Aguarde, ja esta ^4acontecendo ^1um Duelo", PrefixoC);
		EmitSound(id, ERROR);
		return PLUGIN_HANDLED;
	}
	else if(is_last_tr())
		LastRequestMenu(id);
	
	else LastRequestMenu( id );
	
	return PLUGIN_HANDLED;
}

public LastRequestMenu( id )
{
	new hMenu = menu_create( "\r[MAFIA BR] \dEscolha o Duelo:", "LastRequestMenu_Handler" );
	
	new szInfo[ 6 ];
	
	for( new i = 0; i < MAX_GAMES; i++ )
	{
		num_to_str( i, szInfo, charsmax( szInfo ) );
		
		menu_additem( hMenu, g_szGameNames[ i ], szInfo );
	}
	
	menu_setprop( hMenu, MPROP_NEXTNAME, "Proxima" );
	menu_setprop( hMenu, MPROP_BACKNAME, "Anterior" );
	
	menu_display( id, hMenu, 0 );
}

public LastRequestMenu_Handler( id, hMenu, iItem )
{
	if( iItem == MENU_EXIT )
	{
		menu_destroy( hMenu );
		return PLUGIN_HANDLED;
	}
	
	new szData[ 6 ];
	new iAccess, hCallback;
	menu_item_getinfo( hMenu, iItem, iAccess, szData, charsmax( szData ), _, _, hCallback );
	
	g_iChosenGame[ id ] = str_to_num( szData );
	
	if( g_iCurrentGame != LR_NONE )
	{
		menu_destroy( hMenu );
		g_iChosenGame[ id ] = LR_NONE;
		ColorChat(id, GREEN, "%s ^1Aguarde, ja esta ^4acontecendo ^1um Duelo", PrefixoC);
		return PLUGIN_HANDLED;
	}
	
	ShowPlayerMenu( id );
	
	menu_destroy( hMenu );
	return PLUGIN_HANDLED;
}


public ShowPlayerMenu( id )
{
	new hMenu = menu_create( "\r[MAFIA BR] \dEscolha o Guarda:", "PlayerMenu_Handler" );
	
	new szPlayerName[ 32 ], szInfo[ 6 ];
	
	for( new i = 1; i < xMaxPlayers; i++ )
	{
		if( !g_bAlive[ i ] || cs_get_user_team( i ) != CS_TEAM_CT )
			continue;
		
		get_user_name( i, szPlayerName, charsmax( szPlayerName ) );
		
		num_to_str( i, szInfo, charsmax( szInfo ) );
		
		menu_additem( hMenu, szPlayerName, szInfo );
	}
	
	menu_setprop( hMenu, MPROP_NEXTNAME, "Proxima" );
	menu_setprop( hMenu, MPROP_BACKNAME, "Anterior" );
	
	menu_display( id, hMenu, 0 );
}

public PlayerMenu_Handler( id, hMenu, iItem )
{	
	if( iItem == MENU_EXIT || !g_bAlive[ id ] || g_iCurrentGame != LR_NONE )
	{
		g_iChosenGame[ id ] = LR_NONE;
		
		menu_destroy( hMenu );
		return PLUGIN_HANDLED;
	}
	
	new szData[ 6 ], szPlayerName[ 64 ];
	new iAccess, hCallback;
	
	menu_item_getinfo( hMenu, iItem, iAccess, szData, charsmax( szData ), szPlayerName, charsmax( szPlayerName ), hCallback );
	
	new iGuard = str_to_num( szData );
	
	if( !g_bAlive[ iGuard ] || fm_get_user_team( iGuard ) != FM_TEAM_CT )
	{
		ColorChat(id, GREEN, "%s ^1Este ^4Jogador ^1nao esta ^4disponivel ^1mais para Duelo", PrefixoC);
		menu_destroy( hMenu );
		
		ShowPlayerMenu( id );
		return PLUGIN_HANDLED;
	}
	
	StartGame( g_iChosenGame[ id ], id, iGuard );
	
	menu_destroy( hMenu );
	return PLUGIN_HANDLED;
}

public StartGame( iGame, iPrisoner, iGuard )
{
	g_iCurrentGame = iGame;
	
	g_iLastRequest[ LR_PRISONER ] = iPrisoner;
	g_iLastRequest[ LR_GUARD ] = iGuard;
	
	new szPrisonerName[ 32 ], szGuardName[ 32 ];
	
	get_user_name( iPrisoner, szPrisonerName, charsmax( szPrisonerName ) );
	get_user_name( iGuard, szGuardName, charsmax( szGuardName ) );
	
	StripPlayerWeapons( iPrisoner );
	StripPlayerWeapons( iGuard );
	
	fm_set_user_health( iPrisoner, 100.0 );
	fm_set_user_health( iGuard, 100.0 );
	
	fm_set_user_rendering(iPrisoner, kRenderFxGlowShell, 255, 0, 0, kRenderNormal, 20);
	fm_set_user_rendering(iGuard, kRenderFxGlowShell, 0, 0, 255, kRenderNormal, 20);
	
	//MakeCylinder(iPrisoner + TASK_CYLINDER);
	//MakeCylinder(iGuard + TASK_CYLINDER);
	
	EmitSound(0, DUELO);
	
	switch( iGame )
	{	
		case LR_SOCO:
		{		
			set_dhudmessage(0, 255, 0, -1.0, 0.4, 1, 0.1, 5.0);
			show_dhudmessage(0, "Duelo de Soco");
			
			ColorTAG( 0, "^4%s ^3%s ^1contra ^3%s ^1no Duelo de Soco", szTag, szPrisonerName, szGuardName);
			
			fm_give_item(iPrisoner, "weapon_knife");
			fm_give_item(iGuard, "weapon_knife");
			
			fm_set_user_health( iPrisoner, 255.0 );
			fm_set_user_health( iGuard, 255.0 );
		}
		
		case LR_DEAGLE:
		{
			set_dhudmessage(0, 255, 0, -1.0, 0.4, 1, 0.1, 5.0);
			show_dhudmessage(0, "Duelo de Deagle (Tiro por Tiro)");
			
			ColorTAG( 0, "^4%s ^3%s ^1contra ^3%s ^1no Duelo de Deagle", szTag, szPrisonerName, szGuardName);
			
			new DeagleItem = fm_give_item( iPrisoner, "weapon_deagle" );
			
			if( pev_valid( DeagleItem ) )
				cs_set_weapon_ammo( DeagleItem, 1 );
			
			new TempDeagleItem = fm_give_item( iGuard, "weapon_deagle" );
			if( pev_valid( TempDeagleItem ) ) 
				cs_set_weapon_ammo( TempDeagleItem, 1 );
			
			fm_set_user_health( iPrisoner, 255.0 );
			fm_set_user_health( iGuard, 255.0 );
		}
		
		case LR_SCOUT:
		{
			set_dhudmessage(0, 255, 0, -1.0, 0.4, 1, 0.1, 5.0);
			show_dhudmessage(0, "Duelo de Scout (Sem Mira)");
			
			ColorTAG( 0, "^4%s ^3%s ^1contra ^3%s ^1no Duelo de Scout", szTag, szPrisonerName, szGuardName);
			
			fm_give_item(iPrisoner, "weapon_scout");
			fm_give_item(iGuard, "weapon_scout");
			
			cs_set_user_bpammo(iPrisoner, CSW_SCOUT, 999);
			cs_set_user_bpammo(iGuard, CSW_SCOUT, 999);
			
			fm_set_user_health( iPrisoner, 255.0 );
			fm_set_user_health( iGuard, 255.0 );
			
			EnableHamForward (ForwardSecAttackScout);  			
		}
		
		case LR_AWP:
		{
			set_dhudmessage(0, 255, 0, -1.0, 0.4, 1, 0.1, 5.0);
			show_dhudmessage(0, "Duelo de AWP");
			
			ColorTAG( 0, "^4%s ^3%s ^1contra ^3%s ^1no Duelo de AWP", szTag, szPrisonerName, szGuardName);
			
			fm_give_item(iPrisoner, "weapon_awp");
			fm_give_item(iGuard, "weapon_awp");
			
			cs_set_user_bpammo(iPrisoner, CSW_AWP, 999);
			cs_set_user_bpammo(iGuard, CSW_AWP, 999);
			
			fm_set_user_health( iPrisoner, 255.0 );
			fm_set_user_health( iGuard, 255.0 );
		}
		
		case LR_M3:
		{
			set_dhudmessage(0, 255, 0, -1.0, 0.4, 1, 0.1, 5.0);
			show_dhudmessage(0, "Duelo de M3");
			
			ColorTAG( 0, "^4%s ^3%s ^1contra ^3%s ^1no Duelo de M3", szTag, szPrisonerName, szGuardName);
			
			fm_give_item(iPrisoner, "weapon_m3");
			fm_give_item(iGuard, "weapon_m3");
			
			cs_set_user_bpammo(iPrisoner, CSW_M3, 999);
			cs_set_user_bpammo(iGuard, CSW_M3, 999);
			
			fm_set_user_health( iPrisoner, 800.0 );
			fm_set_user_health( iGuard, 800.0 );
		}
		
		case LR_DROP:
		{
			set_dhudmessage(0, 255, 0, -1.0, 0.4, 1, 0.1, 5.0);
			show_dhudmessage(0, "Duelo de Drop");
			
			ColorTAG( 0, "^4%s ^3%s ^1contra ^3%s ^1no Duelo de Drop", szTag, szPrisonerName, szGuardName);
			
			new DeagleItem = fm_give_item( iPrisoner, "weapon_deagle" );
			if( pev_valid( DeagleItem ) ) {
				cs_set_weapon_ammo( DeagleItem, 0);
				cs_set_user_bpammo( iPrisoner, CSW_DEAGLE, 0 );
			}
			
			new TempDeagleItem = fm_give_item( iGuard, "weapon_deagle" );
			if( pev_valid( TempDeagleItem ) ) {
				cs_set_weapon_ammo( TempDeagleItem, 0 );
				cs_set_user_bpammo( iGuard, CSW_DEAGLE, 0 );
			}
			
			fm_give_item(iPrisoner, "weapon_knife");
			fm_give_item(iGuard, "weapon_knife");
			
			fm_set_user_gravity(iPrisoner);
			fm_set_user_gravity(iGuard);
		}

		case LR_TUBARAO_CT:
		{
			set_dhudmessage(0, 255, 0, -1.0, 0.4, 1, 0.1, 5.0);
			show_dhudmessage(0, "Duelo de Tubarao [CT]");
			
			ColorTAG( 0, "^4%s ^3%s ^1contra ^3%s ^1no Duelo de Tubarao [CT]", szTag, szPrisonerName, szGuardName);
			
			{
			fm_set_user_health(iPrisoner, 255.0);
			fm_set_user_armor(iPrisoner, 100.0);
			fm_give_item(iPrisoner, "weapon_awp");
			cs_set_user_bpammo(iPrisoner, CSW_AWP, 999);
			}
			
			{
			fm_set_user_health(iGuard, 255.0);
			fm_set_user_armor(iGuard, 100.0);
			fm_set_user_noclip(iGuard, 1);
			fm_give_item(iGuard, "item_assaultsuit");
			}
			
			fm_give_item(iPrisoner, "weapon_knife");
			fm_give_item(iGuard, "weapon_knife");
			
			fm_set_user_gravity(iPrisoner);
			fm_set_user_gravity(iGuard);
		}
		
		case LR_TUBARAO_TR:
		{
			set_dhudmessage(0, 255, 0, -1.0, 0.4, 1, 0.1, 5.0);
			show_dhudmessage(0, "Duelo de Tubarao [TR]");
			
			ColorTAG( 0, "^4%s ^3%s ^1contra ^3%s ^1no Duelo de Tubarao [TR]", szTag, szPrisonerName, szGuardName);
			
			{
			fm_set_user_health(iPrisoner, 255.0);
			fm_set_user_armor(iPrisoner, 100.0);
			fm_set_user_noclip(iPrisoner, 1);
			fm_give_item(iPrisoner, "item_assaultsuit");
			}
			
			{
			fm_set_user_health(iGuard, 255.0);
			fm_set_user_armor(iGuard, 100.0);
			fm_give_item(iGuard, "weapon_awp");
			cs_set_user_bpammo(iGuard, CSW_AWP, 999);
			}
			
			fm_give_item(iPrisoner, "weapon_knife");
			fm_give_item(iGuard, "weapon_knife");
			
			fm_set_user_gravity(iPrisoner);
			fm_set_user_gravity(iGuard);
		}
	}
}

/*
public MakeCylinder(id) {
	id -= TASK_CYLINDER;
	if(!is_user_alive(id) ||  g_iCurrentGame == LR_NONE)
		return PLUGIN_HANDLED;
	
	new r,g,b;
	switch(fm_get_user_team(id)) {
		case FM_TEAM_CT: r = 0, g = 0, b = 255;
			case FM_TEAM_TR: r = 255, g = 0, b = 0;
		}
	
	static origin[ 3 ];
	get_user_origin(id, origin);
	message_begin(MSG_BROADCAST, SVC_TEMPENTITY);
	write_byte(TE_BEAMCYLINDER);
	write_coord(origin[ 0 ]);
	write_coord(origin[ 1 ]);
	write_coord(origin[ 2 ]-10);
	write_coord(origin[ 0 ]);   
	write_coord(origin[ 1 ]);
	write_coord(origin[ 2 ]+200);
	write_short(CylinderSprite);
	write_byte(0); 
	write_byte(1);   
	write_byte(6);
	write_byte(2);
	write_byte(1);    
	write_byte(r);		// red  
	write_byte(g);		// green 
	write_byte(b);		// blue
	write_byte(200);	// brightness
	write_byte(0);		// speed
	message_end();
	
	if(g_iCurrentGame == LR_SOCO) set_task(0.3, "MakeCylinder", id + TASK_CYLINDER);
	else set_task(1.0, "MakeCylinder", id + TASK_CYLINDER);
	
	return PLUGIN_HANDLED;
}
*/
public EndLastRequest( iWinner, iLoser )
{
	new szWinnerName[ 32 ], szLoserName[ 32 ];
	
	get_user_name( iWinner, szWinnerName, 31 );
	get_user_name( iLoser, szLoserName, 31 );
	
	ColorChat(0, GREEN, "%s ^3%s ^1Venceu ^3%s ^1no Duelo!", PrefixoC, szWinnerName, szLoserName);
	
	StripPlayerWeapons( iLoser );
	
	g_iCurrentGame = LR_NONE;
	
	g_iLastRequest[ LR_PRISONER ] = 0;
	g_iLastRequest[ LR_GUARD ] = 0;
	
	set_task( 0.1, "Task_EndLR", TASK_ENDLR + iWinner );
}

public Task_EndLR( iTaskID )
{
	new id = iTaskID - TASK_ENDLR;
	
	StripPlayerWeapons( id );
	fm_set_user_health( id, 100.0 );
	fm_give_item(id, "weapon_knife");
}
/*
public client_PreThink(iPlayer)
{
static Float:flCurrentTime;
flCurrentTime = get_gametime();

if (flCurrentTime - g_flLastTime[iPlayer] < 0.5)
	return; 
	
	set_dhudmessage(0, 255, 0, 0.0, 0.2, 0, 1.0, 1.0);
	
	if(!check_players())
	{
		//ShowSyncHudMsg(iPlayer, szHud, "» Sem Vaga CT");
		
		show_dhudmessage(iPlayer, "» Sem Vaga CT");
	}	
	else
	{
		show_dhudmessage(iPlayer, "» Tem Vaga CT");
		//ShowSyncHudMsg(iPlayer, szHud, "» Tem Vaga CT");
	}
	//g_flLastTime[iPlayer] = flCurrentTime;
}
*/

public HudT(id)
{
	//set_dhudmessage(0, 255, 0, 0.0, 0.2, 0, 1.0, 1.0);
	
	if(!check_players())
	{
		set_hudmessage(255, 0, 0, 0.0, 0.2, 0, 1.0, 1.0);
		ShowSyncHudMsg(id, szHud, "» Sem Vaga CT");
		
		
		
		//show_dhudmessage(iPlayer, "» Sem Vaga CT");
	}	
	else
	{
		set_hudmessage(0, 255, 0, 0.0, 0.2, 0, 1.0, 1.0);
		ShowSyncHudMsg(id, szHud, "» Tem Vaga CT ");
		
	}
}
stock is_last_tr(id = 0) 
{
	new iPlayers[ 32 ], iNum;
	get_players(iPlayers, iNum, "ae", "TERRORIST");
	
	if(id == 0 && iNum == 1)
		return iPlayers[ 0 ];
	
	if(iNum == 1 && id == iPlayers[ 0 ])
		return iPlayers[ 0 ];
	
	return 0;
}

stock fm_find_ent_by_owner(index, const classname[], owner, jghgtype = 0) {
	new strtype[11] = "classname", ent = index;
	switch (jghgtype) {
		case 1: strtype = "target";
			case 2: strtype = "targetname";
		}
	
	while ((ent = engfunc(EngFunc_FindEntityByString, ent, strtype, classname)) && pev(ent, pev_owner) != owner) {}
	
	return ent;
}

stock has_ct_alive() {
	new iPlayers[ 32 ], iNum;
	get_players(iPlayers, iNum, "ae", "CT");
	
	if(iNum > 0)
		return 1;
	
	return 0;
}

get_playercount( CsTeams:iTeam, iStatus ) {
	new iPlayerCount;
	
	for( new i = 1; i <= xMaxPlayers; i++ )
	{
		if( !g_bConnected[ i ] || cs_get_user_team( i ) != iTeam ) continue;
		
		switch( iStatus )
		{
			case DEAD: if( g_bAlive[ i ] ) continue;
				case ALIVE: if( !g_bAlive[ i ] ) continue;
			}
		
		iPlayerCount++;
	}
	
	return iPlayerCount;
}

#define OFFSET_PRIMARYWEAPON        116 

public StripPlayerWeapons(id) 
{ 
	strip_user_weapons(id) ;
	set_pdata_int(id, OFFSET_PRIMARYWEAPON, 0) ;
}


///////////////////////////
/* Button Shot Activated */	
///////////////////////////
public FwdTraceAttack_Post(this, idattacker)
{
	if (get_user_weapon(idattacker) != CSW_KNIFE && cs_get_user_team(idattacker) == CS_TEAM_CT)
	{
		ExecuteHamB(Ham_Use, this, idattacker, idattacker, 2, 1.0);
	}
	else if( cs_get_user_team(idattacker) == CS_TEAM_CT)
	{
		ExecuteHamB(Ham_Use, this, idattacker, idattacker, 2, 1.0);
	}
}

public set_client_kv(id, const info[], const key[])
{
	if(equal(key, "model"))
		return FMRES_SUPERCEDE;
	
	return FMRES_IGNORED;
}

stock UserHasWeapons( index, WeaponSlot = 0 ) {
	if( WeaponSlot == 0 || WeaponSlot == 1 ) {
		if( user_has_weapon( index, CSW_SCOUT ) ||
		user_has_weapon( index, CSW_XM1014 ) ||
		user_has_weapon( index, CSW_MAC10 ) ||
		user_has_weapon( index, CSW_AUG ) ||
		user_has_weapon( index, CSW_UMP45 ) ||
		user_has_weapon( index, CSW_SG550 ) ||
		user_has_weapon( index, CSW_GALIL ) ||
		user_has_weapon( index, CSW_FAMAS ) ||
		user_has_weapon( index, CSW_AWP ) ||
		user_has_weapon( index, CSW_MP5NAVY ) ||
		user_has_weapon( index, CSW_M249 ) ||
		user_has_weapon( index, CSW_M3 ) ||
		user_has_weapon( index, CSW_M4A1 ) ||
		user_has_weapon( index, CSW_TMP ) ||
		user_has_weapon( index, CSW_G3SG1 ) ||
		user_has_weapon( index, CSW_SG552 ) ||
		user_has_weapon( index, CSW_AK47 ) ||
		user_has_weapon( index, CSW_P90 ) )		
		return 1;
	}
	
	if( WeaponSlot == 0 || WeaponSlot == 2 ) {
		if( user_has_weapon( index, CSW_P228 ) ||
		user_has_weapon( index, CSW_ELITE ) ||
		user_has_weapon( index, CSW_FIVESEVEN ) ||
		user_has_weapon( index, CSW_USP ) ||
		user_has_weapon( index, CSW_GLOCK18 ) ||
		user_has_weapon( index, CSW_DEAGLE ) )
		return 1;
	}
	
	return 0;
}

/** SEDATIVO **/
public set_user_sedativo( id ){
	if( CheckBit( id, xHasSedativo ))
		return PLUGIN_HANDLED;
	
	if( get_user_weapon( id ) == CSW_KNIFE ){
		set_pev( id, pev_viewmodel2, V_SEDATIVO );
		set_pev( id, pev_weaponmodel, 0 );
	}
	
	SetBit( id,xHasSedativo );
	SetBit( id,xUseSedativo );
	xPlayerUseSedativo[ id ] = 0;
	
	return PLUGIN_HANDLED;
}

/* SEDATIVO */

stock make_ScreenFade( index, Float:fDuration, red, green, blue, alpha ){
	new i = index ? index : get_player();
	if( !i ){
		return 0;
	}
	
	message_begin( index ? MSG_ONE : MSG_ALL, g_msgScreenFade, {0, 0, 0}, index );
	write_short(floatround(4096.0 * fDuration, floatround_round));
	write_short(floatround(4096.0 * fDuration, floatround_round));
	write_short(4096);
	write_byte(red);
	write_byte(green);
	write_byte(blue);
	write_byte(alpha);
	message_end();
	
	return 1;
}

stock get_player(){
	for( new index = 1; index <= xMaxPlayers; index++ ){
		if( is_user_connected( index ) && is_user_alive( index )){
			return index;
		}
	}
	
	return 0;
}

public PlayerPreThink(id)
{		
	if(iBhop[id])
	{
		if (entity_get_int(id, EV_INT_button) & 2) {    
			new flags = entity_get_int(id, EV_INT_flags);
			
			if (flags & FL_WATERJUMP)
				return PLUGIN_CONTINUE;
			if ( entity_get_int(id, EV_INT_waterlevel) >= 2 )
				return PLUGIN_CONTINUE;
			if ( !(flags & FL_ONGROUND) )
				return PLUGIN_CONTINUE;
			
			new Float:velocity[3];
			entity_get_vector(id, EV_VEC_velocity, velocity);
			velocity[2] += 250.0;
			entity_set_vector(id, EV_VEC_velocity, velocity);
			
			entity_set_int(id, EV_INT_gaitsequence, 6)    ;
		}
	}	
	return PLUGIN_CONTINUE;
}

stock EmitSound(index, sound)
{
	switch(sound)
	{
		case REBELADO: client_cmd(index, "spk %s", sound_psm[0]);
			case DUELO: client_cmd(index, "spk %s", sound_psm[1]);
			case ERROR: client_cmd(index, "spk %s", sound_psm[2]);
			case TEMPO: client_cmd(index, "spk %s", sound_psm[3]);
			case MORTE: client_cmd(index, "spk %s", sound_psm[4]);
			case CELA: client_cmd(0, "spk %s", sound_psm[5]);
		}
}
stock fm_set_user_health(index, Float:health = 100.0)
{
	set_pev(index, pev_health, health);
	return 1;
}

stock fm_set_user_armor(index, Float:armor = 100.0)
{
	set_pev(index, pev_armorvalue, armor);
	return 1;
}

stock fm_set_user_godmode( index, godmode = 0 )
{
	set_pev(index, pev_takedamage, godmode == 1 ? DAMAGE_NO : DAMAGE_AIM);
	return 1;
}
stock fm_get_user_godmode(index) {
	new Float:val;
	pev(index, pev_takedamage, val);
	
	return (val == DAMAGE_NO);
}
stock fm_set_user_gravity(index, Float:gravity = 1.0)
{
	set_pev(index, pev_gravity, gravity);
	return 1;
}
stock fm_get_user_gravity(index)
	return pev(index, pev_gravity);
stock fm_set_user_maxspeed(index, Float:speed = 250.0)
{
	set_pev(index, pev_maxspeed, speed);
	return 1;
}

stock fm_set_user_noclip(index, noclip = 0)
{
	set_pev(index, pev_movetype, noclip == 1 ? MOVETYPE_NOCLIP : MOVETYPE_WALK);
	return 1;
}
stock fm_get_user_noclip(index)
	return (pev(index, pev_movetype) == MOVETYPE_NOCLIP);

stock fm_strip_player_weapons(index)
{
	new ent = fm_create_entity("player_weaponstrip");
	if(!pev_valid(ent))
		return 0;
	
	dllfunc(DLLFunc_Spawn, ent);
	dllfunc(DLLFunc_Use, ent, index);
	fm_remove_entity(ent);
	set_pdata_int(index, m_iPrimaryWeapon, 0, OFFSET_LINUX);
	
	return 1;
}

stock fm_give_item(index, const item[])
{
	if(!equal(item, "weapon_", 7) && !equal(item, "ammo_", 5) && !equal(item, "item_", 5))
		return 0;
	
	new ent = fm_create_entity(item);
	if(!pev_valid(ent))
		return 0;
	
	new Float:origin[ 3 ];
	pev(index, pev_origin, origin);
	set_pev(ent, pev_origin, origin);
	set_pev(ent, pev_spawnflags, pev(ent, pev_spawnflags) | SF_NORESPAWN);
	dllfunc(DLLFunc_Spawn, ent);
	
	new save = pev(ent, pev_solid);
	dllfunc(DLLFunc_Touch, ent, index);
	if(pev(ent, pev_solid) != save)
		return ent;
	
	fm_remove_entity(ent);
	
	return -1;
}

stock fm_create_entity(const classname[])
	return engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, classname));

stock fm_remove_entity(index)
	return engfunc(EngFunc_RemoveEntity, index);

stock fm_set_user_rendering(entity, fx = kRenderFxNone, r = 255, g = 255, b = 255, render = kRenderNormal, amount = 40)
{
	new Float:RenderColor[ 3 ];
	RenderColor[ 0 ] = float(r);
	RenderColor[ 1 ] = float(g);
	RenderColor[ 2 ] = float(b);
	
	set_pev(entity, pev_renderfx, fx);
	set_pev(entity, pev_rendercolor, RenderColor);
	set_pev(entity, pev_rendermode, render);
	set_pev(entity, pev_renderamt, float(amount));
	
	return 1;
}

stock ColorTAG(const id, const input[], any:...)
{
	new msg[191], players[32], count = 1;
	vformat(msg,190,input,3);
	replace_all(msg,190,"\g","^4");
	replace_all(msg,190,"\n","^1");
	replace_all(msg,190,"\t","^3");
	
	if (id) players[0] = id; else get_players(players,count,"ch");
	for (new i=0;i<count;i++)
	{
		if (is_user_connected(players[i]))
		{
			message_begin(MSG_ONE_UNRELIABLE,get_user_msgid("SayText"),_,players[i]);
			write_byte(players[i]);
			write_string(msg);
			message_end();
		}
	}
} 

szName(id){
	new szName[33];
	
	get_user_name(id, szName, charsmax(szName));
	
	return szName;
}

public Simples_Countdown(id)
{
	if(contagem)
	{
		switch(timers)
		{
			case 0:
			{
				set_hudmessage(0, 255, 0, -1.0, -1.0, 0, 6.0, 3.0);
				show_hudmessage(0, "=>>> Celas foram Abertas <<<=^n=>>> GoGoGo <<<=");
				FreedayCelas();
				//client_cmd( 0, "mp3 play %s", MP3_FREEDAY );			
			}
			
			case 1:
			{
				client_cmd(0, "spk ^"fvox/one.wav^"");
				set_task(1.0, "Simples_Countdown", 0);
			}
			
			case 2:
			{
				client_cmd(0, "spk ^"fvox/two.wav^"");
				set_task(1.0, "Simples_Countdown", 0);
			}
			
			case 3:
			{
				client_cmd(0, "spk ^"fvox/three.wav^"");
				set_task(1.0, "Simples_Countdown", 0);
			}
			
			case 4:
			{
				client_cmd(0, "spk ^"fvox/four.wav^"");
				set_task(1.0, "Simples_Countdown", 0);
			}
			
			case 5:
			{
				client_cmd(0, "spk ^"fvox/five.wav^"");
				set_task(1.0, "Simples_Countdown", 0);
			}
			
			case 6:
			{
				client_cmd(0, "spk ^"fvox/six.wav^"");
				set_task(1.0, "Simples_Countdown", 0);
			}
			case 7:
			{
				client_cmd(0, "spk ^"fvox/seven.wav^"");
				set_task(1.0, "Simples_Countdown", 0);
			}
			
			case 8:
			{
				client_cmd(0, "spk ^"fvox/eight.wav^"");
				set_task(1.0, "Simples_Countdown", 0);
			}
			
			case 9:
			{
				client_cmd(0, "spk ^"fvox/nine.wav^"");
				set_task(1.0, "Simples_Countdown", 0);
			}
			
			case 10:{
				client_cmd(0, "spk ^"fvox/ten.wav^"");     
				set_task(1.0, "Simples_Countdown", 0);
			}
			case 11, 12, 13, 14, 15:
			{
				set_task(1.0, "Simples_Countdown", 0);
			}
		}
		
		if(timers != 0) {
			set_hudmessage(0, 255, 0, -1.0, 0.4, 0, 6.0, 1.0);
			show_hudmessage(0, "Celas serao abertas em [%i] Segundos", timers);
			timers--;
		}
	}
}
public FreedayCelas()
{
	ColorTAG(0, "\g%s \nAs \gCelas \nforam \tabertas \npara o Freeday\g.", szTag);
	Push_Button();
}

public Push_Button()
{
	static i;
	for(i = 0; i < sizeof(g_iButtons); i++)
	{
		if(g_iButtons[i])
		{
			ExecuteHamB(Ham_Use, g_iButtons[i], 0, 0, 1, 1.0);
			entity_set_float(g_iButtons[i], EV_FL_frame, 0.0);
			EmitSound(0, CELA);			
		}
	}
}
stock fm_cs_get_user_team( id )
	return get_pdata_int( id, m_iCsTeams, m_iLinux );

public setup_buttons()
{
	new ent = 1; 
	new ent3 ;
	new Float:origin[3]; 
	new Float:radius = 200.0; 
	new class[32];
	new name[32];
	new pos;
	while((pos <= sizeof(g_iButtons)) && (ent = engfunc(EngFunc_FindEntityByString, ent, "classname", "info_player_deathmatch"))){ 
		new ent2 = 1 ;
		pev(ent, pev_origin, origin); 
		while((ent2 = engfunc(EngFunc_FindEntityInSphere, ent2, origin, radius))){ 
			if(!pev_valid(ent2))
				continue; 
			
			pev(ent2, pev_classname, class, charsmax(class)); 
			if(!equal(class, "func_door")) // if it's not a door, move on to the next iteration
				continue ;
			
			pev(ent2, pev_targetname, name, charsmax(name)); 
			ent3 = engfunc(EngFunc_FindEntityByString, 0, "target", name); // find button that opens this door
			if(pev_valid(ent3) && (in_array(ent3, g_iButtons, sizeof(g_iButtons)) < 0)) { 
				ExecuteHamB(Ham_Use, ent3, 0, 0, 1, 1.0); // zomg poosh it
				g_iButtons[pos] = ent3 ;
				pos++ ;// next
				break ;// break from current while loop
			} 
		} 
	} 
	return pos ;
}
stock in_array(needle, data[], size)
{
	for(new i = 0; i < size; i++)
	{
		if(data[i] == needle)
			return i;
	}
	return -1;
}

public StrondaJBShop( id )
{
	if( !is_user_alive( id ) )
	{
		ColorChat( id, GREEN, "%s ^1Voce deve estar ^3vivo ^1para ^4comprar ^1um Item^3!",szTag );
		return PLUGIN_HANDLED;
	}
	
	new szText[ 555 char ];
	formatex( szText, charsmax( szText ), "\r[MAFIA BR] \dShop Cigarros %s ^n\r» \wCigarros \y[\r%d\y]", VERSION, xStrondaCash[ id ] );
	
	new menu = menu_create( szText, "shop_handler" );
	
	
	
	
	formatex( szText, charsmax( szText ), "\wMochila a Jato \d(10 Segundos) \w- \y[\r20 \wCigarros\y]", get_pcvar_num( gJetTime ), get_pcvar_num( gJetPackCost ) );
	menu_additem( menu, szText, "1", 0 );
	
	formatex( szText, charsmax( szText ), "\wDeagle \d(7 Balas) \w- \y[\r15 \wCigarros\y]", get_pcvar_num( gDeagleCost ) );
	menu_additem( menu, szText, "2", 0 );
	
	formatex( szText, charsmax( szText ), "\wBunnyHop \d(1 Round) \w- \y[\r80 \wCigarros\y]" , get_pcvar_num( gBunnyCost ));
	menu_additem( menu, szText, "3", 0 );
	
	formatex( szText, charsmax( szText ), "\wGodMode \d(6 Segundos) \w- \y[\r65 \wCigarros\y]" );
	menu_additem( menu, szText, "4", 0 );
	
	
	menu_setprop( menu, MPROP_EXIT, MEXIT_ALL );
	
	menu_display( id, menu, 0 );
	
	return PLUGIN_CONTINUE;
}
public shop_handler( id, menu, item )
{
	if( item == MENU_EXIT )
	{
		menu_destroy( menu );
		return PLUGIN_HANDLED;
	}
	new data[ 6 ], iName[ 64 ], access, callback;
	menu_item_getinfo( menu, item, access, data, charsmax( data ), iName, charsmax( iName ), callback );
	
	new key = str_to_num( data );
	new points = xStrondaCash[ id ];
	
	switch( key )
	{
		
		case 1:
		{
			if( HasJet[ id ] )
			{
				allready_have( id );
				return PLUGIN_HANDLED;
			}
			
			if( points < get_pcvar_num( gJetPackCost ) )
			{
				dont_have( id );
				return PLUGIN_HANDLED;
			}
			
			set_task( float( get_pcvar_num( gJetTime ) ), "remove_jetpack", id );
			
			ColorChat( id, GREEN, "%s ^1Voce Comprou ^4Mochila a Jato ^1por 10 Segundos",szTag, get_pcvar_num( gJetPackCost ), xStrondaCash[ id ] );
			HasJet[ id ] = true;
			
			xStrondaCash[ id ] -= get_pcvar_num( gJetPackCost );
			emit_sound( id, CHAN_ITEM, PICKUP_SND, VOL_NORM , ATTN_NORM , 0 , PITCH_NORM );
			menu_display( id, menu, 1 );
		}
		case 2:
		{
			if( HasDeagle[ id ] || user_has_weapon( id, CSW_DEAGLE ) )
			{
				allready_have( id );
				return PLUGIN_HANDLED;
			}
			if( points < get_pcvar_num( gDeagleCost ) )
			{
				dont_have( id );
				return PLUGIN_HANDLED;
			}
			
			strip_user_weapons( id );
			give_item( id, "weapon_knife" );
			give_item( id, "weapon_deagle" );
			
			ColorChat( id, GREEN, "%s ^1Voce Comprou ^4Deagle 7 Tiros",szTag, get_pcvar_num( gDeagleCost ), xStrondaCash[ id ] );
			HasDeagle[ id ] = true;
			
			xStrondaCash[ id ] -= get_pcvar_num( gDeagleCost );
			emit_sound( id, CHAN_ITEM, PICKUP_SND, VOL_NORM , ATTN_NORM , 0 , PITCH_NORM );
			menu_display( id, menu, 1 );
		}
		case 3:
		{
			if(points < 80)
			{
				dont_have( id );
				EmitSound(id, ERROR);
				return PLUGIN_HANDLED;
			}
			else
			{
				iBhop[id] = true;				
				ColorChat(id, GREEN, "%s ^1Voce comprou ^4BunnyHop ^1por 1 Round", PrefixoC);
				xStrondaCash[ id ] -= get_pcvar_num( gBunnyCost );
			}
		}
		case 4:
		{
			if(points < 65)
			{
				dont_have( id );
				EmitSound(id, ERROR);
				return PLUGIN_HANDLED;
			}
			else
			{
				fm_set_user_godmode(id, 1);
				set_user_rendering( id, kRenderFxGlowShell, 255, 140, 0, kRenderNormal, 25 );
				set_task(6.0, "retirargod", id+TASKGOD);
				ColorChat(id, GREEN, "%s ^1Voce comprou ^4GodMode ^1por 6 Segundos", PrefixoC);
				xStrondaCash[ id ] -= 65;
			}
		}
		
	}
	
	return PLUGIN_HANDLED;
}
public bacon_playerJumping( id )
{
	if(HasJet[ id ] )
	{
		new iOrigin[ 3 ];
		get_user_origin( id, iOrigin, 0 );
		
		iOrigin[ 2 ] -= 20;
		
		new Float:fVelocity[ 3 ];
		pev( id, pev_velocity, fVelocity );
		
		fVelocity[ 2 ] += 93;
		
		set_pev( id, pev_velocity, fVelocity );
		create_flame( iOrigin );
	}
}	
public HookCurWeapon( id )
{
	if(HasSpeed[ id ] )
	{
		set_user_maxspeed( id, get_pcvar_float( gSpeedCvar ) );
	}
}
public forward_kill( id )
{
	if(is_user_alive( id ) )
	{
		//ColorChat( id, GREEN, "%s ^1Voce Perdeu ^4%d ^3Cigarros ^1Porque ter dado ^4Kill",szTag, get_pcvar_num( gSuiciderPointsCvar ) );
		//xStrondaCash[ id ] -= get_pcvar_num( gSuiciderPointsCvar );
	}
}	
public logevent_round_start()
{
	new iPlayers[ 32 ], iNum, i, id;
	get_players( iPlayers, iNum, "c" );
	
	for( i = 0; i < iNum; i++ )
	{
		id = iPlayers[ i ];
		HasHe[ id ] = false;
		HasBothGren[ id ] = false;
		HasSilent[ id ] = false;
		HasHealth[ id ] = false;
		HasArmor[ id] = false;
		HasSpeed[ id ] = false;
		HasGravity[ id ] = false;
		HasInvis[ id ] = false;
		HasNoclip[ id ] = false;
		HasJet[ id ] = false;
		HasDeagle[ id ] = false;
		HasLongJump[ id ] = false;
		HasGlow[ id ] = false;
		HasNVG[ id ] = false;
		checkRebel[id] = false;
		
		set_user_gravity( id, 1.0 );	
		set_user_maxspeed( id, 0.0 );
		set_user_footsteps( id, 0 );
		set_user_noclip( id, 0 );
		set_user_rendering( id );
		set_user_nvg( id, 0 );
		remove_user_nvg( id );
		remove_task( id );
	}
}
public Hook_Deathmessage()
{
	new killer = read_data( 1 );
	new victim = read_data( 2 );
	
	if( killer == victim )
	{
		return PLUGIN_HANDLED;
	}
	if(isFreeday == true) 
	{
		if(cs_get_user_team(killer) == CS_TEAM_CT)
		{
			xStrondaCash[ killer ] += 1;
		}
	}
	if(cs_get_user_team(killer) == CS_TEAM_T)
	{
		xStrondaCash[ killer ] += get_pcvar_num( xStrondaCashCvar );
	}
	if(cs_get_user_team(killer) == CS_TEAM_CT)
	{
		if(checkRebel[victim] && isFreeday == false && g_iCurrentGame == LR_NONE) 
		{
			xStrondaCash[ killer ] += 1;
			//client_print(0,print_chat,"debug: ct ganhou 1 moeda por tr rebelado");
		}
	}
	checkRebel[victim] = false;
	HasHe[ victim ] = false;
	HasBothGren[ victim ] = false;
	HasSilent[ victim ] = false;
	HasHealth[ victim ] = false;
	HasArmor[ victim ] = false;
	HasSpeed[ victim ] = false;
	HasGravity[ victim ] = false;
	HasInvis[ victim ] = false;
	HasNoclip[ victim ] = false;
	HasJet[ victim ] = false;
	HasDeagle[ victim ] = false;
	HasLongJump[ victim ] = false;
	HasGlow[ victim ] = false;
	HasNVG[ victim ] = false;
	
	set_user_gravity( victim, 1.0 );	
	set_user_maxspeed( victim, 0.0 );
	set_user_footsteps( victim, 0 );
	set_user_noclip( victim, 0 );
	set_user_rendering( victim );
	set_user_nvg( victim, 0 );
	remove_user_nvg( victim );
	remove_task( victim );
	
	return PLUGIN_HANDLED;
}
public remove_noclip( id )
{
	HasNoclip[ id ] = false;
	set_user_noclip( id, 0 );
	ColorChat( id, GREEN, "%s ^1Seu ^4Noclip ^1Terminou.",szTag, get_pcvar_num( gNoclipTime ) );
}
public remove_jetpack( id )
{
	HasJet[ id ] = false;
	ColorChat( id, GREEN, "%s ^1Sua ^4Mochila a Jato ^1Terminou.",szTag, get_pcvar_num( gJetTime ) );
}
public remove_lj( index )
{
	HasLongJump[ index ] = false;
	engfunc( EngFunc_SetPhysicsKeyValue, index, "slj", "0" );
	client_print( index, print_chat, "[ ONE6 ] %L", index, "DRSHOP_LJ_OFF", get_pcvar_num( gLongJumpTime ) );
}
stock allready_have( id )
{
	ColorChat( id, GREEN, "%s ^1Voce Ja tem este ^4Item^3.", szTag );
}	
stock dont_have( id )
{
	ColorChat( id, GREEN, "%s ^1Voce Nao Tem ^4Cigarros ^1Suficientes^4.",szTag );
}	
stock save_client_points( index )
{
	gVault = nvault_open( "CigarrosLoad" );
	
	if( gVault == INVALID_HANDLE )
	{
		set_fail_state( "[ ONE6 ] nValut ERROR: =-> Invalid-Handle" );
	}
	get_user_authid( index, gSteamID, charsmax( gSteamID ) );
	
	formatex( vKey, charsmax( vKey ), "%sPOINTS", gSteamID );
	formatex( vData, charsmax( vData ), "%d", xStrondaCash[ index ] );
	nvault_set( gVault, vKey, vData );
	nvault_close( gVault );
}
stock load_client_points( index )
{
	gVault = nvault_open( "CigarrosLoad" );
	
	if( gVault == INVALID_HANDLE )
	{
		set_fail_state( "[ ONE6 ] nValut ERROR: =-> Invalid-Handle" );
	}
	
	get_user_authid( index, gSteamID, charsmax( gSteamID ) );
	
	formatex( vKey, charsmax( vKey ), "%sPOINTS", gSteamID );
	xStrondaCash[ index ] = nvault_get( gVault, vKey );
	nvault_close( gVault );
}
stock create_flame( origin[ 3 ] )
{
	message_begin( MSG_PVS, SVC_TEMPENTITY, origin );
	write_byte( TE_SPRITE );
	write_coord( origin[ 0 ] );
	write_coord( origin[ 1 ] );
	write_coord( origin[ 2 ] );
	write_short( gJetSprite );
	write_byte( 3 );
	write_byte( 99 );
	message_end();
}
stock set_temporary_longjump( index )
{
	message_begin( MSG_ONE_UNRELIABLE, gMsgItemPickup, _, index );
	write_string( "item_longjump" );
	message_end();
	
	engfunc( EngFunc_SetPhysicsKeyValue, index, "slj", "1" );
	set_task( float( get_pcvar_num( gLongJumpTime ) ), "remove_lj", index );
}
stock set_user_nvg( index, nvgoggles = 1 )
{
	if( nvgoggles )
	{
		set_pdata_int( index, m_iNvg, get_pdata_int( index, m_iNvg ) | HAS_NVGS );
	}
	
	else
	{
		set_pdata_int( index, m_iNvg, get_pdata_int( index, m_iNvg ) & ~HAS_NVGS );
	}
}

stock remove_user_nvg( index )
{
	new iNvgs = get_pdata_int( index, m_iNvg, m_iLinuxDiff );
	
	if( !iNvgs )
	{
		return;
	}
	
	if( iNvgs & USES_NVGS )
	{
		emit_sound( index, CHAN_ITEM, SOUND_NVGOFF, VOL_NORM, ATTN_NORM, 0, PITCH_NORM );
		
		emessage_begin( MSG_ONE_UNRELIABLE, gMessageNVG, _, index );
		ewrite_byte( 0 );
		emessage_end();
	}
	
	set_pdata_int( index, m_iNvg, 0, m_iLinuxDiff );
}  
/* --| Enf of plugin... */

/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1046\\ f0\\ fs16 \n\\ par }
*/
yagami is offline
 



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 15:40.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode