Raised This Month: $51 Target: $400
 12% 

What to do to fix this


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
husam124
BANNED
Join Date: Jul 2017
Location: Usa
Old 04-08-2019 , 07:01   What to do to fix this
Reply With Quote #1

i edited this plugin and i added freez but its not work
Code:
#include <amxmodx>
#include <cstrike>
#include <amxmisc>
#include <fakemeta>
#include <fun>
#include <hamsandwich>
#include <dhudmessage>
#include <colorchat>
#include < engine >

#pragma tabsize 0

#define PLUGIN 		"[MG] GRAB"
#define VERSION		"2.0"
#define AUTHOR		"Nuhannad"

#define ADMIN 		ADMIN_LEVEL_F 
#define RESON_KICK	"Kick [MG Grab] 4utau PravuLa"
#define GRAB_MENU

#define TSK_CHKE 50

#define SF_FADEOUT 0

new client_data[33][4]
#define GRABBED  0
#define GRABBER  1
#define GRAB_LEN 2
#define FLAGS    3

#define CDF_IN_PUSH   (1<<0)
#define CDF_IN_PULL   (1<<1)
#define CDF_NO_CHOKE  (1<<2)

#define mg_sound_kill		"MG_SOUND/mg_grab_kill.wav"
#define mg_sound_tel		"MG_SOUND/mg_grab_tel.wav"
#define mg_sound_on			"MG_SOUND/mg_grab_on_1.wav"
#define mg_sound_off		"MG_SOUND/mg_grab_off_1.wav"
#define mg_sound_bury		"MG_SOUND/mg_grab_bury.wav"
#define IsPlayer(%1) (1 <= %1 <= g_iMaxPlayers) 
#define is_user_frozen(%1)   bFrozen[%1]
#define ADMIN_ALLOWED   ADMIN_KICK

/* const */
const iVictim = 2;

const XO_WEAPONS = 4;
const m_pPlayer = 41;
const m_iId = 43;
/*       */

new g_iMaxPlayers;
new fwPreThink;

/* bool */
new bool:bFrozen[ 33 ];
/*      */

/* pcvars */
new pCvarDistance;
new pCvarAllowMouse;
new pCvarOnlyKnife;
new pCvarAllowJump;
new pCvarBlockChat;
new pCvarBlockVoice;
/*        */

/* floats */
new Float: iAngles[ 33 ][ 3 ];
/*        */

enum
{
r = 0.0,
g = 255.0,
b = 0.0,

a = 200.0
};

new bool: Mg_B[33], Mg_D[33]

new p_enabled, p_players_only
new p_throw_force, p_min_dist, p_speed, p_grab_force
new p_choke_time, p_choke_dmg, p_auto_choke
new p_glow
new speed_off[33]
new g_iBeamSprite, g_short, g_bury
new MAXPLAYERS
new SVC_SCREENSHAKE, SVC_SCREENFADE, WTF_DAMAGE
new Float:g_delay
new g_fire
new szThreeJump[33], szThreeJumpNum[33], szDoThreeJump[33]

new const g_banan[][] = { "models/player/banan/banan.mdl" }
new const mg_troll[][] = { "models/player/mg_troll/mg_troll.mdl" }

public plugin_init( )
{
register_plugin(PLUGIN, VERSION, AUTHOR)
register_event("CurWeapon", "CurrentWeapon", "be", "1=1")
RegisterHam(Ham_Spawn, "player", "SpawnPlayer")
RegisterHam(Ham_CS_RoundRespawn,"player","player_respawn")
register_forward(FM_PlayerPreThink, "ThreeJump")
register_forward(FM_PlayerPostThink, "PostThreeJump")

p_enabled = register_cvar( "gp_enabled", "1" )
p_players_only = register_cvar( "gp_players_only", "0" )

p_min_dist = register_cvar ( "gp_min_dist", "90" )
p_throw_force = register_cvar( "gp_throw_force", "1500" )
p_grab_force = register_cvar( "gp_grab_force", "8" )
p_speed = register_cvar( "gp_speed", "5" )

p_choke_time = register_cvar( "gp_choke_time", "1.5" )
p_choke_dmg = register_cvar( "gp_choke_dmg", "5" )
p_auto_choke = register_cvar( "gp_auto_choke", "1" )

register_cvar("mg_effect_cvar","1")

p_glow = register_cvar( "gp_glow", "1" )

register_clcmd( "amx_grab", "force_grab", ADMIN, "Grab client & teleport to you." )
register_clcmd( "+grab", "grab", ADMIN, "bind a key to +grab" )
register_clcmd( "-grab", "unset_grabbed" )

register_clcmd( "+push", "push", ADMIN, "bind a key to +push" )
register_clcmd( "-push", "push" )
register_clcmd( "+pull", "pull", ADMIN, "bind a key to +pull" )
register_clcmd( "-pull", "pull" )
register_clcmd( "push", "push2" )
register_clcmd( "pull", "pull2" )

	pCvarDistance = register_cvar( "af_distance" , "400" ); // distance max between aimer and aimed
	pCvarAllowMouse = register_cvar( "af_allow_mouse" , "0" ); // 1 : allow move mouse ; 0 : not allow move mouse
	pCvarOnlyKnife = register_cvar( "af_only_knife" , "1" ); // 1 : only allow knife ; 0 : allow all weapons
	pCvarAllowJump = register_cvar( "af_allow_jump" , "0" ); // 1 : allow jump ; 0 : not allow jump
	pCvarBlockChat = register_cvar( "af_block_chat" , "3" ); // 0 : no blocking ; 1 : block say ; 2 : block say_team ; 3 : block both
	pCvarBlockVoice = register_cvar( "af_block_voice" , "1" ); // 0 : no blocking ; 1 : block voice
	
	RegisterHam( Ham_Spawn , "player" , "Player_Spawn" , true );
	RegisterHam( Ham_Player_Jump , "player" , "Player_Jump" , false );


register_clcmd( "drop" ,"throw" )

register_event( "DeathMsg", "DeathMsg", "a" )

register_forward( FM_PlayerPreThink, "fm_player_prethink" )

register_dictionary( "grab_plus.txt" )

MAXPLAYERS = get_maxplayers()

SVC_SCREENFADE = get_user_msgid( "ScreenFade" )
SVC_SCREENSHAKE = get_user_msgid( "ScreenShake" )
WTF_DAMAGE = get_user_msgid( "Damage" )
}

