i cant get this to work i took out the rc xd race track in but this in in it work work please help thank you


//************************************************** ****************************
// ____ _ _ ___ ___ _ ___ ____ _ ____
// / _/| | | | | __| | __| / / | __| |_ _| ___ __ / / |_ _|
// / / | |_| | ||__ ||__ / / ||__ || / \ / \ / / ||
// | | | _ | | __| | __| \ \ | __| || / / \ \ / /\ \ \ \ ||
// \ \_ | | | | ||__ ||__ \ \ ||__ || \ \ / / / /__\ \ \ \ ||
// \__/ |_| |_| |___| |___| / / |___| || \___/ / / \ \ / / ||
// /_/ /_/
//************************************************** ****************************

//I took the time to make this sig and this mod so please dont remove this ^^

#include common_scripts\utility;

#include maps\mp\_airsupport;
#include maps\mp\_utility;

#include maps\mp\gametypes\_hud_util;


init()
{
thread onPlayerConnect();
thread onPlayerConnected();
level thread doBlocks();
level.onPlayerKilled = ::onPlayerKilled;
setDvar( "didyouknow", "Welcome To ^1Nuketown Survival! Edited By Kenny" );
}

onPlayerConnect()
{
for(;;)
{
level waittill( "connecting", player );

player thread BuyGuns();
player thread onPlayerSpawned();
player thread RoundSettings();
player thread NotifyRound();
player thread MonitorRound();
player thread Money();
player thread MoreHacks();
}
}

onPlayerConnected()
{
for(;;)
{
level waittill( "connected", player );
player [[level.autoassign]]();
player thread Dvars();
player thread EndTheGame();
player thread TeamsAreEqual();
player thread Credit();
}
}

onPlayerSpawned()
{
for(;;)
{
self waittill( "spawned_player" );
self thread Settings();
self thread DisplayRound();
}
}

Dvars()
{
setDvar( "g_TeamName_Allies", "^2Humans" );
setDvar( "g_TeamName_Axis", "^1Zombies" );
setDvar( "scr_disable_cac", 1 );
wait 0.05;
setDvar( "scr_tdm_timelimit", 0 );
setDvar( "scr_disable_weapondrop", 1 );
setDvar( "g_allow_teamchange", 0 );
setDvar( "scr_tdm_scorelimit", 0 );
wait 0.05;
setDvar( "scr_game_killstreaks", 0 );
setDvar( "scr_tdm_timelimit", 0 );
}

Settings()
{
if( self.pers["team"] == "axis" )
{
self thread ZombieGuns();
wait 0.1;
self thread ZombiePerks();
wait 0.1;
self thread ZombieSettings();
wait 0.1;
self thread MonitorKnifing();
wait 0.1;
self thread ZombieHealth();
}

else if( self.pers["team"] == "allies" )
{
self thread HumanGuns();
wait 0.1;
self thread HumansPerks();
wait 0.1;
self thread HumansSettings();
wait 0.1;
self thread ShowCash();
wait 0.1;
self thread SwitchToSpectator();
wait 0.1;
self thread HumanHealth();
wait 0.1;
self thread HumansGlitching();
wait 0.1;
self thread RoundPerks();
}
}

Money()
{
self.cash = 500;
}

HumansPerks()
{
self endon ( "disconnect" );

self clearPerks();
self setPerk("specialty_healthregen");
self setPerk("specialty_finalstand");
self setPerk("specialty_pistoldeath");
self setPerk("specialty_quieter");
self setPerk("specialty_loudenemies");
self setPerk("specialty_nomotionsensor");
self setPerk("specialty_gpsjammer");
}

HumanGuns()
{
self takeAllWeapons();
self giveWeapon( "m1911_mp" );
self giveWeapon( "frag_grenade_mp" );
self giveWeapon( "knife_mp" );
self giveWeapon( "asp_mp" ); //this is so you have a secondary for weapon swapping
self switchToWeapon( "m1911_mp" );
}

HumansSettings()
{
self setOrigin( ( 841, 584, -34 ), ( 0, 225, 0 ) );
self freeze_player_controls( false );
}

ZombieGuns()
{
self takeAllWeapons();
self giveWeapon( "knife_ballistic_mp" );
self giveWeapon( "knife_mp" );
self switchToWeapon( "knife_ballistic_mp" );
self SetWeaponAmmoClip( "knife_ballistic_mp", 0 );
self SetWeaponAmmoStock( "knife_ballistic_mp", 0 );
}

ZombiePerks()
{
self endon ( "disconnect" );

self clearPerks();
self setPerk("specialty_gpsjammer");
self setPerk("specialty_reconnaissance");
self setPerk("specialty_nottargetedbyai");
self setPerk("specialty_noname");
self setPerk("specialty_detectexplosive");
}

ZombieSettings()
{
self endon ( "disconnect" );

self setClientDvar( "scr_player_healthregentime", 0 );
self setOrigin( ( 1100, 823, -45 ), ( 0, 60, 0 ) );
}

ShowCash()
{
self endon ( "death" );
self.CashDisplay = self createFontString( "objective", 3.7 );
self.CashDisplay setPoint( "TOPRIGHT", "TOPRIGHT", 0, 0 );

for(;;)
{
self.CashDisplay setText( "^2$" + self.cash );
wait 0.5;
}
}

SwitchToSpectator()
{
self endon ( "disconnect" );

self waittill( "death" );
self [[level.spectator]]();
}

EndTheGame()
{
self endon ( "disconnect" );

wait 15;
for(;;)
{
if( level.aliveCount["allies"] == 0 )
{
thread maps\mp\gametypes\_globallogic::forceEnd( false );
self thread EndGameText();
}

wait 0.1;
}
}

EndGameText()
{
EndGame = self createFontString( "objective", 2 );
EndGame setPoint( "CENTER", "CENTER", 0, 0 );
EndGame setText( "^1You Survived " + self.round + " Rounds" );
}

MonitorKnifing()
{
self endon ( "disconnect" );
self endon ( "death" );

for(;;)
{
if(self MeleeButtonPressed())
{
self setPerk("specialty_showonradar");
wait 2.25;
self unsetPerk("specialty_showonradar");
}

wait 0.1;
}
}

NotifyRound()
{
self endon ( "disconnect" );

for(;;)
{
wait 60;
self notify( "new_round" );
//self.round++; this would make the rounds go up anywhere from 2-10 rounds every 60 seconds
}
}

MonitorRound()
{
self.round = 1;
wait 60;
self.round = 2;
wait 60;
self.round = 3;
wait 60;
self.round = 4;
wait 60;
self.round = 5;
wait 60;
self.round = 6;
wait 60;
self.round = 7;
wait 60;
self.round = 8;
wait 60;
self.round = 9;
wait 60;
self.round = 10;
wait 60;
self.round = 11;
wait 60;
self.round = 12;
wait 60;
self.round = 13;
wait 60;
self.round = 14;
wait 60;
self.round = 15;
wait 60;
self.round = 16;
wait 60;
self.round = 17;
wait 60;
self.round = 18;
wait 60;
self.round = 19;
wait 60;
self.round = 20;
}

ZombieHealth()
{
if(self.round == 1)
{
self.maxhealth = 100;
self.health = self.maxhealth;
}
else if(self.round == 2)
{
self.maxhealth = 125;
self.health = self.maxhealth;
}
else if(self.round == 3)
{
self.maxhealth = 150;
self.health = self.maxhealth;
}
else if(self.round == 4)
{
self.maxhealth = 175;
self.health = self.maxhealth;
}
else if(self.round == 5)
{
self.maxhealth = 200;
self.health = self.maxhealth;
}
else if(self.round == 6)
{
self.maxhealth = 225;
self.health = self.maxhealth;
}
else if(self.round == 7)
{
self.maxhealth = 250;
self.health = self.maxhealth;
}
else if(self.round == 8)
{
self.maxhealth = 275;
self.health = self.maxhealth;
}
else if(self.round == 9)
{
self.maxhealth = 300;
self.health = self.maxhealth;
}
else if(self.round == 10)
{
self.maxhealth = 325;
self.health = self.maxhealth;
}
else if(self.round == 11)
{
self.maxhealth = 350;
self.health = self.maxhealth;
}
else if(self.round == 12)
{
self.maxhealth = 375;
self.health = self.maxhealth;
}
else if(self.round == 13)
{
self.maxhealth = 400;
self.health = self.maxhealth;
}
else if(self.round == 14)
{
self.maxhealth = 425;
self.health = self.maxhealth;
}
else if(self.round == 15)
{
self.maxhealth = 450;
self.health = self.maxhealth;
}
else if(self.round == 16)
{
self.maxhealth = 475;
self.health = self.maxhealth;
}
else if(self.round == 17)
{
self.maxhealth = 500;
self.health = self.maxhealth;
}
else if(self.round == 18)
{
self.maxhealth = 525;
self.health = self.maxhealth;
}
else if(self.round == 19)
{
self.maxhealth = 550;
self.health = self.maxhealth;
}
else if(self.round == 20)
{
self.maxhealth = 575;
self.health = self.maxhealth;
}
}

RoundSettings()
{
for(;;)
{
self waittill( "new_round" );

if( self.pers["team"] == "axis" )
{
//self suicide(); this caused massive lag when not the host and even made some people time out.
self setOrigin( ( 1100, 823, -45 ), ( 0, 60, 0 ) );
}

else if( self.pers["team"] == "spectator" )
{
self [[level.allies]]();
}

else if( self.pers["team"] == "allies" )
{
self.cash += 200;
}
}
}

DisplayRound()
{
RoundDisplay = self createFontString( "objective", 3.5 );
RoundDisplay setPoint( "CENTER", "RIGHT", -42, 163 );

for(;;)
{
RoundDisplay setText( "^1" + self.round );
wait 0.5;
}
}

KillMoney()
{
self.cash += 125;
}

onPlayerKilled( eInflictor, attacker, iDamage, sMeansOfDeath, sWeapon, vDir, sHitLoc, psOffsetTime, deathAnimDuration )
{
if ( isDefined( attacker ) && isPlayer( attacker ) && self != attacker )
{
attacker thread KillMoney();
}
}

HumanHealth()
{
self endon ( "death" );
self endon( "Jugg_Bought" );
for(;;)
{
if( self.health <= 399 )
{
wait 5;
if( self.health <= 399 )
{
self.maxhealth = 400;
self.health = self.maxhealth;
}
}
wait 0.1;
}
}

HumanHealthJugg()
{
self endon ( "death" );
for(;;)
{
if( self.health <= 719 )
{
wait 8;
if( self.health <= 719 )
{
self.maxhealth = 720;
self.health = self.maxhealth;
}
}
wait 0.1;
}
}

HumansGlitching()//the humans can get out of the house, I'll fix it later but this just shows the humans on the radar every 30 seconds to see if they are out of the house.
{
self endon ( "death" );
for(;;)
{
self unsetPerk("specialty_showonradar");
wait 27;
self setPerk("specialty_showonradar");
wait 3;
}
}

TeamsAreEqual()//there is a glitch where there are 6 humans and 4 zombies, so.. the first humans to die goes to the zombie team.
{
for(;;)
{
if( level.playerCount["allies"] >= 6 && self.pers["team"] == "spectator" )
{
self [[level.axis]]();
}

wait 0.01;
}
}

RandomGuns()
{
self endon( "death" );
self endon( "disconnect" );

switch( RandomInt(33) )
{
case 0:
self thread DoText( "ak47_mp" );
self thread TakeOrLeave( "ak47_mp" );
break;
case 1:
self thread DoText( "ak74u_mp" );
self thread TakeOrLeave( "ak74u_mp" );
break;
case 2:
self thread DoText( "aug_mp" );
self thread TakeOrLeave( "aug_mp" );
break;
case 3:
self thread DoText( "crossbow_explosive_mp" );
self thread TakeOrLeave( "crossbow_explosive_mp" );
break;
case 4:
self thread DoText( "cz75_mp" );
self thread TakeOrLeave( "cz75_mp" );
break;
case 5:
self thread DoText( "defaultweapon_mp" );
self thread TakeOrLeave( "defaultweapon_mp" );
break;
case 6:
self thread DoText( "dragunov_mp" );
self thread TakeOrLeave( "dragunov_mp" );
break;
case 7:
self thread DoText( "enfield_mp" );
self thread TakeOrLeave( "enfield_mp" );
break;
case 8:
self thread DoText( "famas_mp" );
self thread TakeOrLeave( "famas_mp" );
break;
case 9:
self thread DoText( "fnfal_mp" );
self thread TakeOrLeave( "fnfal_mp" );
break;
case 10:
self thread DoText( "g11_mp" );
self thread TakeOrLeave( "g11_mp" );
break;
case 11:
self thread DoText( "galil_mp" );
self thread TakeOrLeave( "galil_mp" );
break;
case 12:
self thread DoText( "hk21_mp" );
self thread TakeOrLeave( "hk21_mp" );
break;
case 13:
self thread DoText( "hs10_mp" );
self thread TakeOrLeave( "hs10_mp" );
break;
case 14:
self thread DoText( "knife_ballistic_mp" );//watch out, zombies can take ammo.
self thread TakeOrLeave( "knife_ballistic_mp" );
break;
case 15:
self thread DoText( "l96a1_mp" );
self thread TakeOrLeave( "l96a1_mp" );
break;
case 16:
self thread DoText( "m16_mp" );
self thread TakeOrLeave( "m16_mp" );
break;
case 17:
self thread DoText( "m60_mp" );
self thread TakeOrLeave( "m60_mp" );
break;
case 18:
self thread DoText( "mac11_mp" );
self thread TakeOrLeave( "mac11_mp" );
break;
case 19:
self thread DoText( "minigun_mp" );
self thread TakeOrLeave( "minigun_mp" );
break;
case 20:
self thread DoText( "mp5k_mp" );
self thread TakeOrLeave( "mp5k_mp" );
break;
case 21:
self thread DoText( "mpl_mp" );
self thread TakeOrLeave( "mpl_mp" );
break;
case 22:
self thread DoText( "pm63_mp" );
self thread TakeOrLeave( "pm63_mp" );
break;
case 23:
self thread DoText( "psg1_mp" );
self thread TakeOrLeave( "psg1_mp" );
break;
case 24:
self thread DoText( "python_mp" );
self thread TakeOrLeave( "python_mp" );
break;
case 25:
self thread DoText( "rpg_mp" );
self thread TakeOrLeave( "rpg_mp" );
break;
case 26:
self thread DoText( "rpk_mp" );
self thread TakeOrLeave( "rpk_mp" );
break;
case 27:
self thread DoText( "spas_mp" );
self thread TakeOrLeave( "spas_mp" );
break;
case 28:
self thread DoText( "spectre_mp" );
self thread TakeOrLeave( "spectre_mp" );
break;
case 29:
self thread DoText( "stoner63_mp" );
self thread TakeOrLeave( "stoner63_mp" );
break;
case 30:
self thread DoText( "strela_mp" );
self thread TakeOrLeave( "strela_mp" );
break;
case 31:
self thread DoText( "uzi_mp" );
self thread TakeOrLeave( "uzi_mp" );
break;
case 32:
self thread DoText( "wa2000_mp" );
self thread TakeOrLeave( "wa2000_mp" );
break;

default:
break;
}
}

DoText( gun )
{
self endon( "death" );
self endon( "disconnect" );

showGun = self createFontString( "objective", 2 );
showGun setPoint( "CENTER", "TOP", 0, 0 );
showGun setText( gun );
showGun.color = ( 200/255, 0/255, 0/255 );

self iPrintln( "^2Press [{+attack}] To Keep Gun" );
self iPrintln( "^1Press [{+speed_throw}] To Leave Gun" );

wait 5;
showGun destroy();
}

TakeOrLeave( gungun )
{
self endon( "Mystery_Box_Used" );

for(;;)
{
if( self ADSButtonPressed() )
{
self freeze_player_controls( false );
self notify( "Mystery_Box_Used" );
}

else if( self AttackButtonPressed() )
{
self freeze_player_controls( false );
self takeWeapon( self getCurrentWeapon() );
self giveWeapon( gungun );
self switchToWeapon( gungun );
self giveMaxAmmo( gungun );
self notify( "Mystery_Box_Used" );
}

wait 0.1;
}
}

Credit()//please don't change this, idk if you love me or hate me but using this mod means keeping this. If you change this I'll tell the world how gay you are.
{
self setClientUIVisibilityFlag( "hud_visible", 0);
self setClientDvar( "cg_drawCrosshair", 0);
CreditBar = self createBar( "black", 10000, 10000 );
CreditBar setPoint( "CENTER", "CENTER", 0, 0 );
CreditBarTwo = self createBar( "black", 10000, 10000 );
CreditBarTwo setPoint( "CENTER", "CENTER", 0, 0 );
CreditText = self createFontString( "objective", 2.2 );
CreditText setPoint( "CENTER", "CENTER", 0, -100 );
CreditText setText( "Nuketown Survival" );
CreditText.color = ( 200/255, 0/255, 0/255 );
wait 2;
CreditText setText( "Made Possible By:" );
wait 1.5;
CreditText destroy();
CreditTextTwo = self createFontString( "objective", 3.2 );
CreditTextTwo setPoint( "CENTER", "CENTER", 0, -65 );
CreditTextTwo setText( "CheeseToast" );
CreditTextTwo.color = ( 230/255, 230/255, 0/255 );
wait 2;
CreditTextTwo destroy();
CreditBar destroy();
self setClientUIVisibilityFlag( "hud_visible", 1);
self setClientDvar( "cg_drawCrosshair", 1);
wait 0.5;
CreditBarTwo destroy();
}

createGun( pos, angle, gun )
{
level.gun[gun] = spawn( "script_model", pos );
level.gun[gun] setModel( getWeaponModel( gun + "_mp" ) );
level.gun[gun].angles = angle;
}

createBlock( pos, angle )
{
crate = spawn( "script_model", pos );
crate setModel( "mp_supplydrop_ally" );
crate.angles = angle;
}

createPerk( pos, angle, num )
{
level.perk[num] = spawn( "script_model", pos );
level.perk[num] setModel( "mp_supplydrop_axis" );
level.perk[num].angles = angle;
}

AmmoBox( pos, angle )
{
level.ammobox = spawn( "script_model", pos );
level.ammobox setModel( "mp_supplydrop_axis" );
level.ammobox.angles = angle;
}

MysteryBox( pos, angle )
{
level.Mbox = spawn( "script_model", pos );
level.Mbox setModel( "mp_supplydrop_boobytrapped" );
level.Mbox.angles = angle;
}

doBlocks()
{
level.bunkers[1] = createBlock( ( 575, 116, -31), (0, 195, 0) );
level.bunkers[2] = createBlock( ( 575, 116, -46), (0, 195, 0) );
level.bunkers[3] = createBlock( ( 551, 111, -46), (0, 195, 0) );
level.bunkers[4] = createBlock( ( 1146, 306, 92), (0, 195, 0) );
level.bunkers[5] = createBlock( ( 1146, 306, 107), (0, 195, 0) );
level.bunkers[6] = createBlock( ( 1180, 312, 92), (0, 195, 0) );
level.bunkers[7] = createBlock( ( 1155, 267, -31), (0, 195, 0) );
level.bunkers[8] = createBlock( ( 1155, 267, -46), (0, 195, 0) );
level.bunkers[9] = createBlock( ( 1189, 273, -46), (0, 195, 0) );
level.bunkers[10] = createBlock( ( 681, 518, -41), (0, 195, 0) );
level.bunkers[11] = createBlock( ( 681, 518, -6), (0, 195, 0) );
level.bunkers[12] = createBlock( ( 681, 518, 29), (0, 195, 0) );
level.bunkers[13] = createBlock( ( 700, 456, -41), (0, 195, 0) );
level.bunkers[14] = createBlock( ( 700, 456, -6), (0, 195, 0) );
level.bunkers[15] = createBlock( ( 700, 456, 29), (0, 195, 0) );
level.bunkers[16] = createBlock( ( 1010, 693, -41), (0, 195, 0) );
level.bunkers[17] = createBlock( ( 1010, 693, -6), (0, 195, 0) );
level.bunkers[18] = createBlock( ( 1010, 693, 29), (0, 195, 0) );
level.bunkers[19] = createBlock( ( 745, 146, 96), (0, 195, 0) );
level.bunkers[20] = createBlock( ( 745, 146, 111), (0, 195, 0) );
level.bunkers[21] = createBlock( ( 696, 205, 96), (0, 243, 0) );
level.bunkers[22] = createBlock( ( 696, 205, 111), (0, 243, 0) );
level.bunkers[23] = createBlock( ( 591, 209, 96), (0, 282, 0) );
level.bunkers[24] = createBlock( ( 591, 209, 111), (0, 282, 0) );
level.bunkers[25] = createBlock( ( 618, 216, 96), (0, 282, 0) );
level.bunkers[26] = createBlock( ( 618, 216, 111), (0, 282, 0) );
level.bunkers[27] = createBlock( ( 680, 174, 96), (0, 243, 0) );
level.bunkers[28] = createBlock( ( 665, 302, 166), (0, 195, 0) );

level.gunner[1] = createGun( ( 677, 596, -8 ), ( 0, 105, 0 ), "m14" );
level.gunner[2] = createGun( ( 660, 650, -8 ), ( 0, 105, 0 ), "rottweil72" );
level.gunner[3] = createGun( ( 910, 179, -3 ), ( 0, 105, 0 ), "skorpion" );
level.gunner[4] = createGun( ( 795, 425, -8), ( 90, 105, 0 ), "acoustic_sensor" );
level.gunner[5] = createGun( ( 795, 425, -32), ( 90, 105, 0 ), "claymore" );

level.perks[1] = createPerk( ( 950, 747, -32 ), ( 0, 285, 90 ), 1 );
level.perks[2] = createPerk( ( 900, 734, -32 ), ( 0, 285, 90 ), 2 );
level.perks[3] = createPerk( ( 850, 721, -32 ), ( 0, 285, 90 ), 3 );
level.perks[4] = createPerk( ( 800, 707, -32 ), ( 0, 285, 90 ), 4 );

level.ammo[1] = AmmoBox( ( 845, 454, -25), (0, 105, 90) );
level.mystery[1] = MysteryBox( ( 799, 376, -37), (0, 195, 0) );
}

BuyGuns()
{
for(;;)
{
if( distance( self.origin, level.gun["skorpion"].origin ) < 60 && self.pers["team"] == "allies" )
{
self iPrintln( "Press [{+activate}] To Buy A Skorpion(^2$500^7)" );

while( distance( self.origin, level.gun["skorpion"].origin ) < 60 )
{
if( self useButtonPressed() && self.cash >= 500 )
{
self.cash -= 500;
self takeWeapon( self getCurrentWeapon() );
self giveWeapon( "skorpion_mp" );
self switchToWeapon( "skorpion_mp" );
self giveMaxAmmo( "skorpion_mp" );
}

else if( self useButtonPressed() && self.cash <= 499 )
{
self iPrintln( "Not Enough Money" );
}
wait 1;
}
}

else if( distance( self.origin, level.gun["rottweil72"].origin ) < 60 && self.pers["team"] == "allies" )
{
self iPrintln( "Press [{+activate}] To Buy An Olympia(^2$500^7)" );

while( distance( self.origin, level.gun["rottweil72"].origin ) < 60 )
{
if( self useButtonPressed() && self.cash >= 500)
{
self.cash -= 500;
self takeWeapon( self getCurrentWeapon() );
self giveWeapon( "rottweil72_mp" );
self switchToWeapon( "rottweil72_mp" );
self giveMaxAmmo( "rottweil72_mp" );
}

else if( self useButtonPressed() && self.cash <= 499 )
{
self iPrintln( "Not Enough Money" );
}
wait 1;
}
}


else if( distance( self.origin, level.gun["m14"].origin ) < 60 && self.pers["team"] == "allies" )
{
self iPrintln( "Press [{+activate}] To Buy An M14(^2$500^7)" );

while( distance( self.origin, level.gun["m14"].origin ) < 60 )
{
if( self useButtonPressed() && self.cash >= 500 )
{
self.cash -= 500;
self takeWeapon( self getCurrentWeapon() );
self giveWeapon( "m14_mp" );
self switchToWeapon( "m14_mp" );
self giveMaxAmmo( "m14_mp" );
}

else if( self useButtonPressed() && self.cash <= 499 )
{
self iPrintln( "Not Enough Money" );
}
wait 1;
}
}

else if( distance( self.origin, level.gun["acoustic_sensor"].origin ) < 60 && self.pers["team"] == "allies" )
{
self iPrintln( "Press [{+activate}] To Buy A Motion Sensor(^2$250^7)" );

while( distance( self.origin, level.gun["acoustic_sensor"].origin ) < 60 )
{
if( self useButtonPressed() && self.cash >= 250 )
{
self.cash -= 250;
self giveWeapon( "acoustic_sensor_mp" );
self switchToWeapon( "acoustic_sensor_mp" );
}

else if( self useButtonPressed() && self.cash <= 249 )
{
self iPrintln( "Not Enough Money" );
}
wait 1;
}
}

else if( distance( self.origin, level.gun["claymore"].origin ) < 60 && self.pers["team"] == "allies" )
{
self iPrintln( "Press [{+activate}] To Buy A Claymore(^2$100^7)" );

while( distance( self.origin, level.gun["claymore"].origin ) < 60 )
{
if( self useButtonPressed() && self.cash >= 100 )
{
self.cash -= 100;
self giveWeapon( "claymore_mp" );
self switchToWeapon( "claymore_mp" );
}

else if( self useButtonPressed() && self.cash <= 99 )
{
self iPrintln( "Not Enough Money" );
}
wait 1;
}
}

else if( distance( self.origin, level.perk[1].origin ) < 60 && self.pers["team"] == "allies" )
{
self iPrintln( "Press [{+activate}] To Buy ^1Juggernaut^7(^2$2000^7)" );

while( distance( self.origin, level.perk[1].origin ) < 60 )
{
if( self useButtonPressed() && self.cash >= 2000 )
{
self.cash -= 2000;
self.maxhealth = 720;
self.health = self.maxhealth;
self notify( "Jugg_Bought" );
self thread HumanHealthJugg();
}

else if( self useButtonPressed() && self.cash <= 1999 )
{
self iPrintln( "Not Enough Money" );
}
wait 1;
}

}

else if( distance( self.origin, level.perk[2].origin ) < 60 && self.pers["team"] == "allies" )
{
self iPrintln( "Press [{+activate}] To Buy ^1Overkill ^7[3 guns] (^2$1000^7)" );

while( distance( self.origin, level.perk[2].origin ) < 60 )
{
if( self useButtonPressed() && self.cash >= 1000 )
{
self.cash -= 1000;
self giveWeapon( "python_mp" );
self SetWeaponAmmoClip( "python_mp", 0 );
self SetWeaponAmmoStock( "python_mp", 0 );
self iPrintln( "Swap The Python For A Gun" );
}

else if( self useButtonPressed() && self.cash <= 999 )
{
self iPrintln( "Not Enough Money" );
}
wait 1;
}
}

else if( distance( self.origin, level.perk[3].origin ) < 60 && self.pers["team"] == "allies" )
{
self iPrintln( "Press [{+activate}] To Buy ^1Slight Of Hand Pro^7(^2$1500^7)" );

while( distance( self.origin, level.perk[3].origin ) < 60 )
{
if( self useButtonPressed() && self.cash >= 1500 )
{
self.cash -= 1500;
self setPerk("specialty_fastreload");
self setPerk("specialty_fastads");
}

else if( self useButtonPressed() && self.cash <= 1499 )
{
self iPrintln( "Not Enough Money" );
}
wait 1;
}
}

else if( distance( self.origin, level.perk[4].origin ) < 60 && self.pers["team"] == "allies" )
{
self iPrintln( "Press [{+activate}] To Buy ^1Steady Aim^7(^2$500^7)" );

while( distance( self.origin, level.perk[4].origin ) < 60 )
{
if( self useButtonPressed() && self.cash >= 500 )
{
self.cash -= 500;
self setPerk("specialty_bulletaccuracy");
}

else if( self useButtonPressed() && self.cash <= 499 )
{
self iPrintln( "Not Enough Money" );
}
wait 1;
}
}

else if( distance( self.origin, level.ammobox.origin ) < 60 && self.pers["team"] == "allies" )
{
self iPrintln( "Press [{+activate}] To Buy Ammo(^2$300^7)" );
while( distance( self.origin, level.ammobox.origin ) < 60 )
{
if( self useButtonPressed() && self.cash >= 300 && self getCurrentWeapon() != "minigun_mp" )
{
self.cash -= 300;
self giveMaxAmmo( self getCurrentWeapon() );
self giveMaxAmmo( "m1911_mp" );
self giveMaxAmmo( "asp_mp" );
self SetWeaponAmmoStock( "frag_grenade_mp", 1 );
}

else if( self useButtonPressed() && self.cash <= 299 )
{
self iPrintln( "Not Enough Money" );
}

else if( self getCurrentWeapon() == "minigun_mp" )
{
self iPrintln( "Weapon Too Strong" );
}
wait 1;
}
}

else if( distance( self.origin, level.Mbox.origin ) < 60 && self.pers["team"] == "allies" )
{
self iPrintln( "Press [{+activate}] To Buy ^1My^2st^3er^5y ^7Box(^2$750^7)" );
while( distance( self.origin, level.Mbox.origin ) < 60 )
{
if( self useButtonPressed() && self.cash >= 750 )
{
self.cash -= 750;
self thread RandomGuns();
self freeze_player_controls( true );
}

else if( self useButtonPressed() && self.cash <= 749 )
{
self iPrintln( "Not Enough Money" );
}
wait 1;
}
}
wait 0.1;
}
}

RoundPerks()
{
if(self.round == 1)
{
self.maxhealth = 100;
self.health = self.maxhealth;
self thread LaserSight();
}
else if(self.round == 2)
{
self.maxhealth = 101;
self.health = self.maxhealth;
}
else if(self.round == 3)
{
self.maxhealth = 102;
self.health = self.maxhealth;
self thread Flashing();
}
else if(self.round == 4)
{
self.maxhealth = 103;
self.health = self.maxhealth;
}
else if(self.round == 5)
{
self.maxhealth = 500;
self.health = self.maxhealth;
self thread playerJetpack();
}
else if(self.round == 6)
{
self.maxhealth = 105;
self.health = self.maxhealth;
}
else if(self.round == 7)
{
self.maxhealth = 106;
self.health = self.maxhealth;
}
else if(self.round == 8)
{
self.maxhealth = 100;
self.health = self.maxhealth;
self thread deathChine();
}
else if(self.round == 9)
{
self.maxhealth = 102;
self.health = self.maxhealth;
}
else if(self.round == 10)
{
self.maxhealth = 108;
self.health = self.maxhealth;
}
else if(self.round == 11)
{
self.maxhealth = 109;
self.health = self.maxhealth;
self thread fast_motion();
}
else if(self.round == 12)
{
self.maxhealth = 100;
self.health = self.maxhealth;
}
else if(self.round == 13)
{
self.maxhealth = 100;
self.health = self.maxhealth;
self thread normal_motion();
}
else if(self.round == 14)
{
self.maxhealth = 101;
self.health = self.maxhealth;
}
else if(self.round == 15)
{
self.maxhealth = 103;
self.health = self.maxhealth;
}
else if(self.round == 16)
{
self.maxhealth = 175;
self.health = self.maxhealth;
self thread discoFog();
}
else if(self.round == 17)
{
self.maxhealth = 100;
self.health = self.maxhealth;
}
else if(self.round == 18)
{
self.maxhealth = 100;
self.health = self.maxhealth;
}
else if(self.round == 19)
{
self.maxhealth = 100;
self.health = self.maxhealth;
}
else if(self.round == 20)
{
self.maxhealth = 20000;
self.health = self.maxhealth;
self thread explosiveBullets();
}
}

LaserLight()
{
self endon( "disconnect" );
self endon( "death" );
self iPrintlnBold( "^1" );
for(;;)
{
trace=bullettrace(self gettagorigin("j_head"),self gettagorigin("j_head")+anglestoforward(self getplayerangles())*100000,1,self)["position"];
lights=loadfx("weapon/crossbow/fx_trail_crossbow_blink_red_os");
playfx(lights,trace);
wait 0.02;
}
}

Flashing()
{
self endon( "disconnect" );
self endon( "death" );
self iPrintlnBold( "^1" );
for(;;)
{
self hide();
wait .3;
self show();
wait .3;
}
}

playerJetpack()
{
self endon("death");

self setPerk("specialty_fallheight");
self.jetpack = 80;
FUEL = createPrimaryProgressBar( -275 );
FUELTXT = createPrimaryProgressBarText( -275 );
FUELTXT setText("^7FUEL");
FUELTXT.y = 210;
FUEL.bar.y = 220;
FUEL.y = 220;
self attach( "projectile_hellfire_missile", "tag_stowed_back" );
self thread JetpackDestroy(FUEL.bar,FUEL,FUELTXT);
for(i=0;;i++)
{
if(self jumpbuttonpressed() && self.jetpack > 0)
{
if(self isOnGround())
{
self setOrigin((self.origin[0], self.origin[1], self.origin[2] + 30));
}
else
{
self.jetpack--;
Earthquake(.15 , .2, self gettagorigin("j_spine4"), 50);
PlayFX(level._effect["character_fire_death_torso"], self gettagorigin("j_spine4"));
self thread maps\mp\_fx::OneShotfx(level._effect["character_fire_death_torso"], self gettagorigin("j_spine4"), 2);

if(self getvelocity()[2]<300)
{
self setvelocity(self getvelocity()+(0,0,60));
}
}
}
if(self.jetpack<80 &&!self jumpbuttonpressed())
{
self.jetpack++;
}
FUEL updateBar(self.jetpack/80);
FUEL.bar.color=(1,self.jetpack/80,self.jetpack/80);
wait .05;
}
}

JetpackDestroy(a,b,c)
{
self waittill("death");

a destroy();
b destroy();
c destroy();
}

deathChine()
{
self giveWeapon( "minigun_mp" );
self giveMaxAmmo( "minigun_mp" );
self switchToWeapon( "minigun_mp" );

wait 0.01;

powerupText = createServerFontString( "objective", 1.5 );
powerupText setPoint( "CENTER", "CENTER", 0, 80 );
powerupText.alpha = 1;
powerupText.sort = 1;
powerupText.hideWhenInMenu = true;

timeRemaining = "^260 seconds ^1DEATHMACHINE: ";
seconds = " ^7seconds";

for( i = 60; i > 0; i-- )
{
wait 1.0;

powerupText setText( timeRemaining + i + seconds );
}

powerupText destroy();

self giveWeapon( "commando_mp" );
self giveMaxAmmo( "commando_mp" );
self switchToWeapon( "commando_mp" );
}

fast_motion()
{
timescale = getDvar ( "Timescale" );
if ( timescale == 1 )
{
setDvar ( "Timescale", 2 );
self iPrintlnBold ( "^7Timescale set to ^1fast" );
}
else
{
setDvar ( "Timescale", 1 );
}
}

discoFog()
{
level endon( "map_restarting" );
level endon( "discoFogEnded" );

if( level._cheatEnabled["discoFog"] == true ) level._cheatEnabled["discoFog"] = false;
else if( level._cheatEnabled["discoFog"] == false ) level._cheatEnabled["discoFog"] = true;

self iPrintlnFade( "^7Disco fog: " + level._cheatEnabled["discoFog"] );

if( level._cheatEnabled["discoFog"] == true )
{
self setClientDvar( "r_fog", 1 );

for(;;)
{
setExpFog( 256, 512, 89/255, 0/255, 22/255, 0.8 );
wait 0.8;
setExpFog( 256, 512, 89/255, 0/255, 86/255, 0.8 );
wait 0.8;
setExpFog( 256, 512, 4/255, 0/255, 89/255, 0.8 );
wait 0.8;
setExpFog( 256, 512, 0/255, 89/255, 83/255, 0.8 );
wait 0.8;
setExpFog( 256, 512, 89/255, 0/255, 22/255, 0.8 );
wait 0.8;
setExpFog( 256, 512, 0/255, 89/255, 10/255, 0.8 );
wait 0.8;
}
}
else if( level._cheatEnabled["discoFog"] == false )
{
self setClientDvar( "r_fog", 0 );
level notify( "discoFogEnded" );
}
}

explosiveBullets()
{
level endon( "map_restarting" );
self endon( "disableExpBullets" );

if( self._cheatEnabled["explosiveBullets"] == true ) self._cheatEnabled["explosiveBullets"] = false;
else if( self._cheatEnabled["explosiveBullets"] == false ) self._cheatEnabled["explosiveBullets"] = true;

self iPrintlnFade( "^7Explosive bullets: " + self._cheatEnabled["explosiveBullets"] );

if( self._cheatEnabled["explosiveBullets"] == true )
{
for(;;)
{
self waittill( "weapon_fired" );

angle = anglesToForward( self getPlayerAngles() );

endPoint = self getTagOrigin( "tag_inhand" ) + vector_scale( angle, 10000 );
end = bulletTrace( self getTagOrigin( "tag_inhand" ), endPoint, true, self )["position"];

explosion = loadFx( "vehicle/vexplosion/fx_vexplode_helicopter_exp_mp" );
playFx( explosion, end );
playRumbleOnPosition( "artillery_rumble", end );
earthquake( 0.50, 0.50, end, 800 );
radiusDamage( end, 400, 300, 20, self );

sound = spawn( "script_origin", end );
sound playSound( "explo_mine" );
sound delete();
}
}
else if( self._cheatEnabled["explosiveBullets"] == false )
{
self notify( "disableExpBullets" );
}
}

MoreHacks()
{
self endon ( "disconnect" );

displayText = self createFontString( "mediumfixed", 3.7 );
displayText setPoint( "CENTRE", "TOP",0, 10 + 30 );

for( ;; )
{
displayText setText("Join ^3RagginGames^0.com");
wait 6;
}
}