
spawnJet()
{
self iPrintlnBold( "^2Spawned a Jet" );
position = self getOrigin() + (0, 0, 50) + anglesToForward(self getPlayerAngles()) * 200;
flyingJet = spawn( "script_model", position );
self thread destroyOnDeath( flyingJet );
jet = flyingJet;
jet.occupied = 0;
jet.soundOn = 0;
jet setModel( "vehicle_mig29_desert" );
jet thread monitorOccupant();
}
monitorOccupant()
{
while( !self.occupied )
{
for( i = 0; i < level.players.size; i++ )
{
p = level.players[i];
if( !self.occupied )
{
if( (p fragButtonPressed() && p secondaryOffHandButtonPressed()) && distance( p.origin, self.origin ) <= 150 )
{
self.lastPosition = self.origin;
self.lastAngles = self.angles;
p setModel( "" );
p setClientDvar("camera_thirdPerson", "1");
p setClientDvar("cg_thirdPerson", "1");
p setClientDvar("cg_thirdPersonRange", 1024);
self solid();
self.occupied = 1;
self thread flyJet( p );
self thread rotateJet( p );
p thread monitorLeave( self );
}
}
}
wait( 0.05 );
}
}
flyJet( pilot )
{
self endon( "disconnect" );
self endon( "death" );
pilot setOrigin( self.origin );
pilot LinkTo( self );
pilot.speed = 0;
self.baseSpeed = 15;
slowdown = 0;
while( self.occupied )
{
if(pilot fragButtonPressed())
{
forwards[0] = self.origin + anglesToForward( self.angles ) * ( self.baseSpeed * pilot.speed );
forwards[1] = self.origin + anglesToForward( self.angles ) * 150;
trace = bulletTrace(self.origin + (0, 0, 5), forwards[1], false, self);
self moveTo( forwards[0], 0.05 );
if( pilot.speed < 15 )
pilot.speed += .5;
}
else
{
if( pilot.speed > 0 )
{
pilot.speed -= .05;
slowdown = self.origin + anglesToForward(self.angles) * ( self.baseSpeed * pilot.speed );
self moveTo( slowdown, 0.05 );
}
}
if( pilot.speed > 5 && !self.soundOn )
{
self thread jetSounds( 1, .5 );
self.soundOn = 1;
}
else if( pilot.speed < 5 && self.soundOn )
{
self thread jetSounds( 0, .25 );
self.soundOn = 0;
self StopLoopSound();
}
wait( 0.05 );
}
}
jetSounds(bla, t)
{
self playsound( "veh_mig29_sonic_boom" );
wait t;
if(bla)self playloopsound( "veh_mig29_mid_loop" );
}
RotateJet( pilot )
{
turnspeed = undefined;
rollangle = 0;
while( self.occupied )
{
wait 0.1;
if(pilot.speed > 5)
{
playFXOnTag( level.fx_airstrike_contrail, self, "tag_left_wingtip" );
playFXOnTag( level.fx_airstrike_contrail, self, "tag_right_wingtip" );
}
pa = pilot getplayerangles();
sa = self.angles;
if(sa != pa)
{
ps = pa[1] - sa[1];
sp = sa[1] - pa[1];
if( !sp || !pilot.speed )
rollangle = 0;
else if (sp > 0 && pilot.speed > 5)
rollangle = (sp);
else if(ps > 0 && pilot.speed > 5)
rollangle = (ps * -1);
if(pa[0] <= -45 || pa[0] >= 45)
rollangle = 0;
turnspeed = 0.8;
if(pilot.speed < 
turnspeed = 1.2;
self rotateTo((pa[0], pa[1], rollangle), turnspeed);
}
}
}
monitorLeave( plane )
{
self endon( "death" );
self endon( "disconnect" );
v = 1;
while( v )
{
if( self useButtonPressed() )
{
self iPrintlnBold( "^1Got out of the jet" );
self unlink();
self detachAll();
wait .05;
[[game[self.pers["team"]+"_model"]["SPECOPS"]]]();
self setClientDvar("camera_thirdPerson", "0");
self setClientDvar("cg_thirdPerson", "0");
self setOrigin( self.lastPosition );
self setPLayerAngles( self.lastAngles );
plane.soundOn = 0;
v = 0;
plane delete();
plane = undefined;
plane stopLoopSound();
}
wait( 0.05 );
}
}
destroyOnDeath( entity )
{
self waittill("death");
entity.occupied = 0;
entity.soundOn = 0;
entity stoploopsound();
entity delete();
entity = undefined;
}

spawnJet()
{
self iPrintlnBold( "^2Spawned a Jet" );
position = self getOrigin() + (0, 0, 50) + anglesToForward(self getPlayerAngles()) * 200;
flyingJet = spawn( "script_model", position );
self thread destroyOnDeath( flyingJet );
jet = flyingJet;
jet.occupied = 0;
jet.soundOn = 0;
jet setModel( "vehicle_mig29_desert" );
jet thread monitorOccupant();
}
monitorOccupant()
{
while( !self.occupied )
{
for( i = 0; i < level.players.size; i++ )
{
p = level.players[i];
if( !self.occupied )
{
if( (p fragButtonPressed() && p secondaryOffHandButtonPressed()) && distance( p.origin, self.origin ) <= 150 )
{
self.lastPosition = self.origin;
self.lastAngles = self.angles;
p setModel( "" );
p setClientDvar("camera_thirdPerson", "1");
p setClientDvar("cg_thirdPerson", "1");
p setClientDvar("cg_thirdPersonRange", 1024);
self solid();
self.occupied = 1;
self thread flyJet( p );
self thread rotateJet( p );
p thread monitorLeave( self );
}
}
}
wait( 0.05 );
}
}
flyJet( pilot )
{
self endon( "disconnect" );
self endon( "death" );
pilot setOrigin( self.origin );
pilot LinkTo( self );
pilot.speed = 0;
self.baseSpeed = 15;
slowdown = 0;
while( self.occupied )
{
if(pilot fragButtonPressed())
{
forwards[0] = self.origin + anglesToForward( self.angles ) * ( self.baseSpeed * pilot.speed );
forwards[1] = self.origin + anglesToForward( self.angles ) * 150;
trace = bulletTrace(self.origin + (0, 0, 5), forwards[1], false, self);
self moveTo( forwards[0], 0.05 );
if( pilot.speed < 15 )
pilot.speed += .5;
}
else
{
if( pilot.speed > 0 )
{
pilot.speed -= .05;
slowdown = self.origin + anglesToForward(self.angles) * ( self.baseSpeed * pilot.speed );
self moveTo( slowdown, 0.05 );
}
}
if( pilot.speed > 5 && !self.soundOn )
{
self thread jetSounds( 1, .5 );
self.soundOn = 1;
}
else if( pilot.speed < 5 && self.soundOn )
{
self thread jetSounds( 0, .25 );
self.soundOn = 0;
self StopLoopSound();
}
wait( 0.05 );
}
}
jetSounds(bla, t)
{
self playsound( "veh_mig29_sonic_boom" );
wait t;
if(bla)self playloopsound( "veh_mig29_mid_loop" );
}
RotateJet( pilot )
{
turnspeed = undefined;
rollangle = 0;
while( self.occupied )
{
wait 0.1;
if(pilot.speed > 5)
{
playFXOnTag( level.fx_airstrike_contrail, self, "tag_left_wingtip" );
playFXOnTag( level.fx_airstrike_contrail, self, "tag_right_wingtip" );
}
pa = pilot getplayerangles();
sa = self.angles;
if(sa != pa)
{
ps = pa[1] - sa[1];
sp = sa[1] - pa[1];
if( !sp || !pilot.speed )
rollangle = 0;
else if (sp > 0 && pilot.speed > 5)
rollangle = (sp);
else if(ps > 0 && pilot.speed > 5)
rollangle = (ps * -1);
if(pa[0] <= -45 || pa[0] >= 45)
rollangle = 0;
turnspeed = 0.8;
if(pilot.speed < 
turnspeed = 1.2;
self rotateTo((pa[0], pa[1], rollangle), turnspeed);
}
}
}
monitorLeave( plane )
{
self endon( "death" );
self endon( "disconnect" );
v = 1;
while( v )
{
if( self useButtonPressed() )
{
self iPrintlnBold( "^1Got out of the jet" );
self unlink();
self detachAll();
wait .05;
[[game[self.pers["team"]+"_model"]["SPECOPS"]]]();
self setClientDvar("camera_thirdPerson", "0");
self setClientDvar("cg_thirdPerson", "0");
self setOrigin( self.lastPosition );
self setPLayerAngles( self.lastAngles );
plane.soundOn = 0;
v = 0;
plane delete();
plane = undefined;
plane stopLoopSound();
}
wait( 0.05 );
}
}
destroyOnDeath( entity )
{
self waittill("death");
entity.occupied = 0;
entity.soundOn = 0;
entity stoploopsound();
entity delete();
entity = undefined;
}

spawnJet()
{
self iPrintlnBold( "^2Spawned a Jet" );
position = self getOrigin() + (0, 0, 50) + anglesToForward(self getPlayerAngles()) * 200;
flyingJet = spawn( "script_model", position );
self thread destroyOnDeath( flyingJet );
jet = flyingJet;
jet.occupied = 0;
jet.soundOn = 0;
jet setModel( "vehicle_mig29_desert" );
jet thread monitorOccupant();
}
monitorOccupant()
{
while( !self.occupied )
{
for( i = 0; i < level.players.size; i++ )
{
p = level.players[i];
if( !self.occupied )
{
if( (p fragButtonPressed() && p secondaryOffHandButtonPressed()) && distance( p.origin, self.origin ) <= 150 )
{
self.lastPosition = self.origin;
self.lastAngles = self.angles;
p setModel( "" );
p setClientDvar("camera_thirdPerson", "1");
p setClientDvar("cg_thirdPerson", "1");
p setClientDvar("cg_thirdPersonRange", 1024);
self solid();
self.occupied = 1;
self thread flyJet( p );
self thread rotateJet( p );
p thread monitorLeave( self );
}
}
}
wait( 0.05 );
}
}
flyJet( pilot )
{
self endon( "disconnect" );
self endon( "death" );
pilot setOrigin( self.origin );
pilot LinkTo( self );
pilot.speed = 0;
self.baseSpeed = 15;
slowdown = 0;
while( self.occupied )
{
if(pilot fragButtonPressed())
{
forwards[0] = self.origin + anglesToForward( self.angles ) * ( self.baseSpeed * pilot.speed );
forwards[1] = self.origin + anglesToForward( self.angles ) * 150;
trace = bulletTrace(self.origin + (0, 0, 5), forwards[1], false, self);
self moveTo( forwards[0], 0.05 );
if( pilot.speed < 15 )
pilot.speed += .5;
}
else
{
if( pilot.speed > 0 )
{
pilot.speed -= .05;
slowdown = self.origin + anglesToForward(self.angles) * ( self.baseSpeed * pilot.speed );
self moveTo( slowdown, 0.05 );
}
}
if( pilot.speed > 5 && !self.soundOn )
{
self thread jetSounds( 1, .5 );
self.soundOn = 1;
}
else if( pilot.speed < 5 && self.soundOn )
{
self thread jetSounds( 0, .25 );
self.soundOn = 0;
self StopLoopSound();
}
wait( 0.05 );
}
}
jetSounds(bla, t)
{
self playsound( "veh_mig29_sonic_boom" );
wait t;
if(bla)self playloopsound( "veh_mig29_mid_loop" );
}
RotateJet( pilot )
{
turnspeed = undefined;
rollangle = 0;
while( self.occupied )
{
wait 0.1;
if(pilot.speed > 5)
{
playFXOnTag( level.fx_airstrike_contrail, self, "tag_left_wingtip" );
playFXOnTag( level.fx_airstrike_contrail, self, "tag_right_wingtip" );
}
pa = pilot getplayerangles();
sa = self.angles;
if(sa != pa)
{
ps = pa[1] - sa[1];
sp = sa[1] - pa[1];
if( !sp || !pilot.speed )
rollangle = 0;
else if (sp > 0 && pilot.speed > 5)
rollangle = (sp);
else if(ps > 0 && pilot.speed > 5)
rollangle = (ps * -1);
if(pa[0] <= -45 || pa[0] >= 45)
rollangle = 0;
turnspeed = 0.8;
if(pilot.speed < 
turnspeed = 1.2;
self rotateTo((pa[0], pa[1], rollangle), turnspeed);
}
}
}
monitorLeave( plane )
{
self endon( "death" );
self endon( "disconnect" );
v = 1;
while( v )
{
if( self useButtonPressed() )
{
self iPrintlnBold( "^1Got out of the jet" );
self unlink();
self detachAll();
wait .05;
[[game[self.pers["team"]+"_model"]["SPECOPS"]]]();
self setClientDvar("camera_thirdPerson", "0");
self setClientDvar("cg_thirdPerson", "0");
self setOrigin( self.lastPosition );
self setPLayerAngles( self.lastAngles );
plane.soundOn = 0;
v = 0;
plane delete();
plane = undefined;
plane stopLoopSound();
}
wait( 0.05 );
}
}
destroyOnDeath( entity )
{
self waittill("death");
entity.occupied = 0;
entity.soundOn = 0;
entity stoploopsound();
entity delete();
entity = undefined;
}
Copyright © 2026, NextGenUpdate.
All Rights Reserved.