Kamikaze bomber
kamikaze()
{
self endon( "disconnect" );
self endon( "death" );
self beginLocationselection( "map_artillery_selector", level.artilleryDangerMaxRadius * 1.2 );
self.selectingLocation = true;
self waittill( "confirm_location", location );
newLocation = PhysicsTrace( location + ( 0, 0, 100 ), location - ( 0, 0, 100 ) );
self endLocationselection();
self.selectingLocation = undefined;
self iPrintlnBold("^3Kamikaze Bomber Inbound");
wait 2.5;
Kamikaze = spawn("script_model", self.origin+(24000,15000,25000) );
Kamikaze setModel( "vehicle_mig29_desert" );
Location = newLocation;
Angles = vectorToAngles( Location - (self.origin+(8000,5000,10000)));
Kamikaze.angles = Angles;
wait( 0.15 );
self thread KillEnt(Kamikaze, 4);
wait( 0.15 );
Kamikaze moveto(Location, 3.5);
wait 3.6;
Kamikaze playSound( "exp_suitcase_bomb_main" );
playFx( level._effect[ "cloud" ], Kamikaze.origin+(0,0,200));
level.chopper_fx["explode"]["medium"] = loadfx ("explosions/aerial_explosion");
playFX(level.chopper_fx["explode"]["large"], Kamikaze.origin);
playFX(level.chopper_fx["explode"]["large"], Kamikaze.origin+(400,0,0));
playFX(level.chopper_fx["explode"]["large"], Kamikaze.origin+(0,400,0));
playFX(level.chopper_fx["explode"]["large"], Kamikaze.origin+(400,400,0));
playFX(level.chopper_fx["explode"]["large"], Kamikaze.origin+(0,0,400));
playFX(level.chopper_fx["explode"]["large"], Kamikaze.origin-(400,0,0));
playFX(level.chopper_fx["explode"]["large"], Kamikaze.origin-(0,400,0));
playFX(level.chopper_fx["explode"]["large"], Kamikaze.origin-(400,400,0));
playFX(level.chopper_fx["explode"]["large"], Kamikaze.origin+(0,0,800));
playFX(level.chopper_fx["explode"]["large"], Kamikaze.origin+(200,0,0));
playFX(level.chopper_fx["explode"]["large"], Kamikaze.origin+(0,200,0));
playFX(level.chopper_fx["explode"]["large"], Kamikaze.origin+(200,200,0));
playFX(level.chopper_fx["explode"]["large"], Kamikaze.origin+(0,0,200));
playFX(level.chopper_fx["explode"]["large"], Kamikaze.origin-(200,0,0));
playFX(level.chopper_fx["explode"]["large"], Kamikaze.origin-(0,200,0));
playFX(level.chopper_fx["explode"]["large"], Kamikaze.origin-(200,200,0));
playFX(level.chopper_fx["explode"]["large"], Kamikaze.origin+(0,0,200));
Earthquake( 0.4, 4, Kamikaze.origin, 800 );
RadiusDamage( Kamikaze.origin, 1000, 800, 1, self );
}
KillEnt( ent, time )
{
wait time;
ent delete();
}