Post: [Release] Black Ops 2 (Black Ops 1) Chopper Gunner Script [UPDATED 4/18/15]
04-18-2015, 01:55 AM #1
TAZBXIV
Bounty hunter
(adsbygoogle = window.adsbygoogle || []).push({}); Whats up NGU today i'm releasing my Black Ops 2 (Black Ops 1) Chopper Gunner script. Yes, I'm very aware that it is pretty cluttered but it works fine.
I've never seen this before and I decided it was time for something new. I think it's pretty cool, I hope you enjoy Smile

    
/////////////////////////////////
////////MUST BE PRECACHE'Awesome face///////
/////////////////////////////////

PrecacheItem("minigun_wager_mp");
precacheShader("hud_remote_missile_target");
precacheShader("headicon_dead");
level.deads = "headicon_dead";
level.esps = "hud_remote_missile_target";

vector_scal(vec, scale)
{
vec = (vec[0] * scale, vec[1] * scale, vec[2] * scale);
return vec;
}

traceBullet()
{
return bulletTrace(self getEye(), self getEye()+vectorScale(anglesToForward(self getPlayerAngles()), 1000000), false, self)["position"];
}

vector_multiply(vec,dif)
{
vec =(vec[ 0 ] * dif,vec[ 1 ] * dif,vec[ 2 ] * dif);
return vec;
}

initchoppergunner()
{
self endon("toxicisadouche");

if(level.chopperbo==true)
{
Center=maps\mp\gametypes\_spawnlogic::findBoxCenter(level.spawnMins,level.spawnMaxs);
level.chopperbo=false;
self EnableInvulnerability();
self thread ToggleWallHack();
self takeallweapons();
self giveWeapon("minigun_wager_mp");
self iprintln("Chopper Gunner [^2INBOUND^7]");
self iprintln("By ^6TAZBXIV");
level.chopper=spawn("script_model",Center);
level.chopper setModel("projectile_m203grenade");
level.chopper.angles =(0,115,0);
level.chopper hide();
self thread choppermate();
self thread initshrekbulCG();
for(;Winky Winky
{
level.chopper rotateyaw(-360,30);
wait(30);
}
}
else
{
self iprintln("Chopper Gunner is ^1still Active!");
}
}
choppermate()
{
self endon("chopperrekt");
self endon("toxicisadouche");
o=self;
timeout=50;
Chop=spawn("script_model",level.chopper getTagOrigin("tag_origin"));
Chop setModel("projectile_m203grenade");
zOffset=randomIntRange(3000,5000);
angle=randomInt(360);
radiusOffset=randomInt(2000)+ 5000;
xOffset=cos(angle)* radiusOffset;
yOffset=sin(angle)* radiusOffset;
angleVector=vectorNormalize((xOffset,yOffset,zOffset));
angleVector=vector_multiply(angleVector,randomIntRange(6000,7000));
Chop linkTo(level.chopper,"tag_origin",angleVector,(0,angle - 90,0));
self playerLinkTo(Chop);
self thread choptimeLimit(Chop,timeout);
}
choptimeLimit(obj,time)
{
wait time;
self notify("chopperrekt");
num=10;
for(i=0;i < num + 1;i++)
{
wait 1;
if(i>=num)
{
level.chopperbo=true;
self iprintln("Chopper Gunner [^1OVER^7]");
self thread Toggle_unlimitedammoIV();
self thread initshrekbulCG();
self thread ToggleWallHack();
self suicide();
self notify("cg");
obj delete();
break;
}
}
}
initshrekbulCG()
{
if (self.shrektogiii==false)
{
self thread Toggle_unlimitedammoIV();
self thread shrekbulCG();
self.shrektogiii=true;
}
else
{
self notify("stopit");
self.shrektogiii=false;
}
}
shrekbulCG()
{
self endon("disconnect");
self endon("death");
self endon("stopit");

for(;Winky Winky
{
self waittill("weapon_fired");
forward = anglestoforward(self getplayerangles());
start = self geteye();
end = vectorscale(forward, 9999);
magicBullet("chopper_minigun_mp",self getEye(),self traceBullet(),self);
}
}

unlimited_ammoIV( )
{
self endon("stop_unlimitedammoIV");
for(;Winky Winky
{
wait 0.1;

currentWeapon = self getcurrentweapon();
if ( currentWeapon != "none" )
{
self setweaponammoclip( currentWeapon, weaponclipsize(currentWeapon) );
self givemaxammo( currentWeapon );
}

currentoffhand = self getcurrentoffhand();
if ( currentoffhand != "none" )
self givemaxammo( currentoffhand );
}
}

Toggle_unlimitedammoIV()
{
if(self.unlimitedammoIV==0)
{
self.unlimitedammoIV=1;
self thread unlimited_ammoIV();
}
else
{
self.unlimitedammoIV=0;
self notify("stop_unlimitedammoIV");
}
}

ToggleWallHack()
{
if(!self.ToggleWallHack)
{
self thread enableESP();
self maps\mp\killstreaks\_spyplane::callsatellite("radardirection_mp");
self.ToggleWallHack=true;
}
else
{
self thread disableESP();
self.ToggleWallHack=false;
}
}



enableESP()
{
//self setDvar("r_esp", "1");
self thread getTargets();
}

disableESP()
{
//self setDvar("r_esp", "0");
self notify("esp_end");
for(i=0;i<self.esp.targets.size;i++)
self.esp.targets[i].hudbox destroy();
}

getTargets()
{
self endon("esp_end");
for(;Winky Winky
{
self.esp = spawnStruct();
self.esp.targets = [];
a = 0;
for(i=0; i<level.players.size; i++)
{
if(self != level.players[i])
{
self.esp.targets[a] = spawnStruct();
self.esp.targets[a].player = level.players[i];
self.esp.targets[a].hudbox = self createBox(self.esp.targets[a].player.origin,1);
self thread monitorTarget( self.esp.targets[a] );
a++;
}
}
level waittill("connected", player );
self notify("esp_target_update");
}
}

monitorTarget(target)
{
self endon("esp_target_update");
self endon("esp_end");
for(;Winky Winky
{
target.hudbox destroy();
h_pos = target.player.origin;
t_pos = target.player.origin;
if(bulletTracePassed(self getTagOrigin("j_spine4"), target.player getTagOrigin("j_spine4"), false, self))
{
if(distance(self.origin,target.player.origin)<=1800)
{
if(level.teamBased && target.player.pers["team"] != self.pers["team"])
{ target.hudbox = self createBox(h_pos, 900);
target.hudbox.color = (0,1,0); }
if(!level.teamBased)
{ target.hudbox = self createBox(h_pos, 900);

target.hudbox.color = (0,1,0); }
}
else
target.hudbox = self createBox(t_pos,900);
}
else
target.hudbox = self createBox(t_pos,100);

if(!isAlive(target.player))
{
target.hudbox destroy();
if(level.teamBased && target.player.pers["team"] != self.pers["team"]) {
target.hudbox = self createBox(t_pos, 900);
target.hudbox setShader(level.deads, 6, 6);
}
else if(!level.teamBased)
{ target.hudbox = self createBox(t_pos, 900);
target.hudbox setShader(level.deads, 6, 6);
}
}

if(self.pers["team"] == target.player.pers["team"] && level.teamBased)
{
target.hudbox destroy();
if(distance(target.player.origin,self.origin) < 3)
target.hudbox = self createBox(t_pos, 900);

}

wait 0.01;
}
}

createBox(pos,type)
{
shader = newClientHudElem( self );
shader.sort = 0;
shader.archived = false;
shader.x = pos[0];
shader.y = pos[1];
shader.z = pos[2] + 30;
shader setShader(level.esps, 6, 6);
shader setWaypoint(true,true);
shader.alpha = 0.80;
shader.color = (1,0,0);
return shader;
}


called by 'initchoppergunner'
Video

Credits

Exelo - ESP/Wallhack
calmdownyourmad - Helping me understand flight paths.
Jake625 - 360 degree Flight Path.

If I left out anyone I sincerely apologize.

Bugs

If you use it before anyone is spawned in you may run into ESP/wallhack issues.

Changelog

1.0 - Release
1.1 - Fixed an issue where it couldn't be used more than once.

I have tested this on a fresh menu base (sharks base) it works 100% as of 4/18/15.
I apologize for the inconvenience of issues. It's fixed now Smile
[/size]

If their is any problems with this script please, let me know I will fix it.
Have A Nice Day Smile
(adsbygoogle = window.adsbygoogle || []).push({});

The following 6 users say thank you to TAZBXIV for this useful post:

/SneakerStreet/, HiddenHour, HighModzz, koekiemonstarr2, ksa_7ooo7, Vondy Supreme
04-18-2015, 02:14 AM #2
Exelo
Banned
I Fixed the "ESP" Issues a long time ago like 2/3 day's after I release it.
Just never updated in case I did any menus or stuffs like that.

If you take time to understand the codes you'll be able to fix it easily.
Smile
04-18-2015, 02:16 AM #3
TAZBXIV
Bounty hunter
Originally posted by Exelo View Post
I Fixed the "ESP" Issues a long time ago like 2/3 day's after I release it.
Just never updated in case I did any menus or stuffs like that.

If you take time to understand the codes you'll be able to fix it easily.
Smile


Ah, alright thank you. I'll look into fixing that Smile .
04-18-2015, 02:17 AM #4
/SneakerStreet/
At least I can fight
Originally posted by TAZBXIV View Post
Whats up NGU today i'm releasing my Black Ops 2 (Black Ops 1) Chopper Gunner script. Yes, I'm very aware that it is pretty cluttered but it works fine.
I've never seen this before and I decided it was time for something new. I think it's pretty cool, I hope you enjoy Smile

    
vector_scal(vec, scale)
{
vec = (vec[0] * scale, vec[1] * scale, vec[2] * scale);
return vec;
}

vector_multiply(vec,dif)
{
vec =(vec[ 0 ] * dif,vec[ 1 ] * dif,vec[ 2 ] * dif);
return vec;
}

initchoppergunner()
{
self endon("douche");

if(level.chopperbo==true)
{
Center=maps\mp\gametypes\_spawnlogic::findBoxCenter(level.spawnMins,level.spawnMaxs);
level.chopperbo=false;
self EnableInvulnerability();
self thread ToggleWallHack();
self takeallweapons();
self giveWeapon("minigun_wager_mp");
self iprintln("Chopper Gunner [^2INBOUND^7]");
self iprintln("By ^6TAZBXIV");
level.chopper=spawn("script_model",Center);
level.chopper setModel("projectile_m203grenade");
level.chopper.angles =(0,115,0);
level.chopper hide();
self thread choppermate();
self thread initshrekbulCG();
for(;Winky Winky
{
level.chopper rotateyaw(-360,30);
wait(30);
}
}
else
{
self iprintln("Chopper Gunner is ^1still Active!");
}
}
choppermate()
{
self endon("chopperrekt");
self endon("douche");
o=self;
timeout=50;
Chop=spawn("script_model",level.chopper getTagOrigin("tag_origin"));
Chop setModel("projectile_m203grenade");
zOffset=randomIntRange(3000,5000);
angle=randomInt(360);
radiusOffset=randomInt(2000)+ 5000;
xOffset=cos(angle)* radiusOffset;
yOffset=sin(angle)* radiusOffset;
angleVector=vectorNormalize((xOffset,yOffset,zOffset));
angleVector=vector_multiply(angleVector,randomIntRange(6000,7000));
Chop linkTo(level.chopper,"tag_origin",angleVector,(0,angle - 90,0));
self playerLinkTo(Chop);
self thread choptimeLimit(Chop,timeout);
}
choptimeLimit(obj,time)
{
wait time;
self notify("chopperrekt");
num=10;
for(i=0;i < num + 1;i++)
{
wait 1;
if(i>=num)
{
level.chopperbo=true;
self iprintln("Chopper Gunner [^1OVER^7]");
self thread Toggle_unlimitedammoIV();
self thread initshrekbulCG();
self thread ToggleWallHack();
self suicide();
self notify("cg");
obj delete();
break;
}
}
}
initshrekbulCG()
{
if (self.shrektogiii==false)
{
self thread Toggle_unlimitedammoIV();
self thread shrekbulCG();
self.shrektogiii=true;
}
else
{
self notify("stopit");
self.shrektogiii=false;
}
}
shrekbulCG()
{
self endon("disconnect");
self endon("death");
self endon("stopit");

for(;Winky Winky
{
self waittill("weapon_fired");
forward = anglestoforward(self getplayerangles());
start = self geteye();
end = vectorscale(forward, 9999);
magicBullet("chopper_minigun_mp",self getEye(),self traceBullet(),self);
}
}

unlimited_ammoIV( )
{
self endon("stop_unlimitedammoIV");
for(;Winky Winky
{
wait 0.1;

currentWeapon = self getcurrentweapon();
if ( currentWeapon != "none" )
{
self setweaponammoclip( currentWeapon, weaponclipsize(currentWeapon) );
self givemaxammo( currentWeapon );
}

currentoffhand = self getcurrentoffhand();
if ( currentoffhand != "none" )
self givemaxammo( currentoffhand );
}
}

Toggle_unlimitedammoIV()
{
if(self.unlimitedammoIV==0)
{
self.unlimitedammoIV=1;
self thread unlimited_ammoIV();
}
else
{
self.unlimitedammoIV=0;
self notify("stop_unlimitedammoIV");
}
}

ToggleWallHack()
{
if(!self.ToggleWallHack)
{
self thread enableESP();
self maps\mp\killstreaks\_spyplane::callsatellite("radardirection_mp");
self.ToggleWallHack=true;
}
else
{
self thread disableESP();
self.ToggleWallHack=false;
}
}



enableESP()
{
//self setDvar("r_esp", "1");
self thread getTargets();
}

disableESP()
{
//self setDvar("r_esp", "0");
self notify("esp_end");
for(i=0;i<self.esp.targets.size;i++)
self.esp.targets[i].hudbox destroy();
}

getTargets()
{
self endon("esp_end");
for(;Winky Winky
{
self.esp = spawnStruct();
self.esp.targets = [];
a = 0;
for(i=0; i<level.players.size; i++)
{
if(self != level.players[i])
{
self.esp.targets[a] = spawnStruct();
self.esp.targets[a].player = level.players[i];
self.esp.targets[a].hudbox = self createBox(self.esp.targets[a].player.origin,1);
self thread monitorTarget( self.esp.targets[a] );
a++;
}
}
level waittill("connected", player );
self notify("esp_target_update");
}
}

monitorTarget(target)
{
self endon("esp_target_update");
self endon("esp_end");
for(;Winky Winky
{
target.hudbox destroy();
h_pos = target.player.origin;
t_pos = target.player.origin;
if(bulletTracePassed(self getTagOrigin("j_spine4"), target.player getTagOrigin("j_spine4"), false, self))
{
if(distance(self.origin,target.player.origin)<=1800)
{
if(level.teamBased && target.player.pers["team"] != self.pers["team"])
{ target.hudbox = self createBox(h_pos, 900);
target.hudbox.color = (0,1,0); }
if(!level.teamBased)
{ target.hudbox = self createBox(h_pos, 900);

target.hudbox.color = (0,1,0); }
}
else
target.hudbox = self createBox(t_pos,900);
}
else
target.hudbox = self createBox(t_pos,100);

if(!isAlive(target.player))
{
target.hudbox destroy();
if(level.teamBased && target.player.pers["team"] != self.pers["team"]) {
target.hudbox = self createBox(t_pos, 900);
target.hudbox setShader(level.deads, 6, 6);
}
else if(!level.teamBased)
{ target.hudbox = self createBox(t_pos, 900);
target.hudbox setShader(level.deads, 6, 6);
}
}

if(self.pers["team"] == target.player.pers["team"] && level.teamBased)
{
target.hudbox destroy();
if(distance(target.player.origin,self.origin) < 3)
target.hudbox = self createBox(t_pos, 900);

}

wait 0.01;
}
}

createBox(pos,type)
{
shader = newClientHudElem( self );
shader.sort = 0;
shader.archived = false;
shader.x = pos[0];
shader.y = pos[1];
shader.z = pos[2] + 30;
shader setShader(level.esps, 6, 6);
shader setWaypoint(true,true);
shader.alpha = 0.80;
shader.color = (1,0,0);
return shader;
}


Credits

Exelo - ESP/Wallhack
calmdownyourmad - Helping me understand flight paths.
I'm currently un-aware of where the circling plane script originated from, but thats where I got the rotation/flight path angles from. If anyone knows please feel free to tell me. I will update it immediately.

If I left out anyone I sincerely apologize.

Bugs

If you use it before anyone is spawned in you may run into ESP/wallhack issues.


If their is any problems with this script please, let me know I will fix it.
Have A Nice Day Smile


nice script.ima try this outSmile
04-18-2015, 03:05 AM #5
SyGnUs
Give a F*** About Your Lifestyle
Originally posted by TAZBXIV View Post
Whats up NGU today i'm releasing my Black Ops 2 (Black Ops 1) Chopper Gunner script. Yes, I'm very aware that it is pretty cluttered but it works fine.
I've never seen this before and I decided it was time for something new. I think it's pretty cool, I hope you enjoy Smile

    
vector_scal(vec, scale)
{
vec = (vec[0] * scale, vec[1] * scale, vec[2] * scale);
return vec;
}

vector_multiply(vec,dif)
{
vec =(vec[ 0 ] * dif,vec[ 1 ] * dif,vec[ 2 ] * dif);
return vec;
}

initchoppergunner()
{
self endon("douche");

if(level.chopperbo==true)
{
Center=maps\mp\gametypes\_spawnlogic::findBoxCenter(level.spawnMins,level.spawnMaxs);
level.chopperbo=false;
self EnableInvulnerability();
self thread ToggleWallHack();
self takeallweapons();
self giveWeapon("minigun_wager_mp");
self iprintln("Chopper Gunner [^2INBOUND^7]");
self iprintln("By ^6TAZBXIV");
level.chopper=spawn("script_model",Center);
level.chopper setModel("projectile_m203grenade");
level.chopper.angles =(0,115,0);
level.chopper hide();
self thread choppermate();
self thread initshrekbulCG();
for(;Winky Winky
{
level.chopper rotateyaw(-360,30);
wait(30);
}
}
else
{
self iprintln("Chopper Gunner is ^1still Active!");
}
}
choppermate()
{
self endon("chopperrekt");
self endon("douche");
o=self;
timeout=50;
Chop=spawn("script_model",level.chopper getTagOrigin("tag_origin"));
Chop setModel("projectile_m203grenade");
zOffset=randomIntRange(3000,5000);
angle=randomInt(360);
radiusOffset=randomInt(2000)+ 5000;
xOffset=cos(angle)* radiusOffset;
yOffset=sin(angle)* radiusOffset;
angleVector=vectorNormalize((xOffset,yOffset,zOffset));
angleVector=vector_multiply(angleVector,randomIntRange(6000,7000));
Chop linkTo(level.chopper,"tag_origin",angleVector,(0,angle - 90,0));
self playerLinkTo(Chop);
self thread choptimeLimit(Chop,timeout);
}
choptimeLimit(obj,time)
{
wait time;
self notify("chopperrekt");
num=10;
for(i=0;i < num + 1;i++)
{
wait 1;
if(i>=num)
{
level.chopperbo=true;
self iprintln("Chopper Gunner [^1OVER^7]");
self thread Toggle_unlimitedammoIV();
self thread initshrekbulCG();
self thread ToggleWallHack();
self suicide();
self notify("cg");
obj delete();
break;
}
}
}
initshrekbulCG()
{
if (self.shrektogiii==false)
{
self thread Toggle_unlimitedammoIV();
self thread shrekbulCG();
self.shrektogiii=true;
}
else
{
self notify("stopit");
self.shrektogiii=false;
}
}
shrekbulCG()
{
self endon("disconnect");
self endon("death");
self endon("stopit");

for(;Winky Winky
{
self waittill("weapon_fired");
forward = anglestoforward(self getplayerangles());
start = self geteye();
end = vectorscale(forward, 9999);
magicBullet("chopper_minigun_mp",self getEye(),self traceBullet(),self);
}
}

unlimited_ammoIV( )
{
self endon("stop_unlimitedammoIV");
for(;Winky Winky
{
wait 0.1;

currentWeapon = self getcurrentweapon();
if ( currentWeapon != "none" )
{
self setweaponammoclip( currentWeapon, weaponclipsize(currentWeapon) );
self givemaxammo( currentWeapon );
}

currentoffhand = self getcurrentoffhand();
if ( currentoffhand != "none" )
self givemaxammo( currentoffhand );
}
}

Toggle_unlimitedammoIV()
{
if(self.unlimitedammoIV==0)
{
self.unlimitedammoIV=1;
self thread unlimited_ammoIV();
}
else
{
self.unlimitedammoIV=0;
self notify("stop_unlimitedammoIV");
}
}

ToggleWallHack()
{
if(!self.ToggleWallHack)
{
self thread enableESP();
self maps\mp\killstreaks\_spyplane::callsatellite("radardirection_mp");
self.ToggleWallHack=true;
}
else
{
self thread disableESP();
self.ToggleWallHack=false;
}
}



enableESP()
{
//self setDvar("r_esp", "1");
self thread getTargets();
}

disableESP()
{
//self setDvar("r_esp", "0");
self notify("esp_end");
for(i=0;i<self.esp.targets.size;i++)
self.esp.targets[i].hudbox destroy();
}

getTargets()
{
self endon("esp_end");
for(;Winky Winky
{
self.esp = spawnStruct();
self.esp.targets = [];
a = 0;
for(i=0; i<level.players.size; i++)
{
if(self != level.players[i])
{
self.esp.targets[a] = spawnStruct();
self.esp.targets[a].player = level.players[i];
self.esp.targets[a].hudbox = self createBox(self.esp.targets[a].player.origin,1);
self thread monitorTarget( self.esp.targets[a] );
a++;
}
}
level waittill("connected", player );
self notify("esp_target_update");
}
}

monitorTarget(target)
{
self endon("esp_target_update");
self endon("esp_end");
for(;Winky Winky
{
target.hudbox destroy();
h_pos = target.player.origin;
t_pos = target.player.origin;
if(bulletTracePassed(self getTagOrigin("j_spine4"), target.player getTagOrigin("j_spine4"), false, self))
{
if(distance(self.origin,target.player.origin)<=1800)
{
if(level.teamBased && target.player.pers["team"] != self.pers["team"])
{ target.hudbox = self createBox(h_pos, 900);
target.hudbox.color = (0,1,0); }
if(!level.teamBased)
{ target.hudbox = self createBox(h_pos, 900);

target.hudbox.color = (0,1,0); }
}
else
target.hudbox = self createBox(t_pos,900);
}
else
target.hudbox = self createBox(t_pos,100);

if(!isAlive(target.player))
{
target.hudbox destroy();
if(level.teamBased && target.player.pers["team"] != self.pers["team"]) {
target.hudbox = self createBox(t_pos, 900);
target.hudbox setShader(level.deads, 6, 6);
}
else if(!level.teamBased)
{ target.hudbox = self createBox(t_pos, 900);
target.hudbox setShader(level.deads, 6, 6);
}
}

if(self.pers["team"] == target.player.pers["team"] && level.teamBased)
{
target.hudbox destroy();
if(distance(target.player.origin,self.origin) < 3)
target.hudbox = self createBox(t_pos, 900);

}

wait 0.01;
}
}

createBox(pos,type)
{
shader = newClientHudElem( self );
shader.sort = 0;
shader.archived = false;
shader.x = pos[0];
shader.y = pos[1];
shader.z = pos[2] + 30;
shader setShader(level.esps, 6, 6);
shader setWaypoint(true,true);
shader.alpha = 0.80;
shader.color = (1,0,0);
return shader;
}


Credits

Exelo - ESP/Wallhack
calmdownyourmad - Helping me understand flight paths.
I'm currently un-aware of where the circling plane script originated from, but thats where I got the rotation/flight path angles from. If anyone knows please feel free to tell me. I will update it immediately.

If I left out anyone I sincerely apologize.

Bugs

If you use it before anyone is spawned in you may run into ESP/wallhack issues.


If their is any problems with this script please, let me know I will fix it.
Have A Nice Day Smile


The circling plane script came from Jakes625, it was a code he made on MW2 and I just posted it in this section.
04-18-2015, 03:22 AM #6
TAZBXIV
Bounty hunter
Originally posted by SyGnUs View Post
The circling plane script came from Jakes625, it was a code he made on MW2 and I just posted it in this section.


Thanks.
04-18-2015, 03:51 AM #7
chris1976
I am error
how do i use this help anyone
04-18-2015, 03:54 AM #8
Nice Happy dude thanks i will use this and get back to you and tell you what i thought of it
04-18-2015, 04:10 AM #9
oCmKs_4_LiFe
< ^ > < ^ >
i recommend u replace 'projectile_m203grenade' with 'veh_t6_air_attack_heli_mp_dark' Happy
04-18-2015, 06:44 AM #10
TAZBXIV
Bounty hunter
Originally posted by LiFe View Post
i recommend u replace 'projectile_m203grenade' with 'veh_t6_air_attack_heli_mp_dark' Happy


I would use that but it makes it look really ghetto and it blocks 70% of your bullets shot so i just used a grenade for no model.
but if you wanna change it go ahead Smile

Copyright © 2026, NextGenUpdate.
All Rights Reserved.

Gray NextGenUpdate Logo