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

Need help [zp jetpack]


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
Ali0mer
Senior Member
Join Date: Jan 2016
Location: Iraq
Old 10-08-2017 , 08:29   Need help [zp jetpack]
Reply With Quote #1

Hi guys.


I need help i download a plugin (jetpack+bazooka) but it has problem
The problem is when i try to Press "G" It dropped right?
In this plugin is not working this command....
I want it to be dropped when i press "G"

Here is code
Code:
#include amxmodx
#include engine
#include fakemeta
#include hamsandwich
#include zombie_plague_advance
#include zp50_colorchat

#define PLUGINNAME		"Extra Item Jetpack+Bazooka"
#define VERSION			"3.2"
#define AUTHOR			"B!gBud "

#define TE_EXPLOSION	3
#define TE_BEAMFOLLOW	22
#define TE_BEAMCYLINDER	21

#define JETPACK_COST 30

new ROCKET_MDL[64] = "models/rpgrocket.mdl"
new ROCKET_SOUND[64] = "ZombieOutStanding/bfuu.wav"
new getrocket[64] = "zombie_plague/gun_pickup.wav"
new jetpack_blow[64] = "ZombieOutStanding/blow.wav"
new jetpack_fly[64] = "ZombieOutStanding/fly.wav"

new bool:fly[33] = false
new bool:rocket[33] = false
new bool:rksound[33] = false
new bool:shot[33] = false

new Float:gltime = 0.0
new Float:last_Rocket[33] = 0.0
new Float:jp_cal[33] = 0.0
new Float:jp_soun[33] = 0.0
new fire, trail, explode, shockwave
new g_flyEnergy[33], hasjet[33]
new g_iPlayerPos[33]
new cvar_jetpack, cvar_jetpackSpeed, cvar_jetpackUpSpeed, cvar_jetpackAcrate ,cvar_RocketDelay, cvar_RocketSpeed, cvar_RocketDmg, cvar_Dmg_range, cvar_fly_max_engery, cvar_fly_engery, cvar_regain_energy, g_item_jetpack, cvar_cal_time, cvar_oneround

new bool:g_bAlive[33]

new const Float:g_flCoords[][] = { {0.50, 0.40}, {0.56, 0.44}, {0.60, 0.50}, {0.56, 0.56},
			{0.50, 0.60}, {0.44, 0.56}, {0.40, 0.50}, {0.44, 0.44} }

#define EFFECT_LENGTH 3 // timpu cat sa tina efectul

public plugin_init() 
{
	register_plugin(PLUGINNAME, VERSION, AUTHOR)
	
	g_item_jetpack = zp_register_extra_item("Jetpack+Bazooka", 32, ZP_TEAM_HUMAN)
	
	register_clcmd("drop","cmdDrop")
	
	cvar_jetpack = register_cvar("zp_jetpack", "2")
	
	cvar_jetpackSpeed=register_cvar("zp_jp_forward_speed","300.0")
	cvar_jetpackUpSpeed=register_cvar("zp_jp_up_speed","35.0")
	cvar_jetpackAcrate=register_cvar("zp_jp_accelerate","100.0")
	
	cvar_RocketDelay=register_cvar("zp_jp_rocket_delay","15.0")
	cvar_RocketSpeed=register_cvar("zp_jp_rocket_speed","1500")
	cvar_RocketDmg=register_cvar("zp_jp_rocket_damage","1500")
	cvar_Dmg_range=register_cvar("zp_jp_damage_radius","650")
	
	cvar_fly_max_engery = register_cvar("zp_jp_max_engery", "100")
	cvar_fly_engery = register_cvar("zp_jp_engery", "10")
	cvar_regain_energy = register_cvar("zp_jp_regain_energy", "3")
	cvar_cal_time = register_cvar("zp_jp_energy_cal", "1.0")
	cvar_oneround = register_cvar("zp_jp_oneround", "0")
	
	register_event("CurWeapon", "check_models", "be")
	register_event("DeathMsg", "player_die", "a")
	register_event("HLTV", "event_round_start", "a", "1=0", "2=0")
	
	RegisterHam( Ham_Spawn, "player", "OnSpawn", 1 )
	RegisterHam( Ham_Killed, "player", "OnKilled", 1 )
	
	register_forward(FM_StartFrame, "fm_startFrame")
	register_forward(FM_EmitSound, "emitsound")
}