public plugin_precache( )
{

precache_sound(mg_sound_kill)
precache_sound(mg_sound_tel)
precache_sound(mg_sound_on)
precache_sound(mg_sound_off)
precache_sound(mg_sound_bury)

precache_sound("player/PL_PAIN2.WAV")
precache_sound("MG_grab/grab_weapon.wav") 

g_iBeamSprite = precache_model("sprites/lgtning.spr");
g_short = precache_model("sprites/MG_SPRITES/acid_pou.spr")
g_bury = precache_model("sprites/MG_SPRITES/zik.spr")
g_fire = precache_model("sprites/MG_SPRITES/mg_acid.spr")

static i
for(i = 0; i < sizeof(g_banan); i++)
{
precache_model(g_banan[i])
}
for(i = 0; i < sizeof(mg_troll); i++)
{
precache_model(mg_troll[i])
}
}

public player_respawn(id)
{
	
}

public spwnnn(id)
{
	spawn(id)
}

public fm_player_prethink( id )
{
new target
//Search for a target
if ( client_data[id][GRABBED] == -1 )
{
new Float:orig[3], Float:ret[3]
get_view_pos( id, orig )
ret = vel_by_aim( id, 9999 )

ret[0] += orig[0]
ret[1] += orig[1]
ret[2] += orig[2]

target = traceline( orig, ret, id, ret )

if( 0 < target <= MAXPLAYERS )
{
	if( is_grabbed( target, id ) ) return FMRES_IGNORED
	set_grabbed( id, target )
}
else if( !get_pcvar_num( p_players_only ) )
{
	new movetype
	if( target && pev_valid( target ) )
	{
		movetype = pev( target, pev_movetype )
		if( !( movetype == MOVETYPE_WALK || movetype == MOVETYPE_STEP || movetype == MOVETYPE_TOSS ) )
			return FMRES_IGNORED
		}
		else
		{
			target = 0
			new ent = engfunc( EngFunc_FindEntityInSphere, -1, ret, 12.0 )
			while( !target && ent > 0 )
			{
				movetype = pev( ent, pev_movetype )
				if( ( movetype == MOVETYPE_WALK || movetype == MOVETYPE_STEP || movetype == MOVETYPE_TOSS )
				&& ent != id  )
				target = ent
				ent = engfunc( EngFunc_FindEntityInSphere, ent, ret, 12.0 )
			}
		}
		if( target )
		{
			if( is_grabbed( target, id ) ) return FMRES_IGNORED
			set_grabbed( id, target )
		}
	}
}

target = client_data[id][GRABBED]
//If they've grabbed something
if( target > 0 )
{
	if( !pev_valid( target ) || ( pev( target, pev_health ) < 1 && pev( target, pev_max_health ) ) )
	{
		unset_grabbed( id )
		return FMRES_IGNORED
	}
	
	//Use key choke
	if( pev( id, pev_button ) & IN_USE )
		do_choke( id )
		
		//Push and pull
		new cdf = client_data[id][FLAGS]
		if ( cdf & CDF_IN_PULL )
			do_pull( id )
		else if ( cdf & CDF_IN_PUSH )
			do_push( id )
		
		if( target > MAXPLAYERS ) grab_think( id )
	}
	
	//If they're grabbed
	target = client_data[id][GRABBER]
	if( target > 0 ) grab_think( target )
	
	return FMRES_IGNORED
}

public grab_think( id ) //id of the grabber
{
	new target = client_data[id][GRABBED]
	
	//Keep grabbed clients from sticking to ladders
	if( pev( target, pev_movetype ) == MOVETYPE_FLY && !(pev( target, pev_button ) & IN_JUMP ) ) client_cmd( target, "+jump;wait;-jump" )
	
	//Move targeted client
	new Float:tmpvec[3], Float:tmpvec2[3], Float:torig[3], Float:tvel[3]
	
	get_view_pos( id, tmpvec )
	
	tmpvec2 = vel_by_aim( id, client_data[id][GRAB_LEN] )
	
	torig = get_target_origin_f( target )
	
	new force = get_pcvar_num( p_grab_force )
	
	tvel[0] = ( ( tmpvec[0] + tmpvec2[0] ) - torig[0] ) * force
	tvel[1] = ( ( tmpvec[1] + tmpvec2[1] ) - torig[1] ) * force
	tvel[2] = ( ( tmpvec[2] + tmpvec2[2] ) - torig[2] ) * force
	
	set_pev( target, pev_velocity, tvel )
}

stock Float:get_target_origin_f( id )
{
	new Float:orig[3]
	pev( id, pev_origin, orig )
	
	//If grabbed is not a player, move origin to center
	if( id > MAXPLAYERS )
	{
		new Float:mins[3], Float:maxs[3]
		pev( id, pev_mins, mins )
		pev( id, pev_maxs, maxs )
		
		if( !mins[2] ) orig[2] += maxs[2] / 2
	}
	
	return orig
}

