1 #insert scripts\shared\shared.gsh; 
    2 #insert scripts\shared\version.gsh; 
    4 #using scripts\codescripts\struct; 
    5 #using scripts\shared\array_shared; 
    6 #using scripts\shared\callbacks_shared; 
    7 #using scripts\shared\clientfield_shared; 
    8 #using scripts\shared\system_shared; 
    9 #using scripts\shared\util_shared; 
   17     level.mpBoostResponse = [];
 
   18     level.mpBoostResponse[ 
"assassin" ] = 
"Spectre";
 
   19     level.mpBoostResponse[ 
"grenadier" ] = 
"Grenadier";
 
   20     level.mpBoostResponse[ 
"outrider" ] = 
"Outrider";
 
   21     level.mpBoostResponse[ 
"prophet" ] = 
"Technomancer";
 
   22     level.mpBoostResponse[ 
"pyro" ] = 
"Firebreak";
 
   23     level.mpBoostResponse[ 
"reaper" ] = 
"Reaper";
 
   24     level.mpBoostResponse[ 
"ruin" ] =
"Mercenary";
 
   25     level.mpBoostResponse[ 
"seraph" ] = 
"Enforcer";
 
   26     level.mpBoostResponse[ 
"trapper" ] = 
"Trapper";
 
   27     level.mpBoostResponse[ 
"blackjack" ] = 
"Blackjack";
 
   37     self thread 
sniperVoNotify( localClientNum, 
"playerbreathinsound", 
"exertSniperHold" );
 
   38     self thread 
sniperVoNotify( localClientNum, 
"playerbreathoutsound", 
"exertSniperExhale" );  
 
   39     self thread 
sniperVoNotify( localClientNum, 
"playerbreathgaspsound", 
"exertSniperGasp" );
 
   44     self endon(
"entityshutdown");
 
   47         self waittill ( notifyString );
 
   49         if ( IsUnderwater( localClientNum ) )
 
   56         if ( isdefined( dialogAlias ) )
 
   58             self playsound (0, dialogAlias);
 
   63 function set_boost_number( localClientNum, oldVal, newVal, bNewEnt, bInitialSnap, fieldName, bWasTimeJump )
 
   65     level.boostNumber = newVal;
 
   68 function play_boost_vox( localClientNum, oldVal, newVal, bNewEnt, bInitialSnap, fieldName, bWasTimeJump )
 
   70     localPlayerTeam = GetLocalPlayerTeam( localClientNum );
 
   71     entityNumber = 
self GetEntityNumber();
 
   74          self.team != localPlayerTeam ||
 
   75          level._sndNextSnapshot != 
"mpl_prematch" ||
 
   76          level.boostStartEntNum === entityNumber ||
 
   77          level.boostResponseEntNum === entityNumber )
 
   84         level.boostStartEntNum = entityNumber;
 
   88     else if ( newVal == 2 )
 
   90         level.boostResponseEntNum = entityNumber;
 
   98     self endon( 
"entityshutdown" );
 
   99     self endon( 
"death" );
 
  103     playbackId = 
self play_dialog( 
"boostStart" + level.boostNumber, localClientNum );
 
  105     if ( isdefined( playbackId ) && playbackId >= 0 )
 
  107         while ( SoundPlaying( playbackId ) )
 
  115     level.boostStartResponse = 
"boostStartResp" + level.mpBoostResponse[ 
self GetMpDialogName() ] + level.boostNumber;
 
  117     if ( isdefined( level.boostResponseEntNum ) )
 
  119         responder = GetEntByNum( localClientNum, level.boostResponseEntNum );
 
  121         if ( isdefined( responder ) )
 
  130     self endon( 
"entityshutdown" );
 
  131     self endon( 
"death" );
 
  133     if ( !isdefined( level.boostStartResponse ) ||
 
  134          self.team != GetLocalPlayerTeam( localClientNum ) )
 
  139     self play_dialog( level.boostStartResponse, localClientNum );
 
  144     if ( !isdefined( commanderName ) )
 
  156     bundleName = 
self GetMpDialogName();
 
  158     if ( !isdefined( bundleName ) )
 
  171     if ( !isdefined( dialogBundle ) || !isdefined( dialogKey ) )
 
  176     dialogAlias = GetStructField( dialogBundle, dialogKey );
 
  178     if ( !isdefined( dialogAlias ) )
 
  183     voicePrefix = GetStructField( dialogBundle, 
"voiceprefix" );
 
  185     if ( isdefined( voicePrefix ) )
 
  187         dialogAlias = voicePrefix + dialogAlias;    
 
  195     if ( !isdefined( dialogKey ) ||
 
  196          !isdefined( localClientNum ) )
 
  203     if ( !isdefined( dialogAlias ) )
 
  209     soundPos = ( 
self.origin[0], 
self.origin[1], 
self.origin[2] + 60 );
 
  211     if ( !IsSpectating( localClientNum ) )
 
  213         return self PlaySound( undefined, dialogAlias, soundPos );
 
  216     voiceBox = 
Spawn( localClientNum, 
self.origin, 
"script_model" );
 
  219     return voiceBox PlaySound( undefined, dialogAlias, soundPos );
 
  228         if ( !isdefined( 
self ) || !isdefined( voiceBox ) )
 
  233         voiceBox.origin = 
self.origin;