public plugin_precache() 
{
	precache_model("models/p_jp.mdl")
	precache_model("models/v_jp.mdl")
	precache_model("models/w_jp.mdl")
	
	precache_model(ROCKET_MDL)
	precache_sound(ROCKET_SOUND)
	precache_sound(getrocket)
	precache_sound(jetpack_fly)
	precache_sound(jetpack_blow)
	
	fire = precache_model( "sprites/xfireball3.spr" )
	trail = precache_model( "sprites/laserbeam.spr" )
	
	explode = precache_model("sprites/zerogxplode.spr") // zeroxplode.spr
	shockwave = precache_model("sprites/shockwave.spr")
}

public client_putinserver(id) 
{
	fly[id] = false
	rocket[id] = false
	hasjet[id] = 0
	g_flyEnergy[id] = 0
}

public client_disconnect(id) 
{
	g_bAlive[ id ] = false

	fly[id] = false
	rocket[id] = false
	hasjet[id] = 0
	g_flyEnergy[id] = 0
}

public OnSpawn( id )
{
	if( is_user_alive( id ) )
		g_bAlive[ id ] = true
}

public OnKilled( id ) 
	g_bAlive[ id ] = false;

public event_round_start()
{
	remove_jetpacks();
	if (get_pcvar_num(cvar_oneround) == 1) 
	{
		for (new id; id <= 32; id++) 
		hasjet[id] = 0, g_flyEnergy[id] = 0, fly[id] = false;
	}
}

public fm_startFrame()
{
	static id;
	gltime = get_gametime()
	for (id = 1; id <= 32; id++)
	{
		jp_forward(id)
	}
}

