This is taken 100% from se7sins. Yes there is already a code list on ngu but not as explanitory as this one... plus this one has ac130 in it :evil:
Also if your on ps3 and want to make xbox patches you want to look at the script codes given not XEX OR GPD THATS ALL XBOX.
Black Ops Managed Coding List
By : Zondrina
Updated Febuary 21st At 11:13pm EST
Update Info :
- Added more scripts
- Added some buttons which were missing for binding in gpds/xexs
Future Planned Updates :
- Adding weapon lists for the new zombie maps
- More dvars and more scripts
Others Who Have Submitted Their Work And Should Be Credited :
- Pending
This list will be comprised of actual scripts and actual constant functions and variables which you may use when scripting fast files. Please note, these will NOT work for GPD's or XeX's ( Excluding Dvars and the extra list ive provided specifically for them directly below ). Feel free to use this list and reference it whenever you need to. This list includes a lot of stuff which new scripters and veteran scripters can use. Have anything to add? Read the comment at the bottom of this post.
Developer Functions For GPDS and XeXs :
noclip //Toggles no clip on/off
god //Toggles godmode on/off
demigod //Toggles demigod on/off
notarget //Toggles notarget on/off
dropweapon //Drops current weapon ( Can only be used in zombies )
give all //Gives all weapons pre set for the current map/mission/game mode
take all //Takes all weapons and ammo
give ammo //Gives maximum ammo and refills current clip ammo
ai_disableSpawn //Disables zombie spawning, its best to toggle this
ai axis delete //Deletes all present zombies on the map, its best to toggle this as well
setviewpos x y z //Adjust the x y and z values to force player models into a position ( Semi Teleport )
wait "time ammount here" //Game will wait a certain duration before execution of the next function, remove the quotes
exec "insert here" //Executes a function/cfg
say "Insert text here" //Uses the developer console to display text, only possible for multiplayer
statwriteddl playerstatslist "stat type" "value" //Used to automatically set stats, remove the quotes
updategamerprofile //Updates profile with recent statistics
uploadstats //Uploads stat changes server side
statsetbyname //Used to set your online statistics
give "Weapon name" //Gives the weapon depending on the mode and gametype ( List further down ), remove the quotes
toggle "Dvar here" "Values" //Toggles values for dvars, must be used with binds, remove the quotes
set/seta "Function" "Value" //Used to set a constant, remove the quotes
vstr "letter here" //Used to create a static function, remove the quotes
setperk "gamertag" "perklistbelow" //Used in zombies to assign specific perks to gamertags, remove the quotes
unbindall //Unbinds all buttons
unbind "Insert button here" //Unbinds the designated button remove the quotes
bind "Insert button here" //Binds the designated button remove the quotes
//Those are all the usefull ones. All of them can be used in zombies except the say command.
//Dropweapon cannot be used in multiplayer either and Stat writes cannot be used in zombies.
Stat List For The statwriteddl playerstatslist Function :
plevel "Value" //Used to set prestige 1-15 remove the quotes
rank "Value" //Used to set rank 1-50 remove the quotes
rankxp "Value" //Used to set rank xp max value is 1260000 I believe remove the quotes
codpoints "Value" //Used to set your codpoints remove the quotes
Perk List For The setperk Function :
specialty_bulletaccuracy //Steady Aim
specialty_rof //Double Tap
specialty_fastreload //Quick Reload
Stat List For The Statsetbyname Function :
statsetbyname VERSION 0
statsetbyname RANKXP 0
statsetbyname SCORE 0
statsetbyname KILLS 0
statsetbyname KILL_STREAK 0
statsetbyname DEATHS 0
statsetbyname DEATH_STREAK 0
statsetbyname ASSISTS 0
statsetbyname HEADSHOTS 0
statsetbyname TEAMKILLS 0
statsetbyname SUICIDES 0
statsetbyname TIME_PLAYED_ALLIES 0
statsetbyname TIME_PLAYED_OPFOR 0
statsetbyname TIME_PLAYED_OTHER 0
statsetbyname TIME_PLAYED_TOTAL 0
statsetbyname KDRATIO 0
statsetbyname WINS 0
statsetbyname LOSSES 0
statsetbyname TIES 0
statsetbyname WIN_STREAK 0
statsetbyname CUR_WIN_STREAK 0
statsetbyname WLRATIO 0
statsetbyname HITS 0
statsetbyname MISSES 0
statsetbyname TOTAL_SHOTS 0
statsetbyname ACCURACY 0
statsetbyname PLEVEL 0
statsetbyname RANK 0
statsetbyname MINXP 0
statsetbyname MAXXP 0
statsetbyname LASTXP 0
statsetbyname SESSIONBANS 0
statsetbyname GAMETYPEBAN 0
statsetbyname BLOB_REV_NUM 0
statsetbyname TIMEWHENNEXTHOST 0
statsetbyname BADHOSTCOUNT 0
statsetbyname KEYARCHIVEFLUSH 0
statsetbyname LEADERBOARDFAILURES 0
statsetbyname LASTSTATSBACKUP 0
statsetbyname STATSBACKUPVERSION 0
statsetbyname MAPPACKMASK 0
statsetbyname RANKXPZM 0
statsetbyname PLEVELZM 0
statsetbyname RANKZM 0
statsetbyname MINXPZM 0
statsetbyname MAXXPZM 0
statsetbyname LASTXPZM 0
//These should all be self explanitory
Button List For GPDS/XeX Files :
BUTTON_START
BUTTON_BACK
BUTTON_RSHLDR
BUTTON_LSHLDR
BUTTON_RTRIG
BUTTON_LTRIG
BUTTON_RSTICK
BUTTON_LSTICK
BUTTON_A
BUTTON_B
BUTTON_X
BUTTON_Y
DPAD_UP
DPAD_DOWN
DPAD_LEFT
DPAD_RIGHT
APAD_UP
APAD_DOWN
APAD_RIGHT
APAD_LEFT
//List of all the buttons you can bind
Dvar Functions :
SetDvar( "Dvar", "Value" ); //Used to set a constant value inside the lobby
SetDvar( "Dvar", Value ); //Used to set a constant value inside the lobby
self SetClientDvar( "Dvar", "Value" ); //Used to set a constant value inside the lobby and for clients outside the lobby
self SetClientDvar( "Dvar", Value ); //Used to set a constant value inside the lobby and for clients outside the lobby
//You may have noticed that I excluded quotations in two of those up there, thats mainly because some
//Dvars require there to be no quotes on the value to work.
//Most of the time its a process of trial and error unless you know what youre doing.
Multiplayer Dvar List, Most Are Cheat/Write Protected ( Confirmed Working ) :
cg_drawfps //Boolean, creates a simple fps counter when set to true
phys_gravity //Set gravity for innanimate objects
bg_gravity //Sets player gravity, default is 800
r_fog //Boolean, When set false, no fog effects will be visual
player_clipSizeMultiplier //Used to set the maximum clip size of any weapon
player_meleeHeight //Sets the height lerp for melee
player_meleeRange //Sets the range for melee
player_meleeWidth //Sets the width for melee
player_burstFireCooldown //Set the time in between firing for triple burst/semi auto weapons
g_speed //Set the walking speed
r_znear //Set the z axis clipping
r_zfar //Works in combination with r_znear to determine clipping
r_znear_depthhack //Works with the above two to determine clipping
cg_tracerlength //Set the length of the tracer for bullets
cg_tracerspeed //Set the speed of bullet tracers
cg_tracerwidth //Set the width of bullet tracers
compassSize //Set the compass size
scr_game_forceuav //Boolean, When set true, the uav is forced on
g_compassShowEnemies //Boolean, When set true, enemies will be shown on the minimap
cg_footsteps //Boolean, Used in a combination to create infinite uav
compassEnemyFootstepMaxRange //Set the max range for your compass to pick up enemy footsetps, part of infinite uav
compassEnemyFootstepMaxZ //The maximum vertical distance enemy may be from the player and appear on the compass, part of infinite uav
compassRadarUpdateTime //Set the rate at which the uav updates, part of infinite uav
cg_enemyNameFadeIn //Sets how long it takes for the enemies name to show up
cg_enemyNameFadeOut //Sets how long it takes for the enemies name to fade away
cg_friendlyNameFadeIn //Sets how long it takes for the friendly names to show up
cg_friendlyNameFadeOut //Sets how long it takes for the friendly names to fade away
cg_overheadNamesMaxDist //Sets how far away you can see friendly/enemy names
cg_overheadNamesFarDist //Part of setting how far away you can see friendly/enemy names
cg_overheadNamesGlow 0 0 0 0 //The zeroes can be changed to adjust the glow on overhead names
cg_overheadNamesFont //Sets the font size for overhead names
player_sustainAmmo //Boolean, When set true, players will not lose ammo
player_sprintUnlimited //Boolean, When set true, players have infinite sprint
perk_extraBreath //Number of seconds a player can hold breath
perk_speedMultiplier //Lightweight speed multiplier
perk_sprintmultiplier //Marathon length multiplier
g_knockback //Set the knockback from bullets/explosives
perk_weapSpreadMultiplier //Use this to adjust the steady aim perk
scr_dog_count //Used to determine how many dogs you get from the dog killstreak
scr_dog_health //Used to determine dog health
scr_dog_max_at_once //Used to determine max dogs on the feild at a time
scr_dog_time //Sets the time which dogs are allowed on the feild
cg_gun_x //Used to set the x offset for your gun position
cg_gun_y //Used to set the y offset for your gun position
cg_gun_z //Used to set the z offset for your gun position
cg_fov //Sets the feild of view ( Promod )
Clanname //Used to set clan names automatically
cg_thirdperson //Boolean, When set true, third person mode is activated
jump_height //Sets the jump height
scr_xpscale //Sets the multiplier for kill/objective points
scr_codpointsmatchscale //Sets the multiplier for cod points
scr_codpointsxpscale //Sets the comparison multiplier for xp vs cod points
timescale //Game speed multiplier
g_allowvote //Boolean, When set false, no voting against maps can occur
ui_allow_classchange //Boolean, When set false, players may not change their classes in game
scr_game_allowkillcam //Boolean, When set false, killcams are disabled
scr_game_hardpoints //Boolean, When set false, killstreaks are disabled
scr_game_onlyheadshots //Boolean, When set true, only headshots will kill
scr_game_perks //Boolean, When set false, no perks will be allowed
scr_hardcore //Boolean, When set true, hardcore mode will be enabled
scr_player_healthregentime //Set health regeneration time
scr_player_maxhealth //Set player maxhealth
scr_player_sprintTime //Set sprint time
scr_rcbomb_notimeout //Boolean, when set true, rc cars have no time limit
//Im sure you all want these extra usefull ones
onlinegame //Boolean, when set true, the game is considered online
xblive_privatematch //Boolean, when set false, the game is considered not to be private
xblive_rankedmatch //Boolean, when set true, the game is considered a ranked match
scr_forcerankedmatch //Boolean, when set true, a ranked match is forced
xblive_hostingprivateparty //Boolean, when set false, you are considered hosting an online party
onlinegameandhost //Boolean, when set true, the game is considered online and you are considered host
//This list will of course be constantly updated as I confirm new variables
Some Vision Dvars :
r_specularRoughnessMap //Boolean,when set true, It removes specular qualities from the map
r_fullbright //Boolean, when set true, a cartoonish vision is activated
r_lightTweakSunColor 0 0 0 0 //The zeroes can be edited to adjust colours
r_colormap //This is an odd function, only the values 0, 1, 2, and 3 produce effects ( Alien vision )
//More will be added as they are discovered and tested
Unique Zombie Mode Dvars :
perk_weapRateMultiplier //Sets the rate multiplier for double tap
perk_weapReloadMultiplier //Sets the rate multiplier for speed cola
perk_weapspreadMultiplier //Sets the spread of your crosshairs for steady aim
Revive_Trigger_Radius //Sets how far away you can revive people
magic_chest_movable //Boolean, when set false, the magic chest will never move
player_lastStandBleedoutTime //Works in multi as well I believe
//Will be updated with more if more are discovered working
Read Only Developer Cheats :
//Most of these are boolean and essentially useless (For the most part), but ive included them here for anyone who wishes to use them
sv_BigHeadMode
sv_DisableTheatre
sv_MakeMeHost
sv_EnableSuperuser
sv_SetAllFree
sv_DoubleCodPoints
sv_UnlockAllSlots
sv_UnlockAllIntel
sv_3xEXP
sv_InstantReload
sv_QuickHealthRecharge
sv_TripleBullet
sv_SuperPenetrate
sv_Invisible
sv_RadarAlwaysOn
sv_InfiniteSprint
sv_FullAmmo
sv_NoClip
sv_EnableDevCheats
Text Functions :
Script Constant Text On Screen :
variablenamehere = self createFontString( "Font type", size ); //Creates the string
variablenamehere setPoint( "Position", "Position", x, y ); //Sets string position
variablenamehere setText( "Text here" ); //Sets the text for the string
Positions :
- LEFT
- RIGHT
- TOP
- CENTER
- BOTTOM
Font Types :
- Default
- Objective
- Bigfixed
- Hudbig
To Destroy The Font String :
variablenamehere destroy();
Colour Coding For Text Functions :
Button Codes For Text Functions :
//Format : [{Button here}]
togglemenu //Start button
+scores //Back button
+attack //Right trigger
+speed_throw //Left trigger
+frag //Right bumper
+smoke //Left bumper
+melee //Right stick
+breath_sprint //Left stick
+gostand //A button
+stance //B button
+usereload //X button
weapnext //Y button
+actionslot 1 //Dpad UP
+actionslot 2 //Dpad DOWN
+actionslot 3 //Dpad LEFT
+actionslot 4 //Dpad RIGHT
Statistic Editing :
//Set Prestige
self maps\mp\gametypes\_persistence::statSet( "plevel", prestige, false );
//Set Xp
self maps\mp\gametypes\_persistence::statSet( "rankxp", xp, false );
//Set Cod Points
self maps\mp\gametypes\_persistence::statSet( "codpoints", cp, false );
//Set Time Played
self maps\mp\gametypes\_persistence::statSet( "time_played_total", seconds, false );
//Set Kills
self maps\mp\gametypes\_persistence::statSet( "kills", kills, false );
//Set Deaths
self maps\mp\gametypes\_persistence::statSet( "deaths", deaths, false );
//Set Headshots
self maps\mp\gametypes\_persistence::statSet( "headshots", headshots, false );
//Set Hits
self maps\mp\gametypes\_persistence::statSet( "hits", bullet hit, false);
//Set Bad Host Count
self maps\mp\gametypes\_persistence::statSet( "badhostcount", bad host counter, false);
//Set Misses
self maps\mp\gametypes\_persistence::statSet( "misses", bullet miss, false);
//Set Total Bullets shot
self maps\mp\gametypes\_persistence::statSet( "total_shots", bullet counter, false);
//Set Accuracy
self maps\mp\gametypes\_persistence::statSet( "accuracy", accuracy or KD, false);
//These are only useable in fastfile scripting
Format To Edit Points In Game ( Dvars ) :
scr_game_suicidepointloss //Boolean, when set true, suicide grants xp
scr_gametypehere_scorelimit //Sets the score limit
scr_gametypehere_score_assist //Sets assist points
scr_gametypehere_score_death //Sets death points
scr_gametypehere_score_headshot //Sets headshot points
scr_gametypehere_score_kill //Sets kill points
scr_gametypehere_score_suicide //Sets suicide points
scr_gametypehere_score_revive //Sets revive points
//Replace gametype here with the list below and then insert the value you want ( Use these like Dvars )
Gametype List :
dom - Domination
sd - Search And Destroy
sab - Sabotage
tdm - Team Death Match
koth - Headquarters
ctf - Capture The Flag
dem - Demolition
oic - One In The Chamber
hlnd - Stick And Stones
gun - Gun Game
shrp - Sharp Shooter
//Replace whatever you want in the section provided above
Give Weapon Commands ( Scripts, Gpds And XeXs ) :
self giveWeapon( "weaponname_modetype" ); //Gives weapon
self switchToWeapon( "weaponname_modetype" ); //Switches to weapon
self setSpawnWeapon( "weaponname_modetype" ); //Sets a weapon which the player must spawn with
give "weaponname_modetype" //Remove the quotes, used for xex and gpds
//Weapon lists below
Weapon List Multiplayer :
frag_grenade_mp
claymore_mp
m1911_mp
python_mp
cz75_mp
m14_mp
m16_mp
g11_lps_mp
famas_mp
ak74u_mp
mp5k_mp
mpl_mp
pm63_mp
spectre_mp
cz75dw_mp
ithaca_mp
rottweil72_mp
spas_mp
hs10_mp
aug_mp
galil_mp
commando_mp
fnfal_mp
dragunov_mp
l96a1_mp
rpk_mp
hk21_mp
m72_law_mp
china_lake_mp
crossbow_explosive_mp
knife_ballistic_mp
minigun_mp
Weapons List Zombies Kino :
frag_grenade_zm
claymore_zm
m1911_zm
m1911_upgraded_zm
python_zm
python_upgraded_zm
cz75_zm
cz75_upgraded_zm
m14_zm
m14_upgraded_zm
m16_zm
m16_gl_upgraded_zm
g11_lps_zm
g11_lps_upgraded_zm
famas_zm
famas_upgraded_zm
ak74u_zm
ak74u_upgraded_zm
mp5k_zm
mp5k_upgraded_zm
mp40_zm
mp40_upgraded_zm
mpl_zm
mpl_upgraded_zm
pm63_zm
pm63_upgraded_zm
spectre_zm
spectre_upgraded_zm
cz75dw_zm
cz75dw_upgraded_zm
ithaca_zm
ithaca_upgraded_zm
rottweil72_zm
rottweil72_upgraded_zm
spas_zm
spas_upgraded_zm
hs10_zm
hs10_upgraded_zm
aug_acog_zm
aug_acog_mk_upgraded_zm
galil_zm
galil_upgraded_zm
commando_zm
commando_upgraded_zm
fnfal_zm
fnfal_upgraded_zm
dragunov_zm
dragunov_upgraded_zm
l96a1_zm
l96a1_upgraded_zm
rpk_zm
rpk_upgraded_zm
hk21_zm
hk21_upgraded_zm
m72_law_zm
m72_law_upgraded_zm
china_lake_zm
china_lake_upgraded_zm
zombie_cymbal_monkey
ray_gun_zm
ray_gun_upgraded_zm
thundergun_zm
thundergun_upgraded_zm
crossbow_explosive_zm
crossbow_explosive_upgraded_zm
knife_ballistic_zm
knife_ballistic_upgraded_zm
knife_ballistic_bowie_zm
knife_ballistic_bowie_upgraded_zm
Weapons List Zombies Five :
Some Fun Stuff :
Button Binds In Scripts :
self AttackButtonPressed() //Left trigger
self AdsButtonPressed() //Right trigger
self JumpButtonPressed() //A Button
self UseButtonPressed() //X button
self ChangeSeatButtonPressed() //Y Button
self ThrowButtonPressed() //B Button
self FragButtonPressed() //Left bumper
self SecondaryOffhandButtonPressed() //Right bumper
self MeleeButtonPressed() //Right stick
ActionSlotOneButtonPressed //Dpad up
ActionSlotTwoButtonPressed //Dpad down
ActionSlotThreeButtonPressed //Dpad left
ActionSlotFourButtonPressed //Dpad right
//Used for things like If and While statements
Freezecontrols :
self freeze_player_controls( true ); //Freezes all player controls
self freeze_player_controls( false ); //Un-Freezes all player controls
Scripts :
Some Usefull Commands And Preset Variables :
//Usefull function format
self endon ( "condition" ); //Function will end on condition
self waittill ( "condition" ); //Function will execute on condition
self notify ( "condition ); //Used to create your own conditions
//Some usefull preset functions
self endon ( "death" ); //Ends script on death
self endon ( "disconnect" ); //Ends script on server disconnect
self endon ( "joined_spectators" ); //Ends script when a player goes spectator mode
self endon ( "killed_player" ); //Ends script when player dies
self waittill ( "spawned_player" ); //Waits until player spawns to execute a function
self waittill ( "death" ); //Waits until death to execute a function
self waittill ( "grenade_pullback" ); //Waits until a grenade is thrown to execute a function
self waittill ( "sprint_begin" ); //Waits until sprint begins to execute a function
self waittill ( "begin_firing" ); //Waits until weapon is fired to execute a function
self waittill ( "weapon_fired" ); //Waits until weapon is fired and will execute the function repeatedly
self waittill ( "weapon_change" ); //Waits until a weapon swap to execute a function
//Obvious where all of these can be used
Godmode :
//Create self thread doGod(); in the onplayerspawned(); then stick this anywhere
doGod()
{
self endon ("disconnect");
for(;

{
self.health = 99999;
wait 0.05;
}
}
Create A Verification System :
//Simple verification system for people who dont want to try too hard
//First stick this variable in your onplayerconnect();
self.needsVerifying = 1;
//Then go down to your onplayerspawned(); and create these two threads and stick in the freeze controls as well
self thread Verify();
self thread VerifcationProcess();
self freeze_player_controls( true );
//Then create this function for the verify thread
Verify()
{
self waittill ("death");
if(self.killedBy == "Gt here" | self.killedBy == "Gt here")
{
self.needsVerifying = 0;
self freeze_player_controls( false );
}
}
//Now since that is done, we will move along to creating the verificationprocess thread
VerifcationProcess()
{
if(self.needsVerifying == 1)
{
wait 3;
self thread maps\mp\gametypes\_hud_message::hintMessage("Status : Unverified Please Wait For Verification!");
self thread sayLoop();
}
else if(self.needsVerifying == 0)
{
self thread InsertPlayermodsThreadHere();
}
}
//As you can see we created a function inside the function, we will now create a script for it
sayLoop()
{
self endon("death"); //End this on death
for(;

//For loop, used to loop a function inside its parenthesis {}
{
self sayall("I Need Verification!"); //Console text
wait 5; //Function will wait 5 seconds and then loop itself
}
}
//This function will cause a loop of that sayAll text, deactivate any mods until they're verified, and freeze their controls
//Very simple straightforward kill to verify function.
Constant Forge Mode :
Button Monitoring System :
//Create self thread MonitorButtons(); in your onplayerspawned(); then stick this anywhere else
MonitorButtons()
{
self endon("disconnect");
for(;

{
if(self ActionSlotOneButtonPressed()) self notify("DPAD_UP");
if(self ActionSlotTwoButtonPressed()) self notify("DPAD_DOWN");
if(self ActionSlotThreeButtonPressed()) self notify("DPAD_LEFT");
if(self ActionSlotFourButtonPressed()) self notify("DPAD_RIGHT");
if(self AttackButtonPressed()) self notify("RT");
if(self AdsButtonPressed()) self notify("LT");
if(self SecondaryOffhandButtonPressed()) self notify("LB");
if(self FragButtonPressed()) self notify("RB");
if(self JumpButtonPressed()) self notify("A");
if(self UseButtonPressed()) self notify("X");
if(self ChangeSeatButtonPressed()) self notify ("Y");
if(self ThrowButtonPressed()) self notify ("B");
if(self MeleeButtonPressed()) self notify("RS");
wait 0.3;
}
}
//Creates self waittill("condition"); to "Bind buttons" in a sense
NoClip :
//Create self thread NoClip(); in your onplayerspawned(); then stick this anywhere else
NoClip()
{
self endon("disconnect");
self endon ("death");
for(;

{
self IPrintLnBold("Hold[{+melee}] To NoClip");
while(!self MeleeButtonPressed())
wait .1;
self IPrintLnBold("^5NoClip On!");
self.mod["linker"].origin = self.origin;
self linkTo(self.mod["linker"]);
self.mod["status_picked"] = true;
while(self MeleeButtonPressed())
{
self.mod["linker"] moveTo(bulletTrace(self getPlayerEyePosition(), self getPlayerEyePosition() + vector_scale(anglesToForward(self getPlayerAngles()), 100), false, self)["position"], .2);
wait .05;
}
self unlink();
self.mod["status_picked"] = false;
self IPrintLnBold("^9NoClip Off!");
}
}
getPlayerEyePosition()
{
if(self getStance() == "prone")
vector = self.origin + (0, 0, 11);
else if(self getStance() == "crouch")
vector = self.origin + (0, 0, 40);
else
vector = self.origin + (0, 0, 60);
return vector;
}
//Hold down your knife button to fly around
My Ac-130 Script ( Long Version ) :
//Launch the doac130() thread however possible, and stick this anywhere else
doac130()
{
self thread maps\mp\gametypes\_hud_message::hintMessage("^1Ac-130 Active! 60 Seconds To Rain Hell!");
self thread maps\mp\gametypes\_hud_message::hintMessage("^1Press [{weapnext}] To Change Cannons!");
self setClientDvar( "cg_drawGun", "0" );
self setClientDvar( "cg_drawCrosshair", "0" );
self thread doAc130105mmHUD();
self thread ac130weapons();
self thread ac130timer();
self thread ac130timersound();
wait 60;
self freeze_player_controls( false );
self setClientDvar( "cg_drawGun", "1" );
self setClientDvar( "cg_drawCrosshair", "1" );
self.mopen=0;
for(x=0; x<=self.tmen.size; x++) { self.display[x] destroy(); }
self notify("DESTROY");
self notify("DELETE");
self notify("NULL");
self suicide();
}
doAc130105mmHUD()
{
self thread ac130boxleftvert();
self thread ac130boxrightvert();
self thread ac130boxtophorz();
self thread ac130boxbottomhorz();
self thread ac130topline();
self thread ac130bottomline();
self thread ac130leftline();
self thread ac130rightline();
self thread ac130topleftleft();
self thread ac130toplefttop();
self thread ac130toprightright();
self thread ac130toprighttop();
self thread ac130bottomleftleft();
self thread ac130bottomleftbottom();
self thread ac130bottomrightright();
self thread ac130bottomrightbottom();
}
ac130boxleftvert()
{
ac130boxleftvert = newClientHudElem( self );
ac130boxleftvert.x = -30;
ac130boxleftvert.y = 0;
ac130boxleftvert.alignX = "center";
ac130boxleftvert.alignY = "middle";
ac130boxleftvert.horzAlign = "center";
ac130boxleftvert.vertAlign = "middle";
ac130boxleftvert.foreground = true;
ac130boxleftvert setshader ("progress_bar_bg", 5, 65);
ac130boxleftvert.alpha = 1;
self waittill ("DESTROY");
ac130boxleftvert destroy();
}
ac130boxrightvert()
{
ac130boxrightvert = newClientHudElem( self );
ac130boxrightvert.x = 30;
ac130boxrightvert.y = 0;
ac130boxrightvert.alignX = "center";
ac130boxrightvert.alignY = "middle";
ac130boxrightvert.horzAlign = "center";
ac130boxrightvert.vertAlign = "middle";
ac130boxrightvert.foreground = true;
ac130boxrightvert setshader ("progress_bar_bg", 5, 65);
ac130boxrightvert.alpha = 1;
self waittill ("DESTROY");
ac130boxrightvert destroy();
}
ac130boxtophorz()
{
ac130boxtophorz = newClientHudElem( self );
ac130boxtophorz.x = 0;
ac130boxtophorz.y = -25;
ac130boxtophorz.alignX = "center";
ac130boxtophorz.alignY = "middle";
ac130boxtophorz.horzAlign = "center";
ac130boxtophorz.vertAlign = "middle";
ac130boxtophorz.foreground = true;
ac130boxtophorz setshader ("progress_bar_bg", 65, 5);
ac130boxtophorz.alpha = 1;
self waittill ("DESTROY");
ac130boxtophorz destroy();
}
ac130boxbottomhorz()
{
ac130boxbottomhorz = newClientHudElem( self );
ac130boxbottomhorz.x = 0;
ac130boxbottomhorz.y = 25;
ac130boxbottomhorz.alignX = "center";
ac130boxbottomhorz.alignY = "middle";
ac130boxbottomhorz.horzAlign = "center";
ac130boxbottomhorz.vertAlign = "middle";
ac130boxbottomhorz.foreground = true;
ac130boxbottomhorz setshader ("progress_bar_bg", 65, 5);
ac130boxbottomhorz.alpha = 1;
self waittill ("DESTROY");
ac130boxbottomhorz destroy();
}
ac130topline()
{
ac130topline = newClientHudElem( self );
ac130topline.x = 0;
ac130topline.y = -50;
ac130topline.alignX = "center";
ac130topline.alignY = "middle";
ac130topline.horzAlign = "center";
ac130topline.vertAlign = "middle";
ac130topline.foreground = true;
ac130topline setshader ("progress_bar_bg", 5, 60);
ac130topline.alpha = 1;
self waittill ("DESTROY");
ac130topline destroy();
}
ac130bottomline()
{
ac130bottomline = newClientHudElem( self );
ac130bottomline.x = 0;
ac130bottomline.y = 50;
ac130bottomline.alignX = "center";
ac130bottomline.alignY = "middle";
ac130bottomline.horzAlign = "center";
ac130bottomline.vertAlign = "middle";
ac130bottomline.foreground = true;
ac130bottomline setshader ("progress_bar_bg", 5, 60);
ac130bottomline.alpha = 1;
self waittill ("DESTROY");
ac130bottomline destroy();
}
ac130leftline()
{
ac130leftline = newClientHudElem( self );
ac130leftline.x = -64.5;
ac130leftline.y = 0;
ac130leftline.alignX = "center";
ac130leftline.alignY = "middle";
ac130leftline.horzAlign = "center";
ac130leftline.vertAlign = "middle";
ac130leftline.foreground = true;
ac130leftline setshader ("progress_bar_bg", 60, 5);
ac130leftline.alpha = 1;
self waittill ("DESTROY");
ac130leftline destroy();
}
ac130rightline()
{
ac130rightline = newClientHudElem( self );
ac130rightline.x = 64;
ac130rightline.y = 0;
ac130rightline.alignX = "center";
ac130rightline.alignY = "middle";
ac130rightline.horzAlign = "center";
ac130rightline.vertAlign = "middle";
ac130rightline.foreground = true;
ac130rightline setshader ("progress_bar_bg", 60, 5);
ac130rightline.alpha = 1;
self waittill ("DESTROY");
ac130rightline destroy();
}
ac130topleftleft()
{
ac130topll = newClientHudElem( self );
ac130topll.x = -125;
ac130topll.y = -87;
ac130topll.alignX = "center";
ac130topll.alignY = "middle";
ac130topll.horzAlign = "center";
ac130topll.vertAlign = "middle";
ac130topll.foreground = true;
ac130topll setshader ("progress_bar_bg", 5, 35);
ac130topll.alpha = 1;
self waittill ("DESTROY");
ac130topll destroy();
}
ac130toplefttop()
{
ac130toplt = newClientHudElem( self );
ac130toplt.x = -110;
ac130toplt.y = -100;
ac130toplt.alignX = "center";
ac130toplt.alignY = "middle";
ac130toplt.horzAlign = "center";
ac130toplt.vertAlign = "middle";
ac130toplt.foreground = true;
ac130toplt setshader ("progress_bar_bg", 35, 5);
ac130toplt.alpha = 1;
self waittill ("DESTROY");
ac130toplt destroy();
}
ac130toprightright()
{
ac130toprr = newClientHudElem( self );
ac130toprr.x = 125;
ac130toprr.y = -87;
ac130toprr.alignX = "center";
ac130toprr.alignY = "middle";
ac130toprr.horzAlign = "center";
ac130toprr.vertAlign = "middle";
ac130toprr.foreground = true;
ac130toprr setshader ("progress_bar_bg", 5, 35);
ac130toprr.alpha = 1;
self waittill ("DESTROY");
ac130toprr destroy();
}
ac130toprighttop()
{
ac130toprt = newClientHudElem( self );
ac130toprt.x = 110;
ac130toprt.y = -100;
ac130toprt.alignX = "center";
ac130toprt.alignY = "middle";
ac130toprt.horzAlign = "center";
ac130toprt.vertAlign = "middle";
ac130toprt.foreground = true;
ac130toprt setshader ("progress_bar_bg", 35, 5);
ac130toprt.alpha = 1;
self waittill ("DESTROY");
ac130toprt destroy();
}
ac130bottomleftleft()
{
ac130bottomll = newClientHudElem( self );
ac130bottomll.x = -125;
ac130bottomll.y = 87;
ac130bottomll.alignX = "center";
ac130bottomll.alignY = "middle";
ac130bottomll.horzAlign = "center";
ac130bottomll.vertAlign = "middle";
ac130bottomll.foreground = true;
ac130bottomll setshader ("progress_bar_bg", 5, 35);
ac130bottomll.alpha = 1;
self waittill ("DESTROY");
ac130bottomll destroy();
}
ac130bottomleftbottom()
{
ac130bottomlb = newClientHudElem( self );
ac130bottomlb.x = -110;
ac130bottomlb.y = 100;
ac130bottomlb.alignX = "center";
ac130bottomlb.alignY = "middle";
ac130bottomlb.horzAlign = "center";
ac130bottomlb.vertAlign = "middle";
ac130bottomlb.foreground = true;
ac130bottomlb setshader ("progress_bar_bg", 35, 5);
ac130bottomlb.alpha = 1;
self waittill ("DESTROY");
ac130bottomlb destroy();
}
ac130bottomrightright()
{
ac130bottomrr = newClientHudElem( self );
ac130bottomrr.x = 125;
ac130bottomrr.y = 87;
ac130bottomrr.alignX = "center";
ac130bottomrr.alignY = "middle";
ac130bottomrr.horzAlign = "center";
ac130bottomrr.vertAlign = "middle";
ac130bottomrr.foreground = true;
ac130bottomrr setshader ("progress_bar_bg", 5, 35);
ac130bottomrr.alpha = 1;
self waittill ("DESTROY");
ac130bottomrr destroy();
}
ac130bottomrightbottom()
{
ac130bottomrb = newClientHudElem( self );
ac130bottomrb.x = 110;
ac130bottomrb.y = 100;
ac130bottomrb.alignX = "center";
ac130bottomrb.alignY = "middle";
ac130bottomrb.horzAlign = "center";
ac130bottomrb.vertAlign = "middle";
ac130bottomrb.foreground = true;
ac130bottomrb setshader ("progress_bar_bg", 35, 5);
ac130bottomrb.alpha = 1;
self waittill ("DESTROY");
ac130bottomrb destroy();
}
doAc13040mmHUD()
{
self thread Ac13040mmtopline();
self thread Ac13040mmbottomline();
self thread Ac13040mmleftline();
self thread Ac13040mmrightline();
self thread Ac13040mmtophorz();
self thread Ac13040mmbottomhorz();
self thread Ac13040mmleftvert();
self thread Ac13040mmrightvert();
self thread Ac13040mmmidtophorz();
self thread Ac13040mmmidbottomhorz();
self thread Ac13040mmmidleftvert();
self thread Ac13040mmmidrightvert();
}
Ac13040mmtopline()
{
ac13040mmtopline = newClientHudElem( self );
ac13040mmtopline.x = 0;
ac13040mmtopline.y = -70;
ac13040mmtopline.alignX = "center";
ac13040mmtopline.alignY = "middle";
ac13040mmtopline.horzAlign = "center";
ac13040mmtopline.vertAlign = "middle";
ac13040mmtopline.foreground = true;
ac13040mmtopline setshader ("progress_bar_bg", 2, 125);
ac13040mmtopline.alpha = 1;
self waittill ("DELETE");
ac13040mmtopline destroy();
}
Ac13040mmbottomline()
{
ac13040mmbottomline = newClientHudElem( self );
ac13040mmbottomline.x = 0;
ac13040mmbottomline.y = 70;
ac13040mmbottomline.alignX = "center";
ac13040mmbottomline.alignY = "middle";
ac13040mmbottomline.horzAlign = "center";
ac13040mmbottomline.vertAlign = "middle";
ac13040mmbottomline.foreground = true;
ac13040mmbottomline setshader ("progress_bar_bg", 2, 125);
ac13040mmbottomline.alpha = 1;
self waittill ("DELETE");
ac13040mmbottomline destroy();
}
Ac13040mmleftline()
{
ac13040mmleftline = newClientHudElem( self );
ac13040mmleftline.x = -85;
ac13040mmleftline.y = 0;
ac13040mmleftline.alignX = "center";
ac13040mmleftline.alignY = "middle";
ac13040mmleftline.horzAlign = "center";
ac13040mmleftline.vertAlign = "middle";
ac13040mmleftline.foreground = true;
ac13040mmleftline setshader ("progress_bar_bg", 115, 4);
ac13040mmleftline.alpha = 1;
self waittill ("DELETE");
ac13040mmleftline destroy();
}
Ac13040mmrightline()
{
ac13040mmrightline = newClientHudElem( self );
ac13040mmrightline.x = 85;
ac13040mmrightline.y = 0;
ac13040mmrightline.alignX = "center";
ac13040mmrightline.alignY = "middle";
ac13040mmrightline.horzAlign = "center";
ac13040mmrightline.vertAlign = "middle";
ac13040mmrightline.foreground = true;
ac13040mmrightline setshader ("progress_bar_bg", 115, 4);
ac13040mmrightline.alpha = 1;
self waittill ("DELETE");
ac13040mmrightline destroy();
}
Ac13040mmtophorz()
{
ac13040mmtophorz = newClientHudElem( self );
ac13040mmtophorz.x = 0;
ac13040mmtophorz.y = -118;
ac13040mmtophorz.alignX = "center";
ac13040mmtophorz.alignY = "middle";
ac13040mmtophorz.horzAlign = "center";
ac13040mmtophorz.vertAlign = "middle";
ac13040mmtophorz.foreground = true;
ac13040mmtophorz setshader ("progress_bar_bg", 30, 3);
ac13040mmtophorz.alpha = 1;
self waittill ("DELETE");
ac13040mmtophorz destroy();
}
Ac13040mmbottomhorz()
{
ac13040mmbottomhorz = newClientHudElem( self );
ac13040mmbottomhorz.x = 0;
ac13040mmbottomhorz.y = 118;
ac13040mmbottomhorz.alignX = "center";
ac13040mmbottomhorz.alignY = "middle";
ac13040mmbottomhorz.horzAlign = "center";
ac13040mmbottomhorz.vertAlign = "middle";
ac13040mmbottomhorz.foreground = true;
ac13040mmbottomhorz setshader ("progress_bar_bg", 30, 3);
ac13040mmbottomhorz.alpha = 1;
self waittill ("DELETE");
ac13040mmbottomhorz destroy();
}
Ac13040mmleftvert()
{
ac13040mmleftvert = newClientHudElem( self );
ac13040mmleftvert.x = -142;
ac13040mmleftvert.y = 0;
ac13040mmleftvert.alignX = "center";
ac13040mmleftvert.alignY = "middle";
ac13040mmleftvert.horzAlign = "center";
ac13040mmleftvert.vertAlign = "middle";
ac13040mmleftvert.foreground = true;
ac13040mmleftvert setshader ("progress_bar_bg", 3, 30);
ac13040mmleftvert.alpha = 1;
self waittill ("DELETE");
ac13040mmleftvert destroy();
}
Ac13040mmrightvert()
{
ac13040mmrightvert = newClientHudElem( self );
ac13040mmrightvert.x = 142;
ac13040mmrightvert.y = 0;
ac13040mmrightvert.alignX = "center";
ac13040mmrightvert.alignY = "middle";
ac13040mmrightvert.horzAlign = "center";
ac13040mmrightvert.vertAlign = "middle";
ac13040mmrightvert.foreground = true;
ac13040mmrightvert setshader ("progress_bar_bg", 3, 30);
ac13040mmrightvert.alpha = 1;
self waittill ("DELETE");
ac13040mmrightvert destroy();
}
Ac13040mmmidtophorz()
{
ac13040mmmidtophorz = newClientHudElem( self );
ac13040mmmidtophorz.x = 0;
ac13040mmmidtophorz.y = -69;
ac13040mmmidtophorz.alignX = "center";
ac13040mmmidtophorz.alignY = "middle";
ac13040mmmidtophorz.horzAlign = "center";
ac13040mmmidtophorz.vertAlign = "middle";
ac13040mmmidtophorz.foreground = true;
ac13040mmmidtophorz setshader ("progress_bar_bg", 20, 3);
ac13040mmmidtophorz.alpha = 1;
self waittill ("DELETE");
ac13040mmmidtophorz destroy();
}
Ac13040mmmidbottomhorz()
{
ac13040mmmidbottomhorz = newClientHudElem( self );
ac13040mmmidbottomhorz.x = 0;
ac13040mmmidbottomhorz.y = 69;
ac13040mmmidbottomhorz.alignX = "center";
ac13040mmmidbottomhorz.alignY = "middle";
ac13040mmmidbottomhorz.horzAlign = "center";
ac13040mmmidbottomhorz.vertAlign = "middle";
ac13040mmmidbottomhorz.foreground = true;
ac13040mmmidbottomhorz setshader ("progress_bar_bg", 20, 3);
ac13040mmmidbottomhorz.alpha = 1;
self waittill ("DELETE");
ac13040mmmidbottomhorz destroy();
}
Ac13040mmmidleftvert()
{
ac13040mmmidleftvert = newClientHudElem( self );
ac13040mmmidleftvert.x = -81;
ac13040mmmidleftvert.y = 0;
ac13040mmmidleftvert.alignX = "center";
ac13040mmmidleftvert.alignY = "middle";
ac13040mmmidleftvert.horzAlign = "center";
ac13040mmmidleftvert.vertAlign = "middle";
ac13040mmmidleftvert.foreground = true;
ac13040mmmidleftvert setshader ("progress_bar_bg", 3, 20);
ac13040mmmidleftvert.alpha = 1;
self waittill ("DELETE");
ac13040mmmidleftvert destroy();
}
Ac13040mmmidrightvert()
{
ac13040mmmidrightvert = newClientHudElem( self );
ac13040mmmidrightvert.x = 81;
ac13040mmmidrightvert.y = 0;
ac13040mmmidrightvert.alignX = "center";
ac13040mmmidrightvert.alignY = "middle";
ac13040mmmidrightvert.horzAlign = "center";
ac13040mmmidrightvert.vertAlign = "middle";
ac13040mmmidrightvert.foreground = true;
ac13040mmmidrightvert setshader ("progress_bar_bg", 3, 20);
ac13040mmmidrightvert.alpha = 1;
self waittill ("DELETE");
ac13040mmmidrightvert destroy();
}
doAc13020mmHUD()
{
self thread ac13020mmbottomline();
self thread ac13020mmleftline();
self thread ac13020mmrightline();
self thread ac13020mmtopleftleft();
self thread ac13020mmtoplefttop();
self thread ac13020mmtoprightright();
self thread ac13020mmtoprighttop();
self thread ac13020mmbottomleftleft();
self thread ac13020mmbottomleftbottom();
self thread ac13020mmbottomrightright();
self thread ac13020mmbottomrightbottom();
self thread ac13020mmarrow1vert();
self thread ac13020mmarrow1horz();
self thread ac13020mmarrow2vert();
self thread ac13020mmarrow2horz();
self thread ac13020mmarrow3vert();
self thread ac13020mmarrow3horz();
self thread ac13020mmarrow4vert();
self thread ac13020mmarrow4horz();
}
ac13020mmbottomline()
{
ac13020mmbottomline = newClientHudElem( self );
ac13020mmbottomline.x = 0;
ac13020mmbottomline.y = 20;
ac13020mmbottomline.alignX = "center";
ac13020mmbottomline.alignY = "middle";
ac13020mmbottomline.horzAlign = "center";
ac13020mmbottomline.vertAlign = "middle";
ac13020mmbottomline.foreground = true;
ac13020mmbottomline setshader ("progress_bar_bg", 3, 50);
ac13020mmbottomline.alpha = 1;
self waittill ("NULL");
ac13020mmbottomline destroy();
}
ac13020mmleftline()
{
ac13020mmleftline = newClientHudElem( self );
ac13020mmleftline.x = -25;
ac13020mmleftline.y = 0;
ac13020mmleftline.alignX = "center";
ac13020mmleftline.alignY = "middle";
ac13020mmleftline.horzAlign = "center";
ac13020mmleftline.vertAlign = "middle";
ac13020mmleftline.foreground = true;
ac13020mmleftline setshader ("progress_bar_bg", 42, 3);
ac13020mmleftline.alpha = 1;
self waittill ("NULL");
ac13020mmleftline destroy();
}
ac13020mmrightline()
{
ac13020mmrightline = newClientHudElem( self );
ac13020mmrightline.x = 25;
ac13020mmrightline.y = 0;
ac13020mmrightline.alignX = "center";
ac13020mmrightline.alignY = "middle";
ac13020mmrightline.horzAlign = "center";
ac13020mmrightline.vertAlign = "middle";
ac13020mmrightline.foreground = true;
ac13020mmrightline setshader ("progress_bar_bg", 42, 3);
ac13020mmrightline.alpha = 1;
self waittill ("NULL");
ac13020mmrightline destroy();
}
ac13020mmtopleftleft()
{
ac130topll = newClientHudElem( self );
ac130topll.x = -75;
ac130topll.y = -47;
ac130topll.alignX = "center";
ac130topll.alignY = "middle";
ac130topll.horzAlign = "center";
ac130topll.vertAlign = "middle";
ac130topll.foreground = true;
ac130topll setshader ("progress_bar_bg", 5, 35);
ac130topll.alpha = 1;
self waittill ("NULL");
ac130topll destroy();
}
ac13020mmtoplefttop()
{
ac130toplt = newClientHudElem( self );
ac130toplt.x = -60;
ac130toplt.y = -60;
ac130toplt.alignX = "center";
ac130toplt.alignY = "middle";
ac130toplt.horzAlign = "center";
ac130toplt.vertAlign = "middle";
ac130toplt.foreground = true;
ac130toplt setshader ("progress_bar_bg", 35, 5);
ac130toplt.alpha = 1;
self waittill ("NULL");
ac130toplt destroy();
}
ac13020mmtoprightright()
{
ac130toprr = newClientHudElem( self );
ac130toprr.x = 75;
ac130toprr.y = -47;
ac130toprr.alignX = "center";
ac130toprr.alignY = "middle";
ac130toprr.horzAlign = "center";
ac130toprr.vertAlign = "middle";
ac130toprr.foreground = true;
ac130toprr setshader ("progress_bar_bg", 5, 35);
ac130toprr.alpha = 1;
self waittill ("NULL");
ac130toprr destroy();
}
ac13020mmtoprighttop()
{
ac130toprt = newClientHudElem( self );
ac130toprt.x = 60;
ac130toprt.y = -60;
ac130toprt.alignX = "center";
ac130toprt.alignY = "middle";
ac130toprt.horzAlign = "center";
ac130toprt.vertAlign = "middle";
ac130toprt.foreground = true;
ac130toprt setshader ("progress_bar_bg", 35, 5);
ac130toprt.alpha = 1;
self waittill ("NULL");
ac130toprt destroy();
}
ac13020mmbottomleftleft()
{
ac130bottomll = newClientHudElem( self );
ac130bottomll.x = -75;
ac130bottomll.y = 47;
ac130bottomll.alignX = "center";
ac130bottomll.alignY = "middle";
ac130bottomll.horzAlign = "center";
ac130bottomll.vertAlign = "middle";
ac130bottomll.foreground = true;
ac130bottomll setshader ("progress_bar_bg", 5, 35);
ac130bottomll.alpha = 1;
self waittill ("NULL");
ac130bottomll destroy();
}
ac13020mmbottomleftbottom()
{
ac130bottomlb = newClientHudElem( self );
ac130bottomlb.x = -60;
ac130bottomlb.y = 60;
ac130bottomlb.alignX = "center";
ac130bottomlb.alignY = "middle";
ac130bottomlb.horzAlign = "center";
ac130bottomlb.vertAlign = "middle";
ac130bottomlb.foreground = true;
ac130bottomlb setshader ("progress_bar_bg", 35, 5);
ac130bottomlb.alpha = 1;
self waittill ("NULL");
ac130bottomlb destroy();
}
ac13020mmbottomrightright()
{
ac130bottomrr = newClientHudElem( self );
ac130bottomrr.x = 75;
ac130bottomrr.y = 47;
ac130bottomrr.alignX = "center";
ac130bottomrr.alignY = "middle";
ac130bottomrr.horzAlign = "center";
ac130bottomrr.vertAlign = "middle";
ac130bottomrr.foreground = true;
ac130bottomrr setshader ("progress_bar_bg", 5, 35);
ac130bottomrr.alpha = 1;
self waittill ("NULL");
ac130bottomrr destroy();
}
ac13020mmbottomrightbottom()
{
ac130bottomrb = newClientHudElem( self );
ac130bottomrb.x = 60;
ac130bottomrb.y = 60;
ac130bottomrb.alignX = "center";
ac130bottomrb.alignY = "middle";
ac130bottomrb.horzAlign = "center";
ac130bottomrb.vertAlign = "middle";
ac130bottomrb.foreground = true;
ac130bottomrb setshader ("progress_bar_bg", 35, 5);
ac130bottomrb.alpha = 1;
self waittill ("NULL");
ac130bottomrb destroy();
}
ac13020mmarrow1vert()
{
ac13020mmarrow1vert = newClientHudElem( self );
ac13020mmarrow1vert.x = 10;
ac13020mmarrow1vert.y = 12;
ac13020mmarrow1vert.alignX = "center";
ac13020mmarrow1vert.alignY = "middle";
ac13020mmarrow1vert.horzAlign = "center";
ac13020mmarrow1vert.vertAlign = "middle";
ac13020mmarrow1vert.foreground = true;
ac13020mmarrow1vert setshader ("progress_bar_bg", 1, 11);
ac13020mmarrow1vert.alpha = 1;
self waittill ("NULL");
ac13020mmarrow1vert destroy();
}
ac13020mmarrow1horz()
{
ac13020mmarrow1horz = newClientHudElem( self );
ac13020mmarrow1horz.x = 15;
ac13020mmarrow1horz.y = 8;
ac13020mmarrow1horz.alignX = "center";
ac13020mmarrow1horz.alignY = "middle";
ac13020mmarrow1horz.horzAlign = "center";
ac13020mmarrow1horz.vertAlign = "middle";
ac13020mmarrow1horz.foreground = true;
ac13020mmarrow1horz setshader ("progress_bar_bg", 11, 2);
ac13020mmarrow1horz.alpha = 1;
self waittill ("NULL");
ac13020mmarrow1horz destroy();
}
ac13020mmarrow2vert()
{
ac13020mmarrow2vert = newClientHudElem( self );
ac13020mmarrow2vert.x = 15;
ac13020mmarrow2vert.y = 17;
ac13020mmarrow2vert.alignX = "center";
ac13020mmarrow2vert.alignY = "middle";
ac13020mmarrow2vert.horzAlign = "center";
ac13020mmarrow2vert.vertAlign = "middle";
ac13020mmarrow2vert.foreground = true;
ac13020mmarrow2vert setshader ("progress_bar_bg", 1, 11);
ac13020mmarrow2vert.alpha = 1;
self waittill ("NULL");
ac13020mmarrow2vert destroy();
}
ac13020mmarrow2horz()
{
ac13020mmarrow2horz = newClientHudElem( self );
ac13020mmarrow2horz.x = 20;
ac13020mmarrow2horz.y = 13;
ac13020mmarrow2horz.alignX = "center";
ac13020mmarrow2horz.alignY = "middle";
ac13020mmarrow2horz.horzAlign = "center";
ac13020mmarrow2horz.vertAlign = "middle";
ac13020mmarrow2horz.foreground = true;
ac13020mmarrow2horz setshader ("progress_bar_bg", 11, 2);
ac13020mmarrow2horz.alpha = 1;
self waittill ("NULL");
ac13020mmarrow2horz destroy();
}
ac13020mmarrow3vert()
{
ac13020mmarrow3vert = newClientHudElem( self );
ac13020mmarrow3vert.x = 20;
ac13020mmarrow3vert.y = 22;
ac13020mmarrow3vert.alignX = "center";
ac13020mmarrow3vert.alignY = "middle";
ac13020mmarrow3vert.horzAlign = "center";
ac13020mmarrow3vert.vertAlign = "middle";
ac13020mmarrow3vert.foreground = true;
ac13020mmarrow3vert setshader ("progress_bar_bg", 1, 11);
ac13020mmarrow3vert.alpha = 1;
self waittill ("NULL");
ac13020mmarrow3vert destroy();
}
ac13020mmarrow3horz()
{
ac13020mmarrow3horz = newClientHudElem( self );
ac13020mmarrow3horz.x = 25;
ac13020mmarrow3horz.y = 18;
ac13020mmarrow3horz.alignX = "center";
ac13020mmarrow3horz.alignY = "middle";
ac13020mmarrow3horz.horzAlign = "center";
ac13020mmarrow3horz.vertAlign = "middle";
ac13020mmarrow3horz.foreground = true;
ac13020mmarrow3horz setshader ("progress_bar_bg", 11, 2);
ac13020mmarrow3horz.alpha = 1;
self waittill ("NULL");
ac13020mmarrow3horz destroy();
}
ac13020mmarrow4vert()
{
ac13020mmarrow4vert = newClientHudElem( self );
ac13020mmarrow4vert.x = 25;
ac13020mmarrow4vert.y = 27;
ac13020mmarrow4vert.alignX = "center";
ac13020mmarrow4vert.alignY = "middle";
ac13020mmarrow4vert.horzAlign = "center";
ac13020mmarrow4vert.vertAlign = "middle";
ac13020mmarrow4vert.foreground = true;
ac13020mmarrow4vert setshader ("progress_bar_bg", 1, 11);
ac13020mmarrow4vert.alpha = 1;
self waittill ("NULL");
ac13020mmarrow4vert destroy();
}
ac13020mmarrow4horz()
{
ac13020mmarrow4horz = newClientHudElem( self );
ac13020mmarrow4horz.x = 30;
ac13020mmarrow4horz.y = 23;
ac13020mmarrow4horz.alignX = "center";
ac13020mmarrow4horz.alignY = "middle";
ac13020mmarrow4horz.horzAlign = "center";
ac13020mmarrow4horz.vertAlign = "middle";
ac13020mmarrow4horz.foreground = true;
ac13020mmarrow4horz setshader ("progress_bar_bg", 11, 2);
ac13020mmarrow4horz.alpha = 1;
self waittill ("NULL");
ac13020mmarrow4horz destroy();
}
ac130weapons()
{
self endon("death");
for(;

{
self.ac130weapon = "1";
if(self.ac130weapon == 1)
{
self thread ac130105mm();
self thread doAc130105mmHUD();
self notify("NULL");
}
wait 1;
self waittill ("Y");
self.ac130weapon = "2";
if(self.ac130weapon == 2)
{
self thread ac13040mm();
self thread doAc13040mmHUD();
self notify("DESTROY");
}
wait 1;
self waittill ("Y");
self.ac130weapon = "3";
if(self.ac130weapon == 3)
{
self thread ac13020mm();
self thread doAc13020mmHUD();
self notify("DELETE");
}
wait 2;
self waittill ("Y");
}
}
ac130105mm()
{
self endon ("death");
self.ac130weapon = "1";
self iPrintlnBold("^5105mm Cannon Ready For Action!");
self takeallweapons();
self GiveWeapon( "defaultweapon_mp" );
self GiveWeapon( "frag_grenade_mp" );
self switchToWeapon( "defaultweapon_mp" );
for(;

{
self waittill( "begin_firing" );
if(self.ac130weapon == "1")
{
self iPrintlnBold("^1Arming 105mm Cannon!");
trace=bullettrace(self gettagorigin("j_head"),self gettagorigin("j_head")+anglestoforward(self getplayerangles())*100000,1,self)["position"];
bigmm=loadfx("explosions/fx_exp_aerial");
playfx(bigmm,trace);
self playsound("mpl_sd_exp_suitcase_bomb_main");
radiusdamage(trace,1300,2400,1100,self);
wait 2.5;
self iPrintlnBold("^2Gun Ready!");
}
}
}
ac13040mm()
{
self endon ("death");
self.ac130weapon = "2";
self iPrintlnBold("^340mm Cannon Ready For Action!");
for(;

{
self waittill( "weapon_fired" );
if(self.ac130weapon == "2")
{
trace=bullettrace(self gettagorigin("j_head"),self gettagorigin("j_head")+anglestoforward(self getplayerangles())*100000,1,self)["position"];
smallmm=loadfx("vehicle/vexplosion/fx_vexplode_heli_killstreak_exp_sm");
playfx(smallmm,trace);
self playsound("mpl_sd_exp_suitcase_bomb_main");
radiusdamage(trace,600,1100,500,self);
}
}
}
ac13020mm()
{
self endon("death");
self.ac130weapon = "3";
self iPrintlnBold("^220mm Gun Ready For Action!");
self takeallweapons();
self GiveWeapon( "minigun_mp" );
self switchToWeapon( "minigun_mp" );
}
ac130timer( duration )
{
level.HUDItem[ "timer" ] = newClientHudElem( self );
level.HUDItem[ "timer" ].x = -100;
level.HUDItem[ "timer" ].y = 0;
level.HUDItem[ "timer" ].alignX = "right";
level.HUDItem[ "timer" ].alignY = "bottom";
level.HUDItem[ "timer" ].horzAlign = "right";
level.HUDItem[ "timer" ].vertAlign = "bottom";
level.HUDItem[ "timer" ].fontScale = 2.5;
level.HUDItem[ "timer" ] setTimer( 60.0 );
level.HUDItem[ "timer" ].alpha = 1.0;
level.HUDItem[ "timer" ] setTimer( duration );
self waittill("death");
level.HUDItem[ "timer" ] destroy();
}
ac130timersound()
{
self endon ("death");
for(;

{
self playSound("mpl_sab_ui_suitcasebomb_timer");
wait 1;
}
}
//Toggle through the cannons with Y
//You also need my monitorbuttons which is listed in a spoiler above
Pulsating text :
//Create self thread smile(2); in your onplayerspawned(); and stick this anywhere else
smile(period)
{
s = self createFontString( "default", 2.3 );
s setPoint("CENTER","BOTTOM",0,-35);
s setText("Insert your text here");
s.sort = -10;
s.color = (randomFloat(1),randomFloat(1),randomFloat(1));
t = 0;
for (;
{
if ( s.alpha<.01 )
s.color = (randomFloat(1),randomFloat(1),randomFloat(1));
s.alpha = (cos(360*t/period)+1)/2;
t += .05;
wait .05;
}
}
//Nifty colour pulsing text on screen
Teleport :
Create Models In Game :
Nuke Bullets ( Only works on Nuketown ) :
//Create self thread NukeBullets(); in your onplayerspawned(); and stick this anywhere else
NukeBullets()
{
self endon("disconnect");
self waittill( "weapon_fired" );
trace=bullettrace(self gettagorigin("j_head"),self gettagorigin("j_head")+anglestoforward(self getplayerangles())*100000,1,self)["position"];
nuke=loadfx("maps/mp_maps/fx_mp_nuked_nuclear_explosion");
playfx(nuke,trace);
self playsound("amb_end_nuke");
radiusdamage(trace,4000,4000,4000,self);
}
//Nuke bullets only work on nuketown
Explosive Bullets ( Works on every map ) :
Disco Mode :
Give Killstreaks :
UFO Mode :
//Create self thread Ufo(); in your onplayerswpawned(); then stick this anywhere else
Ufo()
{
self endon ( "disconnect" );
self endon ( "death" );
maps\mp\gametypes\_spectating::setSpectatePermissions();
for(;
{
self waittill("DPAD_DOWN");
self allowSpectateTeam( "freelook", true );
self.sessionstate = "spectator";
self setContents( 0 );
self waittill("DPAD_DOWN");
self.sessionstate = "playing";
self allowSpectateTeam( "freelook", false );
self setContents( 100 );
}
}
//Slightly less usefull than Noclip, but im sure it has its uses
//You need my button monitor listed above for this to work
Unlock All Achievements :
//Create self thread Achievements(); in your onplayerswpawned(); then stick this anywhere else
Achievements()
{
Achiev[1] = "SP_WIN_CUBA";
Achiev[2] = "SP_WIN_VORKUTA";
Achiev[3] = "SP_WIN_PENTAGON";
Achiev[4] = "SP_WIN_FLASHPOINT";
Achiev[5] = "SP_WIN_KHE_SANH";
Achiev[6] = "SP_WIN_HUE_CITY";
Achiev[7] = "SP_WIN_KOWLOON";
Achiev[8] = "SP_WIN_RIVER";
Achiev[9] = "SP_WIN_FULLAHEAD";
Achiev[10] = "SP_WIN_INTERROGATION_ESCAPE";
Achiev[11] = "SP_WIN_UNDERWATERBASE";
Achiev[12] = "SP_VWIN_FLASHPOINT";
Achiev[13] = "SP_VWIN_HUE_CITY";
Achiev[14] = "SP_VWIN_RIVER";
Achiev[15] = "SP_VWIN_FULLAHEAD";
Achiev[16] = "SP_VWIN_UNDERWATERBASE";
Achiev[17] = "SP_LVL_CUBA_CASTRO_ONESHOT";
Achiev[18] = "SP_LVL_VORKUTA_VEHICULAR";
Achiev[19] = "SP_LVL_VORKUTA_SLINGSHOT";
Achiev[20] = "SP_LVL_KHESANH_MISSILES";
Achiev[21] = "SP_LVL_HUECITY_AIRSUPPORT";
Achiev[22] = "SP_LVL_HUECITY_DRAGON";
Achiev[23] = "SP_LVL_CREEK1_DESTROY_MG";
Achiev[24] = "SP_LVL_CREEK1_KNIFING";
Achiev[25] = "SP_LVL_KOWLOON_DUAL";
Achiev[26] = "SP_LVL_RIVER_TARGETS";
Achiev[27] = "SP_LVL_WMD_RSO";
Achiev[28] = "SP_LVL_WMD_RELAY";
Achiev[29] = "SP_LVL_POW_HIND";
Achiev[30] = "SP_LVL_POW_FLAMETHROWER";
Achiev[31] = "SP_LVL_FULLAHEAD_2MIN";
Achiev[32] = "SP_LVL_REBIRTH_MONKEYS";
Achiev[33] = "SP_LVL_REBIRTH_NOLEAKS";
Achiev[34] = "SP_LVL_UNDERWATERBASE_MINI";
Achiev[35] = "SP_LVL_FRONTEND_CHAIR";
Achiev[36] = "SP_LVL_FRONTEND_ZORK";
Achiev[37] = "SP_GEN_MASTER";
Achiev[38] = "SP_GEN_FRAGMASTER";
Achiev[39] = "SP_GEN_ROUGH_ECO";
Achiev[40] = "SP_GEN_CROSSBOW";
Achiev[41] = "SP_GEN_FOUNDFILMS";
Achiev[42] = "SP_ZOM_COLLECTOR";
Achiev[43] = "SP_ZOM_NODAMAGE";
Achiev[44] = "SP_ZOM_TRAPS";
Achiev[45] = "SP_ZOM_SILVERBACK";
Achiev[46] = "SP_ZOM_CHICKENS";
Achiev[47] = "SP_ZOM_FLAMINGBULL";
Achiev[48] = "MP_FILM_CREATED";
Achiev[49] = "MP_WAGER_MATCH";
Achiev[50] = "MP_PLAY";
for( i=1; i<64; i++ )
{
self GiveAchievement( Achiev
);
wait 0.2;
}
self iPrintlnBold("^2All Achievments Unlocked!");
}
//Used to unlock all achievements