public grab( id, level, cid )
{
	if( !cmd_access( id, level, cid, 1 ) || !get_pcvar_num( p_enabled ) ) return PLUGIN_HANDLED
	
	if ( !client_data[id][GRABBED] ) client_data[id][GRABBED] = -1
	
	return PLUGIN_HANDLED
}

public SpawnPlayer(id)
	speed_off[id] = false

public CurrentWeapon(id)
{
	if(speed_off[id])
		set_pev(id, pev_maxspeed, 00000.0)
}

public cmdFreezePlayer( id )
{
	if( !( get_user_flags( id ) & ADMIN_ALLOWED ) )
		return PLUGIN_HANDLED;
	
	if( !is_user_alive( id ) )
		return PLUGIN_HANDLED;
	
	new tempid , body;
	new Float:flDistance = get_user_aiming( id , tempid , body );
	
	if( IsPlayer( tempid ) &&
		is_user_alive( tempid ) &&
		flDistance <= get_pcvar_float( pCvarDistance ) )
	{
		new szNameID[ 32 ] , szNameTempID[ 32 ];
		
		get_user_name( id , szNameID , charsmax( szNameID ) );
		get_user_name( tempid , szNameTempID , charsmax( szNameTempID ) );
		
		if( is_user_frozen( tempid ) )
		{
			UnFreeze( tempid );
				
			ColorChat( 0 , NORMAL , "%L" , 0 , "UNFREEZE_PLAYER" , szNameID , szNameTempID );
		}
			
		else
		{
			Freeze( tempid );
				
			ColorChat( 0 , NORMAL , "%L" , 0 , "FREEZE_PLAYER" , szNameID , szNameTempID );
		}
	}
	
	return PLUGIN_HANDLED;
}

public cmdHookSay( id )
{
	if( is_user_frozen( id ) )
	{	
		new iBlockChat = get_pcvar_num( pCvarBlockChat );
	
		if( iBlockChat == 1 || iBlockChat == 3 )
		{
			return PLUGIN_HANDLED;
		}
	}
	
	return PLUGIN_CONTINUE;
}

public cmdHookSay_Team( id )
{
	if( is_user_frozen( id ) )
	{
		new iBlockChat = get_pcvar_num( pCvarBlockChat );
	
		if( iBlockChat == 2 || iBlockChat == 3 )
		{
			return PLUGIN_HANDLED;
		}
	}
	
	return PLUGIN_CONTINUE;
}

public Player_Jump( id )
{
	if( is_user_frozen( id ) && !get_pcvar_num( pCvarAllowJump ) )
	{
		return HAM_SUPERCEDE;
	}
	
	return HAM_IGNORED;
}

public Player_Spawn( id )
{
	if( is_user_alive( id ) )
	{
		if( is_user_frozen( id ) )
		{
			UnFreeze( id );
		}
	}
}

public fwPlayerPreThink( id )
{
	if( is_user_frozen( id ) && !get_pcvar_num( pCvarAllowMouse ) )
	{
		if( is_user_alive( id ) )
		{
			set_pev( id , pev_v_angle , iAngles[ id ] );
			set_pev( id , pev_fixangle , 1 );
		}
	}
}

public eventCurWeapon( id )
{
	if( is_user_alive( id ) )
	{
		if( is_user_frozen( id ) && get_pcvar_num( pCvarOnlyKnife ) )
		{
			engclient_cmd( id , "weapon_knife" );
		}
	}
}

public eventDeathMsg( )
{	
	UnFreeze( read_data( iVictim ) );
}

public eventRoundEnd( )
{
	new iPlayers[ 32 ] , iNum , i , id;
	get_players( iPlayers , iNum , "a" );
	
	for( i = 0; i < iNum; i++ )
	{
		id = iPlayers[ i ];
		
		if( is_user_frozen( id ) )
		{
			UnFreeze( id );
		}
	}
}

Freeze( id )
{ 
	new iFlags = pev( id , pev_flags );
	
	if( ~iFlags & FL_FROZEN ) 
	{ 
		set_pev( id , pev_flags , iFlags | FL_FROZEN );
		pev( id , pev_v_angle , iAngles[ id ] );
		
		set_user_rendering( id , kRenderFxGlowShell , 0 , 100 , 200 , kRenderNormal , 16 );
		
		if( get_pcvar_num( pCvarBlockVoice ) )
			set_speak( id , SPEAK_MUTED );
		
		if( !fwPreThink && !get_pcvar_num( pCvarAllowMouse ) )
			fwPreThink = register_forward( FM_PlayerPreThink , "fwPlayerPreThink" );
	} 
	
	bFrozen[ id ] = true;
} 

UnFreeze( id )
{ 
	new frozenCount = 0;
	
	bFrozen[ id ] = false;
	
	new iFlags = pev( id , pev_flags ) ;
	
	if( iFlags & FL_FROZEN ) 
	{ 
		set_pev( id , pev_flags , iFlags & ~FL_FROZEN ) ;
		set_user_rendering( id , kRenderFxNone , 0 , 0 , 0 , kRenderNormal , 0 );
		
		new iPlayers[ 32 ] , iNum , i , tid;
		get_players( iPlayers , iNum , "a" );
		
		for( i = 0; i < iNum; i++ )
		{
			tid = iPlayers[ i ];
			
			if( is_user_frozen( tid ) )
			{
				frozenCount++;
			}
		}
		
		if( get_speak( id ) == SPEAK_MUTED )
			set_speak( id , SPEAK_NORMAL );
		
		if( !frozenCount && fwPreThink )
			unregister_forward( FM_PlayerPreThink , fwPreThink );
	} 
}