public jp_forward(Player) 
{	
	if (!hasjet[Player]||!g_bAlive[ Player ] || (zp_get_user_zombie(Player) || zp_get_user_nemesis(Player) || zp_get_user_assassin(Player) || zp_get_user_survivor(Player) || zp_get_user_sniper(Player)))
		return FMRES_IGNORED 	
		
	if(jp_cal[Player] < gltime)
	{
		jp_energy(Player); jp_cal[Player] = gltime + get_pcvar_float(cvar_cal_time)
	}
	
	check_rocket(Player)

	if(pev(Player,pev_button)&IN_ATTACK2)
	{
		attack2(Player)	
	}
	
	if(get_user_weapon(Player) == CSW_KNIFE)
	{
		if(get_pcvar_num(cvar_jetpack) == 1)
		{
			if(!(pev(Player, pev_flags)&FL_ONGROUND) && pev(Player,pev_button)&IN_ATTACK)
			{
				if((g_flyEnergy[Player] > get_pcvar_num(cvar_fly_max_engery)*0.3) && (g_flyEnergy[Player] <= get_pcvar_num(cvar_fly_max_engery)))
				{
					if(jp_soun[Player] < gltime)
					{
						emit_sound( Player, CHAN_ITEM, jetpack_fly, 1.0, ATTN_NORM, 1, PITCH_HIGH )
						jp_soun[Player] = gltime + 1.0
					}
				}			
				else if((g_flyEnergy[Player] > 0) && (g_flyEnergy[Player] < get_pcvar_num(cvar_fly_max_engery)*0.3))
				{
					if(jp_soun[Player] < gltime)
					{
						emit_sound( Player, CHAN_ITEM, jetpack_blow, 1.0, ATTN_NORM, 1, PITCH_HIGH )
						jp_soun[Player] = gltime + 1.0
					}
				}
			}
			human_fly(Player)
			attack(Player)	
		}	
	}
	if((get_pcvar_num(cvar_jetpack) == 2 && !(pev(Player, pev_flags)&FL_ONGROUND)) && (pev(Player,pev_button)&IN_JUMP && pev(Player,pev_button)&IN_DUCK))
	{			
		if((g_flyEnergy[Player] > get_pcvar_num(cvar_fly_max_engery)*0.3) && (g_flyEnergy[Player] <= get_pcvar_num(cvar_fly_max_engery)))
		{
			if(jp_soun[Player] < gltime){
				emit_sound( Player, CHAN_ITEM, jetpack_fly, 1.0, ATTN_NORM, 1, PITCH_HIGH )
				jp_soun[Player] = gltime + 1.0
			}
		}					
		else if((g_flyEnergy[Player] > 0) && (g_flyEnergy[Player] < get_pcvar_num(cvar_fly_max_engery)*0.3))
		{
			if(jp_soun[Player] < gltime)
			{
				emit_sound( Player, CHAN_ITEM, jetpack_blow, 1.0, ATTN_NORM, 1, PITCH_HIGH )
				jp_soun[Player] = gltime + 1.0
			}
		}
		human_fly(Player)
		attack(Player)
	}
	if((g_flyEnergy[Player] >= get_pcvar_num(cvar_fly_max_engery)*0.8) && (g_flyEnergy[Player] <= get_pcvar_num(cvar_fly_max_engery)))
	{
		Icon_Energy({0, 255, 0}, 1, Player); // Green
	}
	else if((g_flyEnergy[Player] >= get_pcvar_num(cvar_fly_max_engery)*0.5) && (g_flyEnergy[Player] < get_pcvar_num(cvar_fly_max_engery)*0.8))
	{
		Icon_Energy({255, 255, 0}, 1, Player); // yellow
	}
	else if((g_flyEnergy[Player] >= get_pcvar_num(cvar_fly_max_engery)*0.3) && (g_flyEnergy[Player] < get_pcvar_num(cvar_fly_max_engery)*0.5))
	{
		Icon_Energy({255, 215, 0}, 2, Player);
	}
	else if((g_flyEnergy[Player] > 0) && (g_flyEnergy[Player] < get_pcvar_num(cvar_fly_max_engery)*0.3))
	{
		Icon_Energy({255, 0, 0}, 1, Player);
	}
	
	return FMRES_IGNORED
}

public jp_energy(Player) 
{
	if (!(pev(Player, pev_flags)&FL_ONGROUND) && pev(Player,pev_button)&IN_ATTACK)	
	{	
		if(get_user_weapon(Player) == CSW_KNIFE)
		{
			if(g_flyEnergy[Player] > get_pcvar_num(cvar_fly_max_engery)*0.09)
				g_flyEnergy[Player] = g_flyEnergy[Player] - get_pcvar_num(cvar_fly_engery);		
		}
	}
	else if ((get_pcvar_num(cvar_jetpack) == 2 && !(pev(Player, pev_flags)&FL_ONGROUND)) && (pev(Player,pev_button)&IN_JUMP && pev(Player,pev_button)&IN_DUCK))
	{
		if(g_flyEnergy[Player] > get_pcvar_num(cvar_fly_max_engery)*0.09)
			g_flyEnergy[Player] = g_flyEnergy[Player] - get_pcvar_num(cvar_fly_engery);	
	}
		
	if (pev(Player, pev_flags) & FL_ONGROUND)	
		g_flyEnergy[Player] = g_flyEnergy[Player] + get_pcvar_num(cvar_regain_energy);
}

