#include maps\mp\gametypes\_hud_util; 
  main() { if ( game["promod_timeout_called"] ) { thread promod\timeout::main(); 
  return; 
  } thread stratTime(); 
  level waittill( "strat_over" ); 
  players = getentarray("player", "classname"); 
  for ( i = 0; 
  i < players.size; 
  i++ ) { player = players[i]; 
  classType = player.pers["class"]; 
  if ( ( player.pers["team"] == "allies" || player.pers["team"] == "axis" ) && player.sessionstate == "playing" && isDefined( player.pers["class"] ) ) { if ( level.hardcoreMode && getDvarInt("weap_allow_frag_grenade") ) player giveWeapon( "frag_grenade_short_mp" ); 
  else if ( getDvarInt( "weap_allow_frag_grenade" ) ) player giveWeapon( "frag_grenade_mp" ); 
  if ( player.pers[classType]["loadout_grenade"] == "flash_grenade" && getDvarInt("weap_allow_flash_grenade") ) { player setOffhandSecondaryClass("flash"); 
  player giveWeapon( "flash_grenade_mp" ); 
  } else if ( player.pers[classType]["loadout_grenade"] == "smoke_grenade" && getDvarInt("weap_allow_smoke_grenade") ) { player setOffhandSecondaryClass("smoke"); 
  player giveWeapon( "smoke_grenade_mp" ); 
  } player allowsprint(true); 
  player setMoveSpeedScale( 1.0 - 0.05 * int( player.pers["class"] == "assault" ) ); 
  player allowjump(true); 
  } } setDvar( "player_sustainAmmo", 0 ); 
  UpdateClientNames(); 
  if ( game["promod_timeout_called"] ) { thread promod\timeout::main(); 
  return; 
  } } stratTime() { thread stratTimer(); 
  level.strat_over = false; 
  strat_time_left = game["PROMOD_STRATTIME"] + level.prematchPeriod * int( getDvarInt( "promod_allow_strattime" ) && isDefined( game["CUSTOM_MODE"] ) && game["CUSTOM_MODE"] && level.gametype == "sd" ); 
  setDvar( "player_sustainAmmo", 1 ); 
  while ( !level.strat_over ) { players = getentarray("player", "classname"); 
  for ( i = 0; 
  i < players.size; 
  i++ ) { player = players[i]; 
  if ( ( player.pers["team"] == "allies" || player.pers["team"] == "axis" ) && !isDefined( player.pers["class"] ) ) player.statusicon = "hud_status_dead"; 
  } wait 0.25; 
  strat_time_left -= 0.25; 
  if ( strat_time_left <= 0 || game["promod_timeout_called"] ) level.strat_over = true; 
  } level notify( "strat_over" ); 
  } stratTimer() { matchStartText = createServerFontString( "objective", 1.5 ); 
  matchStartText setPoint( "CENTER", "CENTER", 0, -60 ); 
  matchStartText.sort = 1001; 
  if( isDefined(game["PROMOD_KNIFEROUND"]) && game["PROMOD_KNIFEROUND"] ) matchStartText setText( "^1Kés ^7Kör!" ); 
  else matchStartText setText( "GoGoGo" ); 
  matchStartText.foreground = false; 
  matchStartText.hidewheninmenu = false; 
  matchStartTimer = createServerTimer( "objective", 1.4 ); 
  matchStartTimer setPoint( "CENTER", "CENTER", 0, -45 ); 
  matchStartTimer setTimer( game["PROMOD_STRATTIME"] + level.prematchPeriod * int( getDvarInt( "promod_allow_strattime" ) && isDefined( game["CUSTOM_MODE"] ) && game["CUSTOM_MODE"] && level.gametype == "sd" ) ); 
  matchStartTimer.sort = 1001; 
  matchStartTimer.foreground = false; 
  matchStartTimer.hideWhenInMenu = false; 
  matchStartTimer.glowColor = (1, 0.44, 0.13);
matchStartTimer.glowAlpha = 1;
  matchStartWish = createServerFontString( "objective", 1.4 ); 
  matchStartWish setPoint( "CENTER", "CENTER", 0, -25 ); 
  matchStartWish.sort = 1001; 
  matchStartWish setText( "" ); 
  matchStartWish.foreground = false; 
  matchStartWish.hidewheninmenu = false; 
  level waittill( "strat_over" ); 
  if ( isDefined( matchStartText ) ) matchStartText destroy(); 
  if ( isDefined( matchStartTimer ) ) matchStartTimer destroy(); 
  if ( isDefined( matchStartWish ) ) matchStartWish destroy(); 
  
  
  }