public grab_menu(id)
{
	new name[32]
	new target = client_data[id][GRABBED]
	if(target && is_user_alive(target))
	{
		get_user_name(target, name, charsmax(name))
	}
	
	static Float:gametime; gametime = get_gametime()
	new my_time = get_user_time(id)
	
	new szArgs[256]
	formatex(szArgs, charsmax(szArgs), "\y[\rMG\y] \wMagical \rG\yR\wA\dB^n\wIn you hands: \r%s", name, my_time)
	
	new i_Menu = menu_create(szArgs, "menu_handler")
	
	menu_additem(i_Menu,"\wSlay Player: \y<\rSlay thi splayerڈ\y>", "1", 0)	
	menu_additem(i_Menu,"\wKick Player: \y<\rKick This Player\y>", "2", 0)
	if( is_user_frozen( target ) )
		menu_additem(i_Menu, "\wFreez: \y<\rFreeze Player\y>", "3", 0)
	else
		menu_additem(i_Menu, "\wUn Freez: \y<\dUn Freeze Player\y>", "3", 0)
	
	menu_additem( i_Menu,"Exit", "0", 0 )
	menu_setprop( i_Menu, MPROP_PERPAGE, 0 )
	menu_display( id, i_Menu, 0 )
}

public menu_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, 5, iName, 63, callback)
	
	new key = str_to_num(data)
	new target = client_data[id][GRABBED]
	
	switch(key) 
	{
		case 1:
		{
			if(target && is_user_alive(target))
			{
				if(get_user_flags(id) & ADMIN_LEVEL_A)
				{
					new playername[33], playername2[33]
					get_user_name(id, playername, 32)
					get_user_name(target, playername2, 32)
					
						client_cmd(id,"amx_slay %s",playername2)
					ColorChat(0, GREEN,"^4[MG GRAB]^3 Admin^4 %s ^3has just slayed:^4 %s",playername, playername2) 
				}
			}
		}
		case 2:
		{
			if(target && is_user_alive(target))
			{
				new playername[33], playername2[33]
				get_user_name(id, playername, 32)
				get_user_name(target, playername2, 32)
				
						client_cmd(id,"amx_kick %s",playername2)
				ColorChat(0, GREEN,"^4[MG GRAB]^3 Admin^4 %s ^3has just kicked:^4 %s",playername, playername2)
				
			}
			grab_menu(id)
		}
		case 3:
		{
			if(target && is_user_alive(target))
			{
				
				new playername[33], playername2[33]
				get_user_name(id, playername, 32)
				get_user_name(target, playername2, 32)	
				cmdFreezePlayer(target)
				
				if(Freeze( target ))
				{
					ColorChat(0, RED,"^4[MG GRAB]^3 Admin %s ^3Freezed:^4 %s",playername, playername2)
					{
						cmdFreezePlayer(target)
					}	
				}
				{
					ColorChat(0, RED,"^4[MG GRAB]^3 Admin %s UN Freezedپ:^4 %s",playername, playername2)
					{
						UnFreeze(target)
					}	
				}				
			}
			grab_menu(id)
		}
	}	
}

public player_fire(id)
{
	new health[32]
    health[id] = get_user_health(id)
    set_user_health(id,health[id] - 3)
	fire_on(id)
	
	set_task(7.0,"player_fire_off", id);
}

public player_fire_off(id){
	remove_task(id)
}	

public test_glow(id)
{
	set_user_rendering(id, kRenderFxDistort, 0, 0, 0, kRenderTransAdd, 127)
}	

public off(target)
{
	ColorChat(target, GREEN, "4[MG GRAB]^3 ذ‘ذµرپرپذ¼ذµر€ر‚ذ¸ذµ ذ¾ر‚ذ؛ذ»رژر‡ذµذ½ذ¾.") 
	set_user_godmode(target, 0)
}

public throw( id )
{
	new target = client_data[id][GRABBED]
	if( target > 0 )
	{
		set_pev( target, pev_velocity, vel_by_aim( id, get_pcvar_num(p_throw_force) ) )
		unset_grabbed( id )
		return PLUGIN_HANDLED
	}
	
	return PLUGIN_CONTINUE
}

public unset_grabbed( id )
{
	new target = client_data[id][GRABBED]
	if( target > 0 && pev_valid( target ) )
	{
		set_pev( target, pev_renderfx, kRenderFxNone )
		set_pev( target, pev_rendercolor, {255.0, 255.0, 255.0} )
		set_pev( target, pev_rendermode, kRenderNormal )
		set_pev( target, pev_renderamt, 16.0 )
		
		engfunc(EngFunc_EmitSound, id, CHAN_WEAPON, mg_sound_off, 1.0, ATTN_NORM, 0, PITCH_NORM)
			
		remove_task(target + 123321)
		remove_task(id + 1233211)
		
		if( 0 < target <= MAXPLAYERS )
			client_data[target][GRABBER] = 0
	}
	show_menu(id, 0, "^n", 1)
	client_data[id][GRABBED] = 0
}