public attack(Player) 
{
	if(fly[Player])
	{	
		static Float:JetpackData[3], Origin[3], Float: Speed, Float:JetpackData2[3];

		pev(Player,pev_velocity,JetpackData);

		if(pev(Player,pev_button)&IN_FORWARD && !(pev(Player, pev_flags) & FL_ONGROUND))
		{
			if(!random_num(0,2)){ //asta va reduce si din lag si scade Reliable Channel Overflow
				get_user_origin(Player,Origin);

				message_begin( MSG_BROADCAST, SVC_TEMPENTITY );			
				write_byte( TE_SPRITE );
				write_coord( Origin[ 0 ] );
				write_coord( Origin[ 1 ] );
				write_coord( Origin[ 2 ] );
				write_short( fire );
				write_byte( 8 );
				write_byte( 200 );
				message_end( );
			}

			Speed=floatsqroot(JetpackData[0]*JetpackData[0]+JetpackData[1]*JetpackData[1])
					
			if(Speed!=0.0)
			{
				set_pev(Player,pev_gaitsequence,0)
				set_pev(Player,pev_sequence,111)
			}
			
			if(Speed<get_pcvar_float(cvar_jetpackSpeed))
				Speed+=get_pcvar_float(cvar_jetpackAcrate)

			pev(Player,pev_angles,JetpackData2)
			JetpackData2[2]=0.0
			
			angle_vector(JetpackData2,ANGLEVECTOR_FORWARD,JetpackData2)
			JetpackData2[0]*=Speed
			JetpackData2[1]*=Speed
			
			JetpackData[0]=JetpackData2[0]
			JetpackData[1]=JetpackData2[1]
		}
		
		if(JetpackData[2]<get_pcvar_float(cvar_jetpackSpeed)&&JetpackData[2]>0.0)
			JetpackData[2]+=get_pcvar_float(cvar_jetpackUpSpeed)
		else if(JetpackData[2]<0.0)
			JetpackData[2]+=(get_pcvar_float(cvar_jetpackUpSpeed)*1.15)
		
		set_pev(Player,pev_velocity,JetpackData)
	}
}

public attack2(player) {
		
	if (rocket[player])
	{
		new rocket = create_entity("info_target")
		if(rocket == 0) return PLUGIN_CONTINUE
		
		entity_set_string(rocket, EV_SZ_classname, "zp_jp_rocket")
		entity_set_model(rocket, ROCKET_MDL)
		
		entity_set_size(rocket, Float:{0.0, 0.0, 0.0}, Float:{0.0, 0.0, 0.0})
		entity_set_int(rocket, EV_INT_movetype, MOVETYPE_FLY)
		entity_set_int(rocket, EV_INT_solid, SOLID_BBOX)
		
		new Float:vSrc[3]
		entity_get_vector(player, EV_VEC_origin, vSrc)
		
		new Float:Aim[3],Float:origin[3]
		VelocityByAim(player, 64, Aim)
		entity_get_vector(player,EV_VEC_origin,origin)
		
		vSrc[0] += Aim[0]
		vSrc[1] += Aim[1]
		entity_set_origin(rocket, vSrc)
		
		new Float:velocity[3], Float:angles[3]
		VelocityByAim(player, get_pcvar_num(cvar_RocketSpeed), velocity)
		
		entity_set_vector(rocket, EV_VEC_velocity, velocity)
		vector_to_angle(velocity, angles)
		entity_set_vector(rocket, EV_VEC_angles, angles)
		entity_set_edict(rocket,EV_ENT_owner,player)
		entity_set_float(rocket, EV_FL_takedamage, 1.0)

		set_pev(rocket, pev_effects, EF_LIGHT)
		
		message_begin( MSG_BROADCAST, SVC_TEMPENTITY );
		write_byte( TE_BEAMFOLLOW );
		write_short( rocket );
		write_short( trail );
		write_byte( 25 );
		write_byte( 5 );
		write_byte( 161 );
		write_byte( 161 );
		write_byte( 161 );
		write_byte( random_num( 150, 170 ) );
		message_end( );

		emit_sound(rocket, CHAN_WEAPON, ROCKET_SOUND, 1.0, ATTN_NORM, 0, PITCH_NORM)
		
		shot[player] = true
		last_Rocket[player] = gltime + get_pcvar_num(cvar_RocketDelay)
	}
	return PLUGIN_CONTINUE
}

