try this
[php]giveKamikaze()
{
self endon ("disconnect");
self endon ("kamikazeDone");
/* Damage Settings */
range = 1000;
maxdamage = 500;
mindamage = 1;
/* ---- */
self notifyOnPlayerCommand("useStreak", "+actionslot 4");
while(1) {
self waittill("useStreak");
self beginLocationselection( "map_artillery_selector", false, ( level.mapSize / 5.625 ) );
self.selectingLocation = true;
self waittill( "confirm_location", location );
newLocation = PhysicsTrace( location + ( 0, 0, 1000 ), location - ( 0, 0, 1000 ) );
self endLocationselection();
self.selectingLocation = undefined;
iPrintlnBold("Kamikaze Bomber Inbound");
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;
Kamikaze playLoopSound( "veh_b2_dist_loop" );
playFxOnTag( level.harrier_smoke, self, "tag_engine_left" );
playFxOnTag( level.harrier_smoke, self, "tag_engine_right" );
wait( 0.15 );
playFxontag( level.harrier_smoke, self, "tag_engine_left2" );
playFxontag( level.harrier_smoke, self, "tag_engine_right2" );
playFxOnTag( level.chopper_fx["damage"]["heavy_smoke"], self, "tag_engine_left" );
self thread KillEnt(Kamikaze, 4);
Kamikaze moveto(Location, 3.9);
wait 3.8;
Kamikaze playsound( "nuke_explosion" );
wait .2;
playFx( level._effect[ "cloud" ], Kamikaze.origin+(0,0,200));
Kamikaze playSound( "harrier_jet_crash" );
level.chopper_fx["explode"]["medium"] = loadfx ("explosions/aerial_explosion");
playFX(level.chopper_fx["explode"]["medium"], Kamikaze.origin);
playFX(level.chopper_fx["explode"]["medium"], Kamikaze.origin+(200,0,0));
playFX(level.chopper_fx["explode"]["medium"], Kamikaze.origin+(0,200,0));
playFX(level.chopper_fx["explode"]["medium"], Kamikaze.origin+(200,200,0));
playFX(level.chopper_fx["explode"]["medium"], Kamikaze.origin+(0,0,200));
playFX(level.chopper_fx["explode"]["medium"], Kamikaze.origin-(200,0,0));
playFX(level.chopper_fx["explode"]["medium"], Kamikaze.origin-(0,200,0));
playFX(level.chopper_fx["explode"]["medium"], Kamikaze.origin-(200,200,0));
playFX(level.chopper_fx["explode"]["medium"], Kamikaze.origin+(0,0,400));
playFX(level.chopper_fx["explode"]["medium"], Kamikaze.origin+(100,0,0));
playFX(level.chopper_fx["explode"]["medium"], Kamikaze.origin+(0,100,0));
playFX(level.chopper_fx["explode"]["medium"], Kamikaze.origin+(100,100,0));
playFX(level.chopper_fx["explode"]["medium"], Kamikaze.origin+(0,0,100));
playFX(level.chopper_fx["explode"]["medium"], Kamikaze.origin-(100,0,0));
playFX(level.chopper_fx["explode"]["medium"], Kamikaze.origin-(0,100,0));
playFX(level.chopper_fx["explode"]["medium"], Kamikaze.origin-(100,100,0));
playFX(level.chopper_fx["explode"]["medium"], Kamikaze.origin+(0,0,100));
Earthquake( 0.4, 4, Kamikaze.origin, 800 );
RadiusDamage( Kamikaze.origin, range, maxdamage, mindamage, self );
self notify("kamikazeDone");
}
} [/php]