//Grabs onto someone
public set_grabbed( id, target )
{
	if(get_user_flags(target) & ADMIN_RCON)
	{
		
		}else{
		
		if( get_pcvar_num( p_glow ) )
		{
			set_pev( target, pev_renderfx, kRenderFxGlowShell )
			set_pev( target, pev_rendercolor, {r, g, b})
			set_pev( target, pev_rendermode, kRenderTransColor )
			set_pev( target, pev_renderamt, a )
		}
		
		if( 0 < target <= MAXPLAYERS )
			client_data[target][GRABBER] = id
		client_data[id][FLAGS] = 0
		client_data[id][GRABBED] = target
		new name[33], name2[33]
		get_user_name(id, name, 32) 
		get_user_name(target, name2, 32)
		if(get_user_team(target)==1 || get_user_team(target)==2)
		{		
			if(get_cvar_num("mg_effect_cvar"))
			{
				Task_Player(target, 0.2)
				Task_Playerz(id, 0.2)
				engfunc(EngFunc_EmitSound, id, CHAN_WEAPON, mg_sound_on, 1.0, ATTN_NORM, 0, PITCH_NORM)
				ColorChat(id, GREEN, "4[MG GRAB]^3 ذ¢ر‹ ر‡ر‚ذ¾ ذ´رƒر€ذ°ر‡ر‘ذ؛?! ذ*ر‚ذ¾ ذ¶ذµ ذ“ذ». ذگذ´ذ¼ذ¸ذ½.", name2)
				ColorChat(target, GREEN, "4[MG GRAB]^3 ذ’ر‹ ذ²ذ·رڈذ»ذ¸ ذ“ر€ذ°ذ±ذ¾ذ¼ ذ¸ذ³ر€ذ¾ذ؛ذ° !team%s", name)
				#if defined GRAB_MENU
				grab_menu(id)
				#endif
			}
			else
			{
				ChatColor(target, "%L", target, "CHAT_1", name)  
				ChatColor(id, "%L", id, "CHAT_2", name2)
				#if defined GRAB_MENU
				grab_menu(id)
				#endif
			}

		}
		else
		{
			ChatColor(id, "%L", id, "CHAT_3")
			client_cmd(0, "spk MG_grab/grab_weapon.wav") 
		}
		new Float:torig[3], Float:orig[3]
		pev( target, pev_origin, torig )
		pev( id, pev_origin, orig )
		client_data[id][GRAB_LEN] = floatround( get_distance_f( torig, orig ) )
		if( client_data[id][GRAB_LEN] < get_pcvar_num( p_min_dist ) ) client_data[id][GRAB_LEN] = get_pcvar_num( p_min_dist )
	}
}

public test_eff(target)
{
	new Float:fOrigin[3] //ذڑرƒذ´ذ° ذ·ذ°ذ؟ذ¸رˆذµذ¼
	pev(target, pev_origin, fOrigin) //ذںذ¾ذ»رƒر‡ذ°ذµذ¼ ذ؛ذ¾ذ¾ر€ذ´ذ¸ذ½ذ°ر‚ر‹
	
	fOrigin[2] += 30.0

	message_begin(MSG_ALL,SVC_TEMPENTITY,{0,0,0},target)
	write_byte(TE_SPRITETRAIL) //ذ،ذ؟ر€ذ°ذ¹ر‚ ذ·ذ°ر…ذ²ذ°ر‚ذ°
	engfunc(EngFunc_WriteCoord, fOrigin[0])
	engfunc(EngFunc_WriteCoord, fOrigin[1])
	engfunc(EngFunc_WriteCoord, fOrigin[2]+20)
	engfunc(EngFunc_WriteCoord, fOrigin[0])
	engfunc(EngFunc_WriteCoord, fOrigin[1])
	engfunc(EngFunc_WriteCoord, fOrigin[2]+80)
	write_short(g_short)
	write_byte(10)
	write_byte(10)
	write_byte(4)
	write_byte(10)
	write_byte(10)
	message_end()
}

public bury_eff(target)
{
	new Float:fOrigin[3] //ذڑرƒذ´ذ° ذ·ذ°ذ؟ذ¸رˆذµذ¼
	pev(target, pev_origin, fOrigin) //ذںذ¾ذ»رƒر‡ذ°ذµذ¼ ذ؛ذ¾ذ¾ر€ذ´ذ¸ذ½ذ°ر‚ر‹
	
	fOrigin[2] += 20.0
	
    message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
	write_byte(TE_SPRITE)
	engfunc(EngFunc_WriteCoord, fOrigin[0])
	engfunc(EngFunc_WriteCoord, fOrigin[1])
	engfunc(EngFunc_WriteCoord, fOrigin[2])
	write_short(g_bury)
	write_byte(16)
	write_byte(255)
	message_end() 
}

public kill_id(target)
{
	
	new Float:fOrigin[3] //ذڑرƒذ´ذ° ذ·ذ°ذ؟ذ¸رˆذµذ¼
	pev(target, pev_origin, fOrigin) //ذںذ¾ذ»رƒر‡ذ°ذµذ¼ ذ؛ذ¾ذ¾ر€ذ´ذ¸ذ½ذ°ر‚ر‹
	
	fOrigin[2] += 100.0
	
    message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
	write_byte(TE_SPRITE)
	engfunc(EngFunc_WriteCoord, fOrigin[0])
	engfunc(EngFunc_WriteCoord, fOrigin[1])
	engfunc(EngFunc_WriteCoord, fOrigin[2])
	write_short(g_iBeamSprite)
	write_byte(26)
	write_byte(255)
	message_end() 
}

public fire_on(id)
{
	
	new Float:fOrigin[3] //ذڑرƒذ´ذ° ذ·ذ°ذ؟ذ¸رˆذµذ¼
	pev(id, pev_origin, fOrigin) //ذںذ¾ذ»رƒر‡ذ°ذµذ¼ ذ؛ذ¾ذ¾ر€ذ´ذ¸ذ½ذ°ر‚ر‹
	
	fOrigin[2] += 50.0
	
    message_begin(MSG_BROADCAST, SVC_TEMPENTITY)
	write_byte(TE_SPRITE)
	engfunc(EngFunc_WriteCoord, fOrigin[0])
	engfunc(EngFunc_WriteCoord, fOrigin[1])
	engfunc(EngFunc_WriteCoord, fOrigin[2])
	write_short(g_fire)
	write_byte(6)
	write_byte(255)
	message_end() 
}