public check_models(id) 
{
	if (zp_get_user_zombie(id) || zp_get_user_nemesis(id) || zp_get_user_assassin(id) || zp_get_user_survivor(id) || zp_get_user_sniper(id))
		return FMRES_IGNORED
	
	if(hasjet[id]) 
	{
		if(get_user_weapon(id) == CSW_KNIFE) 
		{
			set_pev(id, pev_viewmodel2, "models/v_jp.mdl")
			set_pev(id, pev_weaponmodel2, "models/p_jp.mdl")
		}
		else
		{
			return PLUGIN_CONTINUE
		}
		return PLUGIN_CONTINUE
	}
	return PLUGIN_CONTINUE
}

public remove_jetpacks() 
{
	new nextitem  = find_ent_by_class(-1,"zp_jp_jetpack")
	while(nextitem) 
	{
		remove_entity(nextitem)
		nextitem = find_ent_by_class(-1,"zp_jp_jetpack")
	}
	return PLUGIN_CONTINUE
}

public emitsound(entity, channel, const sample[]) 
{
	if( !( 1 <= entity <= 32 ) )
		return FMRES_IGNORED;
	
	if( !g_bAlive[ entity ] )
		return FMRES_IGNORED;
	
	if(hasjet[entity] && get_user_weapon(entity) == CSW_KNIFE) {
		if(equal(sample,"weapons/knife_slash1.wav")) return FMRES_SUPERCEDE
		if(equal(sample,"weapons/knife_slash2.wav")) return FMRES_SUPERCEDE
		
		if(equal(sample,"weapons/knife_deploy1.wav")) return FMRES_SUPERCEDE
		if(equal(sample,"weapons/knife_hitwall1.wav")) return FMRES_SUPERCEDE
		
		if(equal(sample,"weapons/knife_hit1.wav")) return FMRES_SUPERCEDE
		if(equal(sample,"weapons/knife_hit2.wav")) return FMRES_SUPERCEDE
		if(equal(sample,"weapons/knife_hit3.wav")) return FMRES_SUPERCEDE
		if(equal(sample,"weapons/knife_hit4.wav")) return FMRES_SUPERCEDE
		
		if(equal(sample,"weapons/knife_stab.wav")) return FMRES_SUPERCEDE
	}
	
	return FMRES_IGNORED
}

public Icon_Show(icon[], color[3], mode, Player) 
{
	message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("StatusIcon"), {0,0,0}, Player);
	write_byte(mode); 	// status (0=hide, 1=show, 2=flash)
	write_string(icon); 	// sprite name
	write_byte(color[0]); 	// red
	write_byte(color[1]); 	// green
	write_byte(color[2]); 	// blue
	message_end();

}

public Icon_Energy(color[3], mode, Player) 
{
	
	Icon_Show("item_longjump", color, mode, Player)
}

public human_fly(Player) 
{
	
	if (g_flyEnergy[Player] <= get_pcvar_num(cvar_fly_max_engery)*0.1)
	{
		jp_off(Player);	
	}
	if (g_flyEnergy[Player] > get_pcvar_num(cvar_fly_max_engery)*0.1)
	{
		jp_on(Player);
	}
}

public jp_on(Player) 
	fly[Player] = true

public jp_off(Player) 
	fly[Player] = false

public check_rocket(Player) 
{	
	if (last_Rocket[Player] > gltime)
	{	
		rk_forbidden(Player)
		rksound[Player] = true
	}
	else
	{	
		if (shot[Player])
		{
			rksound[Player] = false
			shot[Player] = false
		}
		rk_sound(Player)
		rk_allow(Player)
	}
}

public rk_allow(Player) 
	rocket[Player] = true

public rk_forbidden(Player) 
	rocket[Player] = false

public rk_sound(Player) {

	if (!rksound[Player])
	{
		engfunc(EngFunc_EmitSound, Player, CHAN_WEAPON, getrocket, 1.0, ATTN_NORM, 0, PITCH_NORM)
		client_print(Player, print_center, "You can shot with Bazooka NOW!")
		rksound[Player] = true
	}
	else if (rksound[Player])
	{
		
	}
}

public player_die() 
{
	new id = read_data(2)
	if(hasjet[id]) 
	{
		drop_jetpack(id)
		hasjet[id] = 0
		rocket[id] = false
		g_flyEnergy[id] = 0
	}
	
	return PLUGIN_CONTINUE
}

public cmdDrop(id) 
{
	if(hasjet[id]) 
	{
		if(get_user_weapon(id) == CSW_KNIFE) 
		{

			drop_jetpack(id)
			
			if(!zp_get_user_zombie(id))
			{
				entity_set_string(id,EV_SZ_viewmodel,"models/v_knife.mdl")
				entity_set_string(id,EV_SZ_weaponmodel,"models/p_knife.mdl")
			}
		}
	}
}

public drop_jetpack(Player) 
{
	if(hasjet[Player]) 
	{
		new Float:Aim[3],Float:origin[3]
		VelocityByAim(Player, 64, Aim)
		entity_get_vector(Player,EV_VEC_origin,origin)
		
		origin[0] += Aim[0]
		origin[1] += Aim[1]
		
		new jetpack = create_entity("info_target")
		entity_set_string(jetpack,EV_SZ_classname,"zp_jp_jetpack")
		entity_set_model(jetpack,"models/w_jp.mdl")	
		
		entity_set_size(jetpack,Float:{-16.0,-16.0,-16.0},Float:{16.0,16.0,16.0})
		entity_set_int(jetpack,EV_INT_solid,1)
		
		entity_set_int(jetpack,EV_INT_movetype,6)
		
		entity_set_vector(jetpack,EV_VEC_origin,origin)
		
		Icon_Energy({255, 255, 0}, 0, Player)
		Icon_Energy({128, 128, 0}, 0, Player )
		Icon_Energy({0, 255, 0}, 0, Player)
		
		hasjet[Player] = 0
		rocket[Player] = false
	}	
}

public pfn_touch(ptr, ptd) 
{
	if(is_valid_ent(ptr)) {
		new classname[32]
		entity_get_string(ptr,EV_SZ_classname,classname,31)
		
		if(equal(classname, "zp_jp_jetpack")) 
		{
			if(is_valid_ent(ptd)) 
			{
				new id = ptd
				if(id > 0 && id < 34) 
				{
					if(!hasjet[id] && !zp_get_user_zombie(id) && g_bAlive[id]) 
					{
						hasjet[id] = 1
						g_flyEnergy[id] = (g_flyEnergy[id] > 0 ? g_flyEnergy[id] : get_pcvar_num(cvar_fly_max_engery))
						rocket[id] = true
						client_cmd(id,"spk items/gunpickup2.wav")
						engclient_cmd(id,"weapon_knife")
						remove_entity(ptr)
					}
				}
			}
		}
		else if(equal(classname, "zp_jp_rocket")) 
		{	
			new Float: Origin[ 3 ];
			pev( ptr, pev_origin, Origin );
			jp_radius_damage(ptr)
			
			message_begin( MSG_BROADCAST, SVC_TEMPENTITY );
			write_byte( TE_EXPLOSION );
			write_coord( floatround( Origin[ 0 ] ) );
			write_coord( floatround( Origin[ 1 ] ) );
			write_coord( floatround( Origin[ 2 ] ) );
			write_short( explode );
			write_byte( random_num( 15, 25 ) );
			write_byte( 15 );
			write_byte( 0 );
			message_end( );
				
			message_begin( MSG_BROADCAST, SVC_TEMPENTITY );
			write_byte( TE_BEAMCYLINDER );
			write_coord( floatround( Origin[ 0 ] ) );
			write_coord( floatround( Origin[ 1 ] ) );
			write_coord( floatround( Origin[ 2 ] ) );
			write_coord( floatround( Origin[ 0 ] ) );
			write_coord( floatround( Origin[ 1 ] ) );
			write_coord( floatround( Origin[ 2 ] ) + ( 450 + ( random_num( 0, 3 ) * 100 ) ) );
			write_short( shockwave );
			write_byte( 0 );
			write_byte( 0 );
			write_byte( 4 );
			write_byte( random_num( 0, 3  ) * 40 );
			write_byte( 0 );
			write_byte( 121 );
			write_byte( 121 );
			write_byte( 121 );
			write_byte( random_num( 150, 240 ) );
			write_byte( 0 );
			message_end( );
			
			if(is_valid_ent(ptd)) 
			{
				new classname2[32]
				entity_get_string(ptd,EV_SZ_classname,classname2,31)
				
				if(equal(classname2,"func_breakable"))
					force_use(ptr,ptd)
			}
			
			remove_entity(ptr)
		}
	}
	return PLUGIN_CONTINUE
}

public zp_user_infected_pre(Player, infector)
{
	Icon_Energy({0, 255, 0}, 0, Player);
	cmdDrop(Player);
	hasjet[Player] = 0;
	g_flyEnergy[Player] = 0;
	rocket[Player] = false;
}

public zp_extra_item_selected(Player, itemid)
{
	new szName[ 32 ];
	get_user_name( Player, szName, sizeof ( szName ) -1 );
		
	if (itemid == g_item_jetpack)
	{
		zp_colored_print(0, "^3%s^1 bought^4 JetPack Bazooka^1 !", szName)

		zp_colored_print(Player, "Press ^3CTRL+SPACE^1 to fly!")
		zp_colored_print(Player, "Press ^3RIGHT CLICK^1 to shoot!")

		set_hudmessage( 255, 119, 5, -1.0, 0.80, 1, 0.0, 5.0, 1.0, 1.0, -1 );
		show_hudmessage( 0, "%s bought JetPack Bazooka!", szName );

		hasjet[Player] = 1
		g_flyEnergy[Player] = get_pcvar_num(cvar_fly_max_engery)
		rocket[Player] = true
		client_cmd(Player,"spk items/gunpickup2.wav")
		engclient_cmd(Player,"weapon_knife")
	}
}

stock jp_radius_damage(entity) 
{
	new id = entity_get_edict(entity,EV_ENT_owner)
	new packs,name[32];
	for(new i = 1; i < 33; i++) 
	{
		if(g_bAlive[i]) 
		{
			new dist = floatround(entity_range(entity,i))
			
			if(dist <= get_pcvar_num(cvar_Dmg_range)) 
			{
				new hp = get_user_health(i)
				new Float:damage = get_pcvar_float(cvar_RocketDmg)-(get_pcvar_float(cvar_RocketDmg)/get_pcvar_float(cvar_Dmg_range))*float(dist)
				
				new Origin[3]
				get_user_origin(i,Origin)
				
				if(zp_get_user_zombie(id) != zp_get_user_zombie(i)) 
				{
					get_user_name(i,name,31);
					if(damage>=800)
						packs = 2;
					else
						packs = 1;
							
					if(hp > damage)
					{
						zp_set_user_ammo_packs ( id, zp_get_user_ammo_packs ( id ) + packs );
						jp_take_damage(i,floatround(damage),Origin,DMG_BLAST)
						
						new iPos = ++g_iPlayerPos[id]
						if (iPos == sizeof(g_flCoords))
						{
							iPos = g_iPlayerPos[id] = 0
						}
						set_hudmessage(0, 150, 150, Float:g_flCoords[iPos][0], Float:g_flCoords[iPos][1], 0, 2.0, 1.0, 0.1, 0.1, -1)
						show_hudmessage(id, "%d", floatround(damage))
						zp_colored_print(id, "You make^3 %i^1 damage on^3 %s^1 with Bazooka.", floatround(damage), name);
					}
					else
					{
						log_kill(id,i,"Jetpack Rocket",0)
						zp_colored_print(id, "You killed^3 %s^1 with Bazooka.", name);
					}
				}
			}
		}
	}
}

stock log_kill(killer, victim, weapon[], headshot)
{
	set_msg_block(get_user_msgid("DeathMsg"), BLOCK_SET)
	ExecuteHamB(Ham_Killed, victim, killer, 2) 
	set_msg_block(get_user_msgid("DeathMsg"), BLOCK_NOT)

	
	message_begin(MSG_BROADCAST, get_user_msgid("DeathMsg"))
	write_byte(killer)
	write_byte(victim)
	write_byte(headshot)
	write_string(weapon)
	message_end()
	
	if(get_user_team(killer)!=get_user_team(victim))
		fm_set_user_frags(killer,fm_get_user_frags(killer) +1)
	if(get_user_team(killer)==get_user_team(victim))
		fm_set_user_frags(killer,fm_get_user_frags(killer) -1)
		
	new kname[32], vname[32], kauthid[32], vauthid[32], kteam[10], vteam[10]

	get_user_name(killer, kname, 31)
	get_user_team(killer, kteam, 9)
	get_user_authid(killer, kauthid, 31)
 
	get_user_name(victim, vname, 31)
	get_user_team(victim, vteam, 9)
	get_user_authid(victim, vauthid, 31)
		
	log_message("^"%s<%d><%s><%s>^" killed ^"%s<%d><%s><%s>^" with ^"%s^"", 
	kname, get_user_userid(killer), kauthid, kteam, 
 	vname, get_user_userid(victim), vauthid, vteam, weapon)

 	return PLUGIN_CONTINUE;
}

stock jp_take_damage(victim,damage,origin[3],bit) {
	message_begin(MSG_ONE,get_user_msgid("Damage"),{0,0,0},victim)
	write_byte(21)
	write_byte(20)
	write_long(bit)
	write_coord(origin[0])
	write_coord(origin[1])
	write_coord(origin[2])
	message_end()
	
	fm_set_user_health(victim,fm_get_user_health(victim)-damage)

	client_cmd(victim,"spk fvox/flatline.wav")

	msg_screen_fade(victim, EFFECT_LENGTH, 255, 0, 0, 115);
}

stock msg_screen_fade( id, holdtime, r, g, b, a )
{
        message_begin( MSG_ONE_UNRELIABLE, get_user_msgid( "ScreenFade" ), { 0, 0, 0 }, id );
        write_short( seconds_to_units( holdtime ) );
        write_short( seconds_to_units( holdtime ) );
        write_short( 0 );
        write_byte( r );
        write_byte( g );
        write_byte( b );
        write_byte( a );
        message_end( );
}

stock seconds_to_units( time )
{
        return ( ( 1 << 12 ) * ( time ) )
}  

stock fm_set_user_health(id, health)
{
	health > 0 ? set_pev(id, pev_health, float(health)) : dllfunc(DLLFunc_ClientKill, id)
	
	return 1
}

stock fm_get_user_health(id)
{
	return pev(id, pev_health)
}

stock fm_set_user_frags(id, frags) 
{
	set_pev( id, pev_frags, float(frags))

	return 1
}  

stock fm_get_user_frags(id)
{
	return pev(id, pev_frags)
}
Ali0mer is offline
Send a message via Skype™ to Ali0mer
Ali0mer
Senior Member
Join Date: Jan 2016
Location: Iraq
Old 10-10-2017 , 06:52   Re: Need help [zp jetpack]
Reply With Quote #2

UP
Ali0mer is offline
Send a message via Skype™ to Ali0mer
Natsheh
Veteran Member
Join Date: Sep 2012
Old 10-10-2017 , 07:10   Re: Need help [zp jetpack]
Reply With Quote #3

you can bump after two weeks, and its the wrong section.
__________________
@Jailbreak Main Mod v2.7.0 100%
@User Tag Prefix 100% done !
@Mystery Box 100% done !
@VIP System 100% done !

Natsheh is offline
Send a message via MSN to Natsheh Send a message via Skype™ to Natsheh
KiLLeR.
Senior Member
Join Date: Jul 2014
Location: Bulgaria
Old 10-10-2017 , 10:06   Re: Need help [zp jetpack]
Reply With Quote #4

According to your code it must work...
maybe you don't have correct bind to G key?!
Type in console "bind g drop" and try again.
KiLLeR. is offline
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 15:40.


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