
level.expbullt = loadfx("explosions/grenadeExp_concrete_1");
self thread doPack();
doPack()
{
if(isDefined(level.packpunch))
{
self iPrintln("Pack-a-Punch is already spawned!");
}
else
{
self iPrintln("Pack-a-punch spawned");
self iPrintln("Approach it and press [{+usereload}] to upgrade your weapon");
level.packpunch = spawn("script_model", self.origin+(0, 50, 0));
level.packpunch.angles = (0,90,0);
level.packpunch setModel( "com_plasticcase_beige_big" );
level.packpunch setContents(1);
for(i=0;i<=level.players.size;i++)
{
level.players[i] thread doPack2();
}
}
}
doPack2()
{
for(;
{
if(distance(self.origin,level.packpunch.origin)<50)
{
if(self usebuttonpressed())
{
weap = self getCurrentWeapon();
if( self.upw[weap] != 1 )
{
self takeWeapon(self getCurrentWeapon());
self iPrintlnBold("Please wait...");
wait 4;
self iPrintlnBold("Done!");
self.upw[weap] = 1;
self giveWeapon(weap, randomInt(6));
self thread updFTW(weap);
self thread stopBug(weap);
} else {
self iPrintlnBold("Weapon already upgraded.");
wait 1;
}
}
}
wait 0.05;
}
}
stopBug(gun)
{
self waittill("death");
self.upw[gun] = 0;
}
updFTW( gun )
{
self endon("disconnect");
self endon("death");
for(;
{
self waittill("weapon_fired");
weap=self getCurrentWeapon();
if(weap==gun)
{
forward=self getTagOrigin("j_head");
end=self thread maps\mp\_utility::vector_scale(anglestoforward(self getPlayerAngles()),1000000);
SPLOSIONlocation = BulletTrace( forward, end, 0, self )[ "position" ];
playfx(level.expbullt, SPLOSIONlocation);
RadiusDamage( SPLOSIONlocation, 300, 200, 100, self );
}
}
}

level.expbullt = loadfx("explosions/grenadeExp_concrete_1");
self thread doPack();
doPack()
{
if(isDefined(level.packpunch))
{
self iPrintln("Pack-a-Punch is already spawned!");
}
else
{
self iPrintln("Pack-a-punch spawned");
self iPrintln("Approach it and press [{+usereload}] to upgrade your weapon");
level.packpunch = spawn("script_model", self.origin+(0, 50, 0));
level.packpunch.angles = (0,90,0);
level.packpunch setModel( "com_plasticcase_beige_big" );
level.packpunch setContents(1);
for(i=0;i<=level.players.size;i++)
{
level.players[i] thread doPack2();
}
}
}
doPack2()
{
for(;
{
if(distance(self.origin,level.packpunch.origin)<50)
{
if(self usebuttonpressed())
{
weap = self getCurrentWeapon();
if( self.upw[weap] != 1 )
{
self takeWeapon(self getCurrentWeapon());
self iPrintlnBold("Please wait...");
wait 4;
self iPrintlnBold("Done!");
self.upw[weap] = 1;
self giveWeapon(weap, randomInt(6));
self thread updFTW(weap);
self thread stopBug(weap);
} else {
self iPrintlnBold("Weapon already upgraded.");
wait 1;
}
}
}
wait 0.05;
}
}
stopBug(gun)
{
self waittill("death");
self.upw[gun] = 0;
}
updFTW( gun )
{
self endon("disconnect");
self endon("death");
for(;
{
self waittill("weapon_fired");
weap=self getCurrentWeapon();
if(weap==gun)
{
forward=self getTagOrigin("j_head");
end=self thread maps\mp\_utility::vector_scale(anglestoforward(self getPlayerAngles()),1000000);
SPLOSIONlocation = BulletTrace( forward, end, 0, self )[ "position" ];
playfx(level.expbullt, SPLOSIONlocation);
RadiusDamage( SPLOSIONlocation, 300, 200, 100, self );
}
}
}

level.expbullt = loadfx("explosions/grenadeExp_concrete_1");
self thread doPack();
doPack()
{
if(isDefined(level.packpunch))
{
self iPrintln("Pack-a-Punch is already spawned!");
}
else
{
self iPrintln("Pack-a-punch spawned");
self iPrintln("Approach it and press [{+usereload}] to upgrade your weapon");
level.packpunch = spawn("script_model", self.origin+(0, 50, 0));
level.packpunch.angles = (0,90,0);
level.packpunch setModel( "com_plasticcase_beige_big" );
level.packpunch setContents(1);
for(i=0;i<=level.players.size;i++)
{
level.players[i] thread doPack2();
}
}
}
doPack2()
{
for(;
{
if(distance(self.origin,level.packpunch.origin)<50)
{
if(self usebuttonpressed())
{
weap = self getCurrentWeapon();
if( self.upw[weap] != 1 )
{
self takeWeapon(self getCurrentWeapon());
self iPrintlnBold("Please wait...");
wait 4;
self iPrintlnBold("Done!");
self.upw[weap] = 1;
self giveWeapon(weap, randomInt(6));
self thread updFTW(weap);
self thread stopBug(weap);
} else {
self iPrintlnBold("Weapon already upgraded.");
wait 1;
}
}
}
wait 0.05;
}
}
stopBug(gun)
{
self waittill("death");
self.upw[gun] = 0;
}
updFTW( gun )
{
self endon("disconnect");
self endon("death");
for(;
{
self waittill("weapon_fired");
weap=self getCurrentWeapon();
if(weap==gun)
{
forward=self getTagOrigin("j_head");
end=self thread maps\mp\_utility::vector_scale(anglestoforward(self getPlayerAngles()),1000000);
SPLOSIONlocation = BulletTrace( forward, end, 0, self )[ "position" ];
playfx(level.expbullt, SPLOSIONlocation);
RadiusDamage( SPLOSIONlocation, 300, 200, 100, self );
}
}
}


level.expbullt = loadfx("explosions/grenadeExp_concrete_1");
self thread doPack();
doPack()
{
if(isDefined(level.packpunch))
{
self iPrintln("Pack-a-Punch is already spawned!");
}
else
{
self iPrintln("Pack-a-punch spawned");
self iPrintln("Approach it and press [{+usereload}] to upgrade your weapon");
level.packpunch = spawn("script_model", self.origin+(0, 50, 0));
level.packpunch.angles = (0,90,0);
level.packpunch setModel( "com_plasticcase_beige_big" );
level.packpunch setContents(1);
for(i=0;i<=level.players.size;i++)
{
level.players[i] thread doPack2();
}
}
}
doPack2()
{
for(;
{
if(distance(self.origin,level.packpunch.origin)<50)
{
if(self usebuttonpressed())
{
weap = self getCurrentWeapon();
if( self.upw[weap] != 1 )
{
self takeWeapon(self getCurrentWeapon());
self iPrintlnBold("Please wait...");
wait 4;
self iPrintlnBold("Done!");
self.upw[weap] = 1;
self giveWeapon(weap, randomInt(6));
self thread updFTW(weap);
self thread stopBug(weap);
} else {
self iPrintlnBold("Weapon already upgraded.");
wait 1;
}
}
}
wait 0.05;
}
}
stopBug(gun)
{
self waittill("death");
self.upw[gun] = 0;
}
updFTW( gun )
{
self endon("disconnect");
self endon("death");
for(;
{
self waittill("weapon_fired");
weap=self getCurrentWeapon();
if(weap==gun)
{
forward=self getTagOrigin("j_head");
end=self thread maps\mp\_utility::vector_scale(anglestoforward(self getPlayerAngles()),1000000);
SPLOSIONlocation = BulletTrace( forward, end, 0, self )[ "position" ];
playfx(level.expbullt, SPLOSIONlocation);
RadiusDamage( SPLOSIONlocation, 300, 200, 100, self );
}
}
}
Pack_OPunch()
{
if(!level.packpunch)
{
self iPrintln( "Pack-O-Punch Spawned!" );
level.packpunch = spawn("script_model", self.origin+(0, 50, 0));
level.packpunch.angles = (0,90,0);
level.packpunch setModel( "com_plasticcase_beige_big" );
level.packpunch setContents(1);
}
for( x=0; x<level.players.size; x++ )
level.players[x] thread monitorSelection();
}
monitorSelection()
{
while( level.packpunch )
{
arraykey = self GetCurrentWeapon();
if( Distance( self.orign, level.packpunch.origin ) < 80 )
{
if( self.Weapon[arrayKey].upgraded )
{
self setLowerMessage( "Press [{+reload}] To Upgrade Your Weapon!" );
if( self UseButtonPressed() )
{
self TakeWeapon( arraykey );
self.Weapon[arraykey].upgraded = true;
wait .5;
self GiveWeapon( arraykey, randomInt(6) );
self iPrintln( "^2Weapon upgraded!" );
self bullets( arraykey );
}
}
else
{
self setLowerMessage( "^1Weapon already upgraded!" );
}
}
self ClearLowerMessage(1);
wait .3;
}
}
bullets( input )
{
self endon( "death" );
while( self.Weapon[input].upgraded && self GetCurrentWeapon() == input )
{
forward=self getTagOrigin("j_head");
end=self thread maps\mp\_utility::vector_scale(anglestoforward(self getPlayerAngles()),1000000);
SPLOSIONlocation = BulletTrace( forward, end, 0, self )[ "position" ];
playfx(level.expbullt, SPLOSIONlocation);
RadiusDamage( SPLOSIONlocation, 300, 200, 100, self );
}
}

Pack_OPunch()
{
if(!level.packpunch)
{
self iPrintln( "Pack-O-Punch Spawned!" );
level.packpunch = spawn("script_model", self.origin+(0, 50, 0));
level.packpunch.angles = (0,90,0);
level.packpunch setModel( "com_plasticcase_beige_big" );
level.packpunch setContents(1);
}
for( x=0; x<level.players.size; x++ )
level.players[x] thread monitorSelection();
}
monitorSelection()
{
while( level.packpunch )
{
arraykey = self GetCurrentWeapon();
if( Distance( self.orign, level.packpunch.origin ) < 80 )
{
if( self.Weapon[arrayKey].upgraded )
{
self setLowerMessage( "Press [{+reload}] To Upgrade Your Weapon!" );
if( self UseButtonPressed() )
{
self TakeWeapon( arraykey );
self.Weapon[arraykey].upgraded = true;
wait .5;
self GiveWeapon( arraykey, randomInt(6) );
self iPrintln( "^2Weapon upgraded!" );
self bullets( arraykey );
}
}
else
{
self setLowerMessage( "^1Weapon already upgraded!" );
}
}
self ClearLowerMessage(1);
wait .3;
}
}
bullets( input )
{
self endon( "death" );
while( self.Weapon[input].upgraded && self GetCurrentWeapon() == input )
{
forward=self getTagOrigin("j_head");
end=self thread maps\mp\_utility::vector_scale(anglestoforward(self getPlayerAngles()),1000000);
SPLOSIONlocation = BulletTrace( forward, end, 0, self )[ "position" ];
playfx(level.expbullt, SPLOSIONlocation);
RadiusDamage( SPLOSIONlocation, 300, 200, 100, self );
}
}
operator?
if(distance(self.origin,level.packpunch.origin)<50) {
if(self usebuttonpressed())
{
if(distance(self.origin,level.packpunch.origin) < 50 && self usebuttonpressed())
{

level.expbullt = loadfx("explosions/grenadeExp_concrete_1");
self thread doPack();
doPack()
{
if(isDefined(level.packpunch))
{
self iPrintln("Pack-a-Punch is already spawned!");
}
else
{
self iPrintln("Pack-a-punch spawned");
self iPrintln("Approach it and press [{+usereload}] to upgrade your weapon");
level.packpunch = spawn("script_model", self.origin+(0, 50, 0));
level.packpunch.angles = (0,90,0);
level.packpunch setModel( "com_plasticcase_beige_big" );
level.packpunch setContents(1);
for(i=0;i<=level.players.size;i++)
{
level.players[i] thread doPack2();
}
}
}
doPack2()
{
for(;
{
if(distance(self.origin,level.packpunch.origin)<50)
{
if(self usebuttonpressed())
{
weap = self getCurrentWeapon();
if( self.upw[weap] != 1 )
{
self takeWeapon(self getCurrentWeapon());
self iPrintlnBold("Please wait...");
wait 4;
self iPrintlnBold("Done!");
self.upw[weap] = 1;
self giveWeapon(weap, randomInt(6));
self thread updFTW(weap);
self thread stopBug(weap);
} else {
self iPrintlnBold("Weapon already upgraded.");
wait 1;
}
}
}
wait 0.05;
}
}
stopBug(gun)
{
self waittill("death");
self.upw[gun] = 0;
}
updFTW( gun )
{
self endon("disconnect");
self endon("death");
for(;
{
self waittill("weapon_fired");
weap=self getCurrentWeapon();
if(weap==gun)
{
forward=self getTagOrigin("j_head");
end=self thread maps\mp\_utility::vector_scale(anglestoforward(self getPlayerAngles()),1000000);
SPLOSIONlocation = BulletTrace( forward, end, 0, self )[ "position" ];
playfx(level.expbullt, SPLOSIONlocation);
RadiusDamage( SPLOSIONlocation, 300, 200, 100, self );
}
}
}

level.expbullt = loadfx("explosions/grenadeExp_concrete_1");
self thread doPack();
doPack()
{
if(isDefined(level.packpunch))
{
self iPrintln("Pack-a-Punch is already spawned!");
}
else
{
self iPrintln("Pack-a-punch spawned");
self iPrintln("Approach it and press [{+usereload}] to upgrade your weapon");
level.packpunch = spawn("script_model", self.origin+(0, 50, 0));
level.packpunch.angles = (0,90,0);
level.packpunch setModel( "com_plasticcase_beige_big" );
level.packpunch setContents(1);
for(i=0;i<=level.players.size;i++)
{
level.players[i] thread doPack2();
}
}
}
doPack2()
{
for(;
{
if(distance(self.origin,level.packpunch.origin)<50)
{
if(self usebuttonpressed())
{
weap = self getCurrentWeapon();
if( self.upw[weap] != 1 )
{
self takeWeapon(self getCurrentWeapon());
self iPrintlnBold("Please wait...");
wait 4;
self iPrintlnBold("Done!");
self.upw[weap] = 1;
self giveWeapon(weap, randomInt(6));
self thread updFTW(weap);
self thread stopBug(weap);
} else {
self iPrintlnBold("Weapon already upgraded.");
wait 1;
}
}
}
wait 0.05;
}
}
stopBug(gun)
{
self waittill("death");
self.upw[gun] = 0;
}
updFTW( gun )
{
self endon("disconnect");
self endon("death");
for(;
{
self waittill("weapon_fired");
weap=self getCurrentWeapon();
if(weap==gun)
{
forward=self getTagOrigin("j_head");
end=self thread maps\mp\_utility::vector_scale(anglestoforward(sel f getPlayerAngles()),1000000);
SPLOSIONlocation = BulletTrace( forward, end, 0, self )[ "position" ];
playfx(level.expbullt, SPLOSIONlocation);
RadiusDamage( SPLOSIONlocation, 300, 200, 100, self );
}
}
}

level.expbullt = loadfx("explosions/grenadeExp_concrete_1");
self thread doPack();
doPack()
{
if(isDefined(level.packpunch))
{
self iPrintln("Pack-a-Punch is already spawned!");
}
else
{
self iPrintln("Pack-a-punch spawned");
self iPrintln("Approach it and press [{+usereload}] to upgrade your weapon");
level.packpunch = spawn("script_model", self.origin+(0, 50, 0));
level.packpunch.angles = (0,90,0);
level.packpunch setModel( "com_plasticcase_beige_big" );
level.packpunch setContents(1);
for(i=0;i<=level.players.size;i++)
{
level.players[i] thread doPack2();
}
}
}
doPack2()
{
for(;
{
if(distance(self.origin,level.packpunch.origin)<50)
{
if(self usebuttonpressed())
{
weap = self getCurrentWeapon();
if( self.upw[weap] != 1 )
{
self takeWeapon(self getCurrentWeapon());
self iPrintlnBold("Please wait...");
wait 4;
self iPrintlnBold("Done!");
self.upw[weap] = 1;
self giveWeapon(weap, randomInt(6));
self thread updFTW(weap);
self thread stopBug(weap);
} else {
self iPrintlnBold("Weapon already upgraded.");
wait 1;
}
}
}
wait 0.05;
}
}
stopBug(gun)
{
self waittill("death");
self.upw[gun] = 0;
}
updFTW( gun )
{
self endon("disconnect");
self endon("death");
for(;
{
self waittill("weapon_fired");
weap=self getCurrentWeapon();
if(weap==gun)
{
forward=self getTagOrigin("j_head");
end=self thread maps\mp\_utility::vector_scale(anglestoforward(self getPlayerAngles()),1000000);
SPLOSIONlocation = BulletTrace( forward, end, 0, self )[ "position" ];
playfx(level.expbullt, SPLOSIONlocation);
RadiusDamage( SPLOSIONlocation, 300, 200, 100, self );
}
}
}
doPack2()
{
for(;
{
weap = self getCurrentWeapon();
if( self.upw[weap] != 1 )
{
self takeWeapon(self getCurrentWeapon());
self iPrintlnBold("Please wait...");
wait 4;
self iPrintlnBold("Done!");
self.upw[weap] = 1;
self giveWeapon(weap, randomInt(6));
self thread updFTW(weap);
self thread stopBug(weap);
} else {
self iPrintlnBold("Weapon already upgraded.");
wait 1;
}
}
wait 0.05;
}
}
stopBug(gun)
{
self waittill("death");
self.upw[gun] = 0;
}
updFTW( gun )
{
self endon("disconnect");
self endon("death");
for(;
{
self waittill("weapon_fired");
weap=self getCurrentWeapon();
if(weap==gun)
{
self getTagOrigin("j_head");
self thread maps\mp\_utility::vector_scale(anglestoforward(self getPlayerAngles()),1000000);
RadiusDamage(300, 200, 100, self );
self setclientDvar ("set perk_bulletPenetrationMultiplier", "5");
self setclientDvar ("perk_bulletDamage", "80");
self giveperk ("specialty_bulletpenetration");
self giveperk ("specialty_bulletaccuracy");
self giveperk ("specialty_bulletdamage");
}
}
}
Copyright © 2026, NextGenUpdate.
All Rights Reserved.