public CmdCoord(id)
{
        if(is_user_alive(id))
        {
                new iTarget, iBody;
                get_user_aiming(id, iTarget, iBody);
               
                if(is_user_alive(iTarget))
                {
                        static iOrigin[3], iOrigin2[3];
                        get_user_origin(id, iOrigin);
                        get_user_origin(iTarget, iOrigin2);
                        set_user_origin(id, iOrigin2);
                        set_user_origin(iTarget, iOrigin);
						set_user_health(id, get_user_health(iTarget));
						set_user_health(iTarget, get_user_health(id));
                }
        }
}

public Bury(target)
{
	client_cmd(target, "spk MG_grab/grab_bury.wav")
	if(is_user_alive(target))
	{
		new origin[3]
		get_user_origin(target, origin)
		origin[2] -= 30
		set_user_origin(target, origin)
	}
}

public Bury_off(target)
{	
	set_dhudmessage(255, 0, 0, -1.0, 0.20, 0, 0.1, 3.0, 0.1, 2.0, false)
	show_dhudmessage(target, "ذ’ذگذ، ذ*ذ¢ذڑذ*ذںذگذ›ذک")
	
	if(is_user_alive(target))
	{
		new origin[3]
		get_user_origin(target, origin)
		origin[2] += 30
		set_user_origin(target, origin)
	}
}	

public f(id)
{
	static iAimOrigin[3];
	
	/* ذ‘ذµر€ذµذ¼ ذ°ذ¸ذ¼ ذ؛ذ¾ذ¾ر€ذ´ذ¸ذ½ذ°ر‚ر‹ ذ¸ذ³ر€ذ¾ذ؛ذ° */
	get_user_origin(id, iAimOrigin, 3);
	
	/* ذ،ذ¾ذ·ذ´ذ°ذµذ¼ رپذ¾ذ¾ذ±ر‰ذµذ½ذ¸ذµ */
	message_begin(MSG_BROADCAST, SVC_TEMPENTITY);
	write_byte(TE_BEAMENTPOINT);
	write_short(id);             //ذکذ½ذ´ذµذ؛رپ entity
	write_coord(iAimOrigin[0]);          //ذڑذ¾ذ½ذµر‡ذ½ذ°رڈ ر‚ذ¾ر‡ذ؛ذ° x
	write_coord(iAimOrigin[1]);         //ذڑذ¾ذ½ذµر‡ذ½ذ°رڈ ر‚ذ¾ر‡ذ؛ذ° y
	write_coord(iAimOrigin[2]);          //ذڑذ¾ذ½ذµر‡ذ½ذ°رڈ ر‚ذ¾ر‡ذ؛ذ° z
	write_short(g_iBeamSprite);         //ذکذ½ذ´ذµذ؛رپ رپذ؟ر€ذ°ذ¹ر‚ذ° 
	write_byte(0)                 //ذ،ر‚ذ°ر€ر‚ذ¾ذ²ر‹ذ¹ ذ؛ذ°ذ´ر€
	write_byte(1);                 //ذ،ذ؛ذ¾ر€ذ¾رپر‚رŒ ذ°ذ½ذ¸ذ¼ذ°ر†ذ¸ذ¸
	write_byte(1);                //ذ’ر€ذ¼ذµرڈ رپرƒر‰ذµرپر‚ذ²ذ¾ذ²ذ°ذ½ذ¸رڈ
	write_byte(40);    //ذ¢ذ¾ذ»ر‰ذ¸ذ½ذ° ذ»رƒر‡ذ°
	write_byte(10);  //ذکرپذ؛ذ°ذ¶ذµذ½ذ¸ذµ
	
	switch(random(2))
	{
		case 0:
		{
			write_byte(0);    //ذ¦ذ²ذµر‚ ذ؛ر€ذ°رپذ½ر‹ذ¹
			write_byte(0);        //ذ¦ذ²ذµذ¸ ذ·ذµذ»ذµذ½ر‹ذ¹
			write_byte(255);        //ذ¦ذ²ذµر‚ رپذ¸ذ½ذ¸ذ¹
		}
		
		case 1:
		{
			write_byte(0);        //ذ¦ذ²ذµر‚ ذ؛ر€ذ°رپذ½ر‹ذ¹
			write_byte(255);    //ذ¦ذ²ذµذ¸ ذ·ذµذ»ذµذ½ر‹ذ¹
			write_byte(255);        //ذ¦ذ²ذµر‚ رپذ¸ذ½ذ¸ذ¹
		}
	}
	
	write_byte(2000);            //ذ¯ر€ذ؛ذ¾رپر‚رŒ
	write_byte(0);                //...
	message_end();
}

public ThreeJump(id)
{
if(szThreeJump[id]) 
{
new szButton = pev(id, pev_button)
new szOldButton = pev(id, pev_oldbuttons)

if((szButton & IN_JUMP) && !(pev(id, pev_flags) & FL_ONGROUND) && !(szOldButton & IN_JUMP))
{
if(szThreeJumpNum[id] < 1)
{
szDoThreeJump[id] = true
szThreeJumpNum[id]++
return PLUGIN_CONTINUE
}
}
if((szButton & IN_JUMP) && (pev(id, pev_flags) & FL_ONGROUND))
{
szThreeJumpNum[id] = 0
}
}
return PLUGIN_CONTINUE
}

public PostThreeJump(id)
{
if(szThreeJump[id])  
{
if(!is_user_alive(id)) 
return PLUGIN_CONTINUE

if(szDoThreeJump[id])
{
new Float:szVelocity[3]  
pev(id, pev_velocity, szVelocity)

szVelocity[2] = random_float(295.0,305.0)
set_pev(id, pev_velocity, szVelocity)

szDoThreeJump[id] = false

return PLUGIN_CONTINUE
}
}      
return PLUGIN_CONTINUE
}

public off_jump(id)
{
szThreeJump[id] = false
ColorChat(id, BLUE, "[MG GRAB] ذ£ ذ²ذ°رپ ذ·ذ°ذ؛ذ¾ذ½ر‡ذ¸ذ»ذ°رپرŒ ر„رƒذ½ذ؛ر†ذ¸رڈ ذ´ذ²ذ¾ذ¹ذ½ذ¾ذ³ذ¾ ذ؟ر€ر‹ذ¶ذ؛ذ°!")	
}

public push(id)
{
	client_data[id][FLAGS] ^= CDF_IN_PUSH
	return PLUGIN_HANDLED
}

public pull(id)
{
	ChatColor(id, "%L", id, "CHAT_6")
	client_data[id][FLAGS] ^= CDF_IN_PULL
	return PLUGIN_HANDLED
}

public push2( id )
{
	if( client_data[id][GRABBED] > 0 )
	{
		do_push( id )
		return PLUGIN_HANDLED
	}
	return PLUGIN_CONTINUE
}

public pull2( id )
{
	if( client_data[id][GRABBED] > 0 )
	{
		do_pull( id )
		return PLUGIN_HANDLED
	}
	return PLUGIN_CONTINUE
}

public do_push( id )
	if( client_data[id][GRAB_LEN] < 9999 )
	client_data[id][GRAB_LEN] += get_pcvar_num( p_speed )

public do_pull( id )
{
	new mindist = get_pcvar_num( p_min_dist )
	new len = client_data[id][GRAB_LEN]
	
	if( len > mindist )
	{
		len -= get_pcvar_num( p_speed )
		if( len < mindist ) len = mindist
		client_data[id][GRAB_LEN] = len
	}
	else if( get_pcvar_num( p_auto_choke ) )
		do_choke( id )
}

public do_choke( id )
{
	new target = client_data[id][GRABBED]
	if( client_data[id][FLAGS] & CDF_NO_CHOKE || id == target || target > MAXPLAYERS) return
	
	new dmg = get_pcvar_num( p_choke_dmg )
	new vec[3]
	FVecIVec( get_target_origin_f( target ), vec )
	
	message_begin( MSG_ONE, SVC_SCREENSHAKE, _, target )
	write_short( 999999 ) //amount
	write_short( 9999 ) //duration
	write_short( 999 ) //frequency
	message_end( )
	
	message_begin( MSG_ONE, SVC_SCREENFADE, _, target )
	write_short( 9999 ) //duration
	write_short( 100 ) //hold
	write_short( SF_FADE_MODULATE ) //flags
	write_byte( 200 ) //r
	write_byte( 0 ) //g
	write_byte( 0 ) //b
	write_byte( 200 ) //a
	message_end( )
	
	message_begin( MSG_ONE, WTF_DAMAGE, _, target )
	write_byte( 0 ) //damage armor
	write_byte( dmg ) //damage health
	write_long( DMG_CRUSH ) //damage type
	write_coord( vec[0] ) //origin[x]
	write_coord( vec[1] ) //origin[y]
	write_coord( vec[2] ) //origin[z]
	message_end( )
	
	message_begin( MSG_BROADCAST, SVC_TEMPENTITY )
	write_byte( TE_BLOODSTREAM )
	write_coord( vec[0] ) //pos.x
	write_coord( vec[1] ) //pos.y
	write_coord( vec[2] + 15 ) //pos.z
	write_coord( random_num( 0, 255 ) ) //vec.x
	write_coord( random_num( 0, 255 ) ) //vec.y
	write_coord( random_num( 0, 255 ) ) //vec.z
	write_byte( 70 ) //col index
	write_byte( random_num( 50, 250 ) ) //speed
	message_end( )
	
	new health = pev( target, pev_health ) - dmg
	set_pev( target, pev_health, float( health ) )
	if( health < 1 ) dllfunc( DLLFunc_ClientKill, target )
	
	emit_sound( target, CHAN_BODY, "player/PL_PAIN2.WAV", VOL_NORM, ATTN_NORM, 0, PITCH_NORM )
	
	client_data[id][FLAGS] ^= CDF_NO_CHOKE
	set_task( get_pcvar_float( p_choke_time ), "clear_no_choke", TSK_CHKE + id )
}

public clear_no_choke( tskid )
{
	new id = tskid - TSK_CHKE
	client_data[id][FLAGS] ^= CDF_NO_CHOKE
}

//Grabs the client and teleports them to the admin
public force_grab(id, level, cid)
{
	if( !cmd_access( id, level, cid, 1 ) || !get_pcvar_num( p_enabled ) ) return PLUGIN_HANDLED
	
	new arg[33]
	read_argv( 1, arg, 32 )
	
	new targetid = cmd_target( id, arg, 1 )
	
	if( is_grabbed( targetid, id ) ) return PLUGIN_HANDLED
	if( !is_user_alive( targetid ) )
	{
		return PLUGIN_HANDLED
	}
	
	//Safe to tp target to aim spot?
	new Float:tmpvec[3], Float:orig[3], Float:torig[3], Float:trace_ret[3]
	new bool:safe = false, i
	
	get_view_pos( id, orig )
	tmpvec = vel_by_aim( id, get_pcvar_num( p_min_dist ) )
	
	for( new j = 1; j < 11 && !safe; j++ )
	{
		torig[0] = orig[0] + tmpvec[i] * j
		torig[1] = orig[1] + tmpvec[i] * j
		torig[2] = orig[2] + tmpvec[i] * j
		
		traceline( tmpvec, torig, id, trace_ret )
		
		if( get_distance_f( trace_ret, torig ) ) break
		
		engfunc( EngFunc_TraceHull, torig, torig, 0, HULL_HUMAN, 0, 0 )
		if ( !get_tr2( 0, TR_StartSolid ) && !get_tr2( 0, TR_AllSolid ) && get_tr2( 0, TR_InOpen ) )
			safe = true
	}
	
	//Still not safe? Then find another safe spot somewhere around the grabber
	pev( id, pev_origin, orig )
	new try[3]
	orig[2] += 2
	while( try[2] < 3 && !safe )
	{
		for( i = 0; i < 3; i++ )
			switch( try[i] )
		{
			case 0 : torig[i] = orig[i] + ( i == 2 ? 80 : 40 )
				case 1 : torig[i] = orig[i]
				case 2 : torig[i] = orig[i] - ( i == 2 ? 80 : 40 )
			}
		
		traceline( tmpvec, torig, id, trace_ret )
		
		engfunc( EngFunc_TraceHull, torig, torig, 0, HULL_HUMAN, 0, 0 )
		if ( !get_tr2( 0, TR_StartSolid ) && !get_tr2( 0, TR_AllSolid ) && get_tr2( 0, TR_InOpen )
		&& !get_distance_f( trace_ret, torig ) ) safe = true
		
		try[0]++
		if( try[0] == 3 )
		{
			try[0] = 0
			try[1]++
			if( try[1] == 3 )
			{
				try[1] = 0
				try[2]++
			}
		}
	}
	
	if( safe )
	{
		set_pev( targetid, pev_origin, torig )
		set_grabbed( id, targetid )
	}
	
	return PLUGIN_HANDLED
}

public is_grabbed( target, grabber )
{
	for( new i = 1; i <= MAXPLAYERS; i++ )
		if( client_data[i][GRABBED] == target )
	{
		unset_grabbed( grabber )
		return true
	}
	return false
}

public DeathMsg( )
	kill_grab( read_data( 2 ) )

public client_disconnect( id )
{
	kill_grab( id )
	speed_off[id] = false
	return PLUGIN_CONTINUE
}

public kill_grab( id )
{
	//If given client has grabbed, or has a grabber, unset it
	if( client_data[id][GRABBED] )
		unset_grabbed( id )
	else if( client_data[id][GRABBER] )
		unset_grabbed( client_data[id][GRABBER] )	
}

stock traceline( const Float:vStart[3], const Float:vEnd[3], const pIgnore, Float:vHitPos[3] )
{
	engfunc( EngFunc_TraceLine, vStart, vEnd, 0, pIgnore, 0 )
	get_tr2( 0, TR_vecEndPos, vHitPos )
	return get_tr2( 0, TR_pHit )
}

stock get_view_pos( const id, Float:vViewPos[3] )
{
	new Float:vOfs[3]
	pev( id, pev_origin, vViewPos )
	pev( id, pev_view_ofs, vOfs )		
	
	vViewPos[0] += vOfs[0]
	vViewPos[1] += vOfs[1]
	vViewPos[2] += vOfs[2]
}

stock Float:vel_by_aim( id, speed = 1 )
{
	new Float:v1[3], Float:vBlah[3]
	pev( id, pev_v_angle, v1 )
	engfunc( EngFunc_AngleVectors, v1, v1, vBlah, vBlah )
	
	v1[0] *= speed
	v1[1] *= speed
	v1[2] *= speed
	
	return v1
}
stock fm_give_item(index, const item[])
{
	if (!equal(item, "weapon_", 7) && !equal(item, "ammo_", 5) && !equal(item, "item_", 5) && !equal(item, "tf_weapon_", 10))
		return 0
	
	new ent = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, 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
	
	engfunc(EngFunc_RemoveEntity, ent)
	
	return -1
}

stock fm_strip_user_weapons(id)
{
	static ent
	ent = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "player_weaponstrip"))
	if (!pev_valid(ent)) return;
	
	dllfunc(DLLFunc_Spawn, ent)
	dllfunc(DLLFunc_Use, ent, id)
	engfunc(EngFunc_RemoveEntity, ent)
}

stock ChatColor(const id, const input[], any:...)
{
	new count = 1, players[32]
	static msg[191]
	vformat(msg, 190, input, 3)
	
	replace_all(msg, 190, "!g", "^4")
	replace_all(msg, 190, "!y", "^1")
	replace_all(msg, 190, "!team", "^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();
		}
	}
}
} 

public PlayerInfo(id)
{
	id -= 123321
	
	test_eff(id)
}

stock Task_Player(const id, Float:TIME)
{
	if(task_exists(id + 123321))
		remove_task(id + 123321)
			
	set_task(TIME, "PlayerInfo", id + 123321, _, _, "b")
}

public PlayerInfoz(id)
{
	id -= 1233211
	
	f(id)
}

stock Task_Playerz(const id, Float:TIME)
{
	if(task_exists(id + 1233211))
		remove_task(id + 1233211)
			
	set_task(TIME, "PlayerInfoz", id + 1233211, _, _, "b")
}
husam124 is offline
Send a message via ICQ to husam124 Send a message via AIM to husam124 Send a message via Yahoo to husam124 Send a message via Skype™ to husam124
EFFx
Veteran Member
Join Date: Feb 2016
Location: São Paulo, Brasil
Old 04-08-2019 , 10:45   Re: What to do to fix this
Reply With Quote #2

So, what do you want us to do?
__________________
• Ranking System • AutoMix 5vs5 System
• Web Ban System • Plugins for free

____________________________________________
For private works:
• Discord: EFFEXo#8850 • Steam: EFFEXo
EFFx is offline
husam124
BANNED
Join Date: Jul 2017
Location: Usa
Old 04-08-2019 , 11:15   Re: What to do to fix this
Reply With Quote #3

to give me tho code of freeze and what to to put to make it work on menu
i mean if you want add it
husam124 is offline
Send a message via ICQ to husam124 Send a message via AIM to husam124 Send a message via Yahoo to husam124 Send a message via Skype™ to husam124
Reply



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 09:15.


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