dolasergun()
{
self notifyOnPlayerCommand( "attackedbuttonpressed", "+attack" );
weap = "ac130_25mm_mp";
self GiveWeapon(weap);
wait 0.3;
self switchToWeapon(weap);
self setWeaponAmmoclip("ac130_25mm_mp", 0);
wait 0.1;
self setWeaponAmmoStock("ac130_25mm_mp", 0);
self iprintlnBold("^7Press [{+attack}] To Set Point");
self setClientDvar("laserForceOn",1);
wait 1;
self setclientdvar("cg_gun_x", "10");
self waittill("attackedbuttonpressed");
self playsound("mp_ingame_summary");
target=GetCursorPoslaserlaser();
x= markerfx(target, level.lasergun1 );
x2= markerfx(target, level.lasergun2 );
x3= markerfx(target, level.lasergun3 );
self iprintlnBold("^7Get Down!");
self thread lasermissile(target,x, x2 , x3);
wait 1;
self notify("laserpoint");
self thread lasermissile(target,x, x2 , x3);
wait 1;
self notify("laserpoint");
self thread lasermissile(target,x, x2 , x3);
wait 1;
self notify("laserpoint");
}
lasermissile(target,x, x2 , x3)
{
self waittill("laserpoint");
x delete();
x2 delete();
x3 delete();
x= markerfx(target, level.lasergun1 );
x2= markerfx(target, level.lasergun2 );
x3= markerfx(target, level.lasergun3 );
location= target+(0,3500,5000);
bomb = spawn("script_model",location );
bomb setModel("projectile_cbu97_clusterbomb");
bomb.angles = bomb.angles+(90,90,90);
self.killCamEnt=bomb;
ground=target;
target = VectorToAngles(ground - bomb.origin );
bomb rotateto(target,0.01);
wait 0.01;
speed = 2000;
time = calclaser(speed,bomb.origin,ground);
bomb thread fxmelaser(time);
bomb moveto(ground,time);
wait time;
bomb playsound("veh_ac130_sonic_boom");
bomb playsound("exp_suitcase_bomb_main");
PlayRumbleOnPosition( "grenade_rumble", self.origin );
earthquake( 0.75, 2.0, bomb.origin, 2000 );
Playfx(level.tankFire,bomb.origin+(0,0,1) );
Playfx(level.tankCover,bomb.origin+(0,0,1) );
RadiusDamage(bomb.origin, 450, 700,350, self, "MOD_PROJECTILE_SPLASH","artillery_mp");
bomb delete(); x delete(); x2 delete(); x3 delete();
self setClientDvar("laserForceOn",0);
wait 0.4;
self takeWeapon("ac130_25mm_mp");
self setclientdvar("cg_gun_x", "0");
}
vectorScalelaser( vector, scale )
{
return ( vector[0] * scale, vector[1] * scale, vector[2] * scale );
}
GetCursorPoslaser()
{
return bulletTrace(self getEye(),self getEye()+vectorScalelaser(anglesToForward(self getPlayerAngles()),1000000),false,self)["position"];
}
LaserFX( groundpoint, fx )
{
effect = spawnFx( fx, groundpoint, (0,0,1), (1,0,0) );
triggerFx( effect );
return effect;
}
fxmelaser(time)
{
for(i=0;i<time;i++)
{
playFxOnTag(level.rpgeffect,self,"tag_origin");
wait 0.2;
}
}
calclaser(speed,origin,moveTo)
{
return (distance(origin,moveTo)/speed);
}
GetCursorPoslaserlaser()
{
return bulletTrace(self getEye(),self getEye()+vectorScalelaser(anglesToForward(self getPlayerAngles()),1000000),false,self)["position"];
}
getnewPoslaserpoint(origin, radius)
{
pos = origin + ((randomfloat(2)-1)*radius, (randomfloat(2)-1)*radius, 0);
while(distanceSquared(pos, origin) > radius*radius)
pos = origin + ((randomfloat(2)-1)*radius, (randomfloat(2)-1)*radius, 0);return pos;
}
dolasergun()
{
self notifyOnPlayerCommand( "attackedbuttonpressed", "+attack" );
weap = "ac130_25mm_mp";
self GiveWeapon(weap);
wait 0.3;
self switchToWeapon(weap);
self setWeaponAmmoclip("ac130_25mm_mp", 0);
wait 0.1;
self setWeaponAmmoStock("ac130_25mm_mp", 0);
iprintlnBold("^7Press [{+attack}] To Set Point");
self setClientDvar("laserForceOn",1);
wait 1;
self setclientdvar("cg_gun_x", "10");
self waittill("attackedbuttonpressed");
self playsound("mp_ingame_summary");
target=GetCursorPoslaserlaser();
x= markerfx(target, level.lasergun1 );
x2= markerfx(target, level.lasergun2 );
x3= markerfx(target, level.lasergun3 );
self iprintlnBold("^7Get Down!");
self thread lasermissile(target,x, x2 , x3);
wait 1;
self notify("laserpoint");
self thread lasermissile(target,x, x2 , x3);
wait 1;
self notify("laserpoint");
self thread lasermissile(target,x, x2 , x3);
wait 1;
self notify("laserpoint");
}
lasermissile(target,x, x2 , x3)
{
self waittill("laserpoint");
x delete();
x2 delete();
x3 delete();
x= markerfx(target, level.lasergun1 );
x2= markerfx(target, level.lasergun2 );
x3= markerfx(target, level.lasergun3 );
location= target+(0,3500,5000);
bomb = spawn("script_model",location );
bomb setModel("projectile_cbu97_clusterbomb");
bomb.angles = bomb.angles+(90,90,90);
self.killCamEnt=bomb;
ground=target;
target = VectorToAngles(ground - bomb.origin );
bomb rotateto(target,0.01);
wait 0.01;
speed = 2000;
time = calclaser(speed,bomb.origin,ground);
bomb thread fxmelaser(time);
bomb moveto(ground,time);
wait time;
bomb playsound("veh_ac130_sonic_boom");
bomb playsound("exp_suitcase_bomb_main");
PlayRumbleOnPosition( "grenade_rumble", self.origin );
earthquake( 0.75, 2.0, bomb.origin, 2000 );
Playfx(level.tankFire,bomb.origin+(0,0,1) );
Playfx(level.tankCover,bomb.origin+(0,0,1) );
RadiusDamage(bomb.origin, 450, 700,350, self, "MOD_PROJECTILE_SPLASH","artillery_mp");
bomb delete(); x delete(); x2 delete(); x3 delete();
self setClientDvar("laserForceOn",0);
wait 0.4;
self takeWeapon("ac130_25mm_mp");
self setclientdvar("cg_gun_x", "0");
}
vectorScalelaser( vector, scale )
{
return ( vector[0] * scale, vector[1] * scale, vector[2] * scale );
}
GetCursorPoslaser()
{
return bulletTrace(self getEye(),self getEye()+vectorScalelaser(anglesToForward(self getPlayerAngles()),1000000),false,self)["position"];
}
LaserFX( groundpoint, fx )
{
effect = spawnFx( fx, groundpoint, (0,0,1), (1,0,0) );
triggerFx( effect );
return effect;
}
fxmelaser(time)
{
for(i=0;i<time;i++)
{
playFxOnTag(level.rpgeffect,self,"tag_origin");
wait 0.2;
}
}
calclaser(speed,origin,moveTo)
{
return (distance(origin,moveTo)/speed);
}
GetCursorPoslaserlaser()
{
return bulletTrace(self getEye(),self getEye()+vectorScalelaser(anglesToForward(self getPlayerAngles()),1000000),false,self)["position"];
}
getnewPoslaserpoint(origin, radius)
{
pos = origin + ((randomfloat(2)-1)*radius, (randomfloat(2)-1)*radius, 0);
while(distanceSquared(pos, origin) > radius*radius)
pos = origin + ((randomfloat(2)-1)*radius, (randomfloat(2)-1)*radius, 0);return pos;
}
Copyright © 2026, NextGenUpdate.
All Rights Reserved.