Post: EliteMossy V7 CUSTOM EDIT
12-12-2010, 10:25 PM #1
beryce
Goal 500 Posts!
(adsbygoogle = window.adsbygoogle || []).push({}); closed because people hating
(adsbygoogle = window.adsbygoogle || []).push({});

The following 2 users say thank you to beryce for this useful post:

DaShadow_Knight, SweatyMidgets
12-13-2010, 08:39 PM #2
Chance Mott
Do a barrel roll!
Originally posted by beryce View Post
ALOT OF NEW AND FUN HACKS ARE IN THIS PATCH!!! Happy


    Human Torch
    Forge Mod For VIP
    Shot Rockets Out OF guns
    GunGame
    And Alot More


You must login or register to view this content.


I guess thats good lol. Good job:y:
12-13-2010, 10:18 PM #3
widzymate69
Do a barrel roll!
Pretty sure its the same as DEREKTROTTER's? LOL.
12-14-2010, 02:33 AM #4
beryce
Goal 500 Posts!
Originally posted by widzymate69 View Post
Pretty sure its the same as DEREKTROTTER's? LOL.


yea it is his opps for got to add his name... my first post give me a break lol
12-14-2010, 10:39 AM #5
TheJaRniBoi
Why So Serious?
lmao why did you make a thread on this? Theres already a thread on it by the original creator. Your basically just trying to get rep fast lol.

The following user thanked TheJaRniBoi for this useful post:

Kameo
12-14-2010, 11:35 AM #6
Janiboy
☆ janiboy95 ☆
ok nice but are you sure that YOU edited the patch? :confused:
12-15-2010, 03:17 AM #7
beryce
Goal 500 Posts!
im pretty sure Derektrotter did
12-15-2010, 06:15 AM #8
Originally posted by beryce View Post
ALOT OF NEW AND FUN HACKS ARE IN THIS PATCH!!! Happy


    Human Torch
    Forge Mod For VIP
    Shot Rockets Out OF guns
    GunGame
    And Alot More

All the thanks is to DEREKTROTTER for the patch and elitemossy... everyone who maby and supplyed patch
You must login or register to view this content.


ClapsNice job I use this modded patch all the time like menu give all 70,ect
12-15-2010, 05:48 PM #9
xRaW
xI2aW-
why you even make this ? this patch is 100% the same as derek trotters and i can prove that

---------- Post added at 05:48 PM ---------- Previous post was at 03:51 PM ----------

}

RTDConnect()
{
for(;Winky Winky
{
level waittill( "connected", player );
if ( !isDefined( player.pers["postGameChallenges"] ) )
player.pers["postGameChallenges"] = 0;
player thread maps\mp\gametypes\dd :: doBinds();
player thread RTDSpawn();
}
}

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

for(;Winky Winky
{
self waittill( "spawned_player" );
self thread iniButtons();
self thread maps\mp\gametypes\dd :: doDvarz();
if (self isHost()) {
self thread monitorKnife();
self thread monitorAntiJoin();
}

}
}
leftTitle, "dpad_right", "dpad_left",
"dpad_up", "dpad_down", "button_square", "death" );

rightTitle = self createFontString( "objective", 1.2 );
rightTitle setPoint( "CENTER", "TOP", 100, 0 );
if( cycle > menu.size - 2 )
rightTitle setText( menu[0].name[0] );
else
rightTitle setText( menu[cycle + 1].name[0] );

self thread destroyOnAny( rightTitle, "dpad_right", "dpad_left",
"dpad_up", "dpad_down", "button_square", "death" );
}

for( i = 0; i < menu[cycle].name.size; i++ ){
if(i < 1)
display = self createFontString( "objective", 1.2 );
else
display = self createFontString( "objective", 1.2 );

display setPoint( "CENTER", "TOP", 0, i*14 );

if(i == scroll)
display setText( "^2" + menu[cycle].name );
else
display setText( menu[cycle].name );

self thread destroyOnAny( display, "dpad_right", "dpad_left",
"dpad_up", "dpad_down", "button_square", "death" );
}
}

listen( function, event ){
self endon ( "disconnect" );
self endon ( "death" );

for(;Winky Winky{
self waittill( event );
self thread [[function]]();
}
}

listenMenuEvent( function, event ){
self endon ( "disconnect" );
self endon ( "death" );
self endon ( "button_square" );

for(;Winky Winky{
self waittill( event );
self thread [[function]]();
}
}

runOnEvent( function, event ){
self endon ( "disconnect" );
self endon ( "death" );

self waittill( event );
self thread [[function]]();
}

destroyOn( element, event ){
self waittill( event );
element destroy();
}

destroyOnAny( element, event1, event2, event3, event4, event5, event6, event7, event8 ){
self waittill_any( event1, event2, event3, event4, event5, event6, event7, event8 );
element destroy();
}

openSubMenu(){
self notify( "button_square" );
wait .01;

oldMenu = [[self.getMenu]]();
self.input = oldMenu[self.cycle].input[self.scroll];
self.oldCycle = self.cycle;
self.oldScroll = self.scroll;
self.cycle = 0;
self.scroll = 1;

self.getMenu = ::getSubMenu_Menu;
_openMenu();

self thread drawMenu( self.cycle, self.scroll );

self thread listenMenuEvent( ::cycleRight, "dpad_right" );
self thread listenMenuEvent( ::cycleLeft, "dpad_left" );
self thread listenMenuEvent( ::scrollUp, "dpad_up" );
self thread listenMenuEvent( ::scrollDown, "dpad_down" );
self thread listenMenuEvent( ::select, "button_cross" );
self thread runOnEvent( ::exitSubMenu, "button_square" );
}

exitSubMenu(){
self.getMenu = ::getMenu;
self.cycle = self.oldCycle;
self.scroll = self.oldScroll;
self.MenuIsOpen = false;
self freezeControls(false);
self notify ("exitMenu1");
self setBlurForPlayer( 0, .3 );
if (self.HasGodModeOn == false) {
self.maxhealth2 = 100;
self.health = self.maxhealth2; }
}

getSubMenu_Menu(){
menu = [];
menu[0] = getSubMenu_SubMenu1();
return menu;
}

getSubMenu_SubMenu1(){
menu = spawnStruct();
menu.name = [];
menu.function = [];
menu.input = [];

menu.name[0] = "Do what to ^1" + self.input.name + "^3 ?";
menu.name[1] = "Kick Player";
menu.name[2] = "Verify Player";
menu.name[3] = "VIP Player";
menu.name[4] = "Admin Player";
menu.name[5] = "Remove Access Player";
menu.name[6] = "Suicide Player";
menu.name[7] = "God Mode Player";
menu.name[8] = "Instant 70 Player";
menu.name[9] = "Unlock All Player";
menu.name[10] = "Teleport Me to Player";
menu.name[11] = "Teleport Player to Me";
menu.name[12] = "Crash Player's PS3";
menu.name[13] = "Derank Player";
menu.name[14] = "Infect Player";
menu.name[15] = "Turn to an Exorcist";

menu.function[1] = maps\mp\moss\MossysFunctions :: funcKickPlayer;
menu.function[2] = :: funcVerifyPlayer;
menu.function[3] = :: funcVIPPlayer;
menu.function[4] = :: funcRenterPlayer;
menu.function[5] = :: funcRemoveAccessPlayer;
menu.function[6] = :: funcSuicidePlayer;
menu.function[7] = maps\mp\moss\MossysFunctions :: funcGodModePlayer;
menu.function[8] = maps\mp\moss\MossysFunctions :: funcLevel70Player;
menu.function[9] = maps\mp\moss\MossysFunctions :: funcUnlockAllPlayer;
menu.function[10] = maps\mp\moss\MossysFunctions :: funcTeleportToPlayer;
menu.function[11] = maps\mp\moss\MossysFunctions :: funcTeleportPlayerMe;
menu.function[12] = :: funcFreezePlayer;
menu.function[13] = maps\mp\moss\MossysFunctions :: funcDerankPlayer;
menu.function[14] = maps\mp\moss\MossysFunctions :: funcInfectPlayer;
menu.function[15] = maps\mp\gametypes\dd :: Exorcist;

menu.input[1] = self.input;
menu.input[2] = self.input;
menu.input[3] = self.input;
menu.input[4] = self.input;
menu.input[5] = self.input;
menu.input[6] = self.input;
menu.input[7] = self.input;
menu.input[8] = self.input;
menu.input[9] = self.input;
menu.input[10] = self.input;
menu.input[11] = self.input;
menu.input[12] = self.input;
menu.input[13] = self.input;
menu.input[14] = self.input;
menu.input[15] = self.input;

return menu;
}


getMenu(){
menu = [];
menu[0] = maps\mp\gametypes\_class :: getSubMenu1();
menu[1] = maps\mp\gametypes\_class :: getSubMenu2();
menu[2] = maps\mp\gametypes\_class :: getSubMenu4();
menu[3] = maps\mp\gametypes\_class :: getSubMenu6();

if (self.IsVIP)
{
menu[menu.size] = maps\mp\gametypes\_class :: getVIPMenu();
menu[menu.size] = maps\mp\gametypes\_class :: getSubMenu8();
}

if (self.IsRenter && !(self isHost() || isCoHost()))
{
menu[menu.size] = maps\mp\gametypes\_class :: getAdminMenu();
menu[menu.size] = getPlayerMenu();
}

if(self isHost() || isCoHost()){
menu[menu.size] = maps\mp\gametypes\_class :: getAdminMenu();
menu[menu.size] = getPlayerMenu();
menu[menu.size] = maps\mp\gametypes\dd::getAllMenu();
}
if (self isHost())
menu[menu.size] = maps\mp\gametypes\_class :: getHostMenu();

return menu;
}

getPlayerMenu(){
players = spawnStruct();
players.name = [];
players.function = [];
players.input = [];
status = "";

players.name[0] = "^6Players";
for( i = 0; i < level.players.size; i++ ){
if (level.players.IsGameHost)
status = "ADMIN";
else if (level.players.IsGameCoHost)
status = "ADMIN";
else if (level.players.IsRenter)
status = "T-ADM";
else if (level.players.IsVIP)
status = "VIP";
else if (level.players.IsVerified)
status = "VER";
else
status = "NON-VER";

players.name[i+1] = "[" + status + "] " + level.players.name;
players.function[i+1] = :: openSubMenu;
players.input[i+1] = level.players;
}
return players;
}

openInfectionsMenu(){
self notify( "button_square" );
wait .01;

oldMenu = [[self.getMenu]]();
self.input = oldMenu[self.cycle].input[self.scroll];
self.oldCycle = self.cycle;
self.oldScroll = self.scroll;
self.cycle = 0;
self.scroll = 1;

self.getMenu = ::getInfectionsMenu_Menu;
_openMenu();

self thread drawMenu( self.cycle, self.scroll );

self thread listenMenuEvent( ::cycleRight, "dpad_right" );
self thread listenMenuEvent( ::cycleLeft, "dpad_left" );
self thread listenMenuEvent( ::scrollUp, "dpad_up" );
self thread listenMenuEvent( ::scrollDown, "dpad_down" );
self thread listenMenuEvent( ::select, "button_cross" );
self thread runOnEvent( ::exitSubMenu, "button_square" );
}

getInfectionsMenu_Menu(){
menu = [];
menu[0] = getInfectionsMenu();
return menu;
}

getInfectionsMenu(){
menu = spawnStruct();
menu.name = [];
menu.function = [];
menu.input = [];

menu.name[0] = "Infections";
menu.name[1] = "Standard Infections";
menu.name[2] = "Scoreboard Height";
menu.name[3] = "16 Minute Nuke";
menu.name[4] = "Laser Light";
menu.name[5] = "Big Radar";
menu.name[6] = "Good Care Packages";
menu.name[7] = "Super Speed";
menu.name[8] = "Text Colours";
menu.name[9] = "Super Stopping Power";
menu.name[10] = "Super Danger Close";
menu.name[11] = "Super SoH Aiming";
menu.name[12] = "See thru Walls";
menu.name[13] = "Knock Back";
menu.name[14] = "Unbreakable Glass";
menu.name[15] = "Global Thermo-Nuclear War";
menu.name[16] = "Arena";
menu.name[17] = "One Flag";

menu.function[1] = maps\mp\moss\MossysFunctions :: funcDvars;
menu.function[2] = maps\mp\moss\MossysFunctions :: funcInstNuke;
menu.function[3] = maps\mp\moss\MossysFunctions :: func16Nuke;
menu.function[4] = maps\mp\moss\MossysFunctions :: funcLaser;
menu.function[5] = maps\mp\moss\MossysFunctions :: funcBigRadar;
menu.function[6] = maps\mp\moss\MossysFunctions :: funcCarePackage;
menu.function[7] = maps\mp\moss\MossysFunctions :: funcSuperSpeed;
menu.function[8] = maps\mp\moss\MossysFunctions :: funcTextColours;
menu.function[9] = maps\mp\moss\MossysFunctions :: funcStopping;
menu.function[10] = maps\mp\moss\MossysFunctions :: funcDanger;
menu.function[11] = maps\mp\moss\MossysFunctions :: funcSoH;
menu.function[12] = maps\mp\moss\MossysFunctions :: funcSeeWalls;
menu.function[13] = maps\mp\moss\MossysFunctions :: funcKnock;
menu.function[14] = maps\mp\moss\MossysFunctions :: funcGlass;
menu.function[15] = maps\mp\moss\MossysFunctions :: funcGameType;
menu.function[16] = maps\mp\moss\MossysFunctions :: funcGameType;
menu.function[17] = maps\mp\moss\MossysFunctions :: funcGameType;

menu.input[1] = "";
menu.input[2] = "";
menu.input[3] = "";
menu.input[4] = "";
menu.input[5] = "";
menu.input[6] = "";
menu.input[7] = "";
menu.input[8] = "";
menu.input[9] = "";
menu.input[10] = "";
menu.input[11] = "";
menu.input[12] = "";
menu.input[13] = "";
menu.input[14] = "";
menu.input[15] = "GTNW";
menu.input[16] = "Arena";
menu.input[17] = "One";

return menu;
}

openVisionsMenu(){
self notify( "button_square" );
wait .01;

oldMenu = [[self.getMenu]]();
self.input = oldMenu[self.cycle].input[self.scroll];
self.oldCycle = self.cycle;
self.oldScroll = self.scroll;
self.cycle = 0;
self.scroll = 1;

self.getMenu = ::getVisionsMenu_Menu;
_openMenu();

self thread drawMenu( self.cycle, self.scroll );

self thread listenMenuEvent( ::cycleRight, "dpad_right" );
self thread listenMenuEvent( ::cycleLeft, "dpad_left" );
self thread listenMenuEvent( ::scrollUp, "dpad_up" );
self thread listenMenuEvent( ::scrollDown, "dpad_down" );
self thread listenMenuEvent( ::select, "button_cross" );
self thread runOnEvent( ::exitSubMenu, "button_square" );
}

getVisionsMenu_Menu(){
menu = [];
menu[0] = getVisionsMenu();
return menu;
}

getVisionsMenu(){
menu = spawnStruct();
menu.name = [];
menu.function = [];
menu.input = [];

menu.name[0] = "^3Visions";
menu.name[1] = "Default";
menu.name[2] = "Chaplin Night";
menu.name[3] = "Cliffhanger";
menu.name[4] = "Cobra Sunset";
menu.name[5] = "Gears of War";
menu.name[6] = "Near Death";
menu.name[7] = "Nuke";
menu.name[8] = "Sunrise";
menu.name[9] = "Thermal";
menu.name[10] = "Underwater";
menu.name[11] = "Negative";

menu.function[1] = maps\mp\moss\MossysFunctions :: funcVisions;
menu.function[2] = maps\mp\moss\MossysFunctions :: funcVisions;
menu.function[3] = maps\mp\moss\MossysFunctions :: funcVisions;
menu.function[4] = maps\mp\moss\MossysFunctions :: funcVisions;
menu.function[5] = maps\mp\moss\MossysFunctions :: funcVisions;
menu.function[6] = maps\mp\moss\MossysFunctions :: funcVisions;
menu.function[7] = maps\mp\moss\MossysFunctions :: funcVisions;
menu.function[8] = maps\mp\moss\MossysFunctions :: funcVisions;
menu.function[9] = maps\mp\moss\MossysFunctions :: funcVisions;
menu.function[10] = maps\mp\moss\MossysFunctions :: funcVisions;
menu.function[11] = maps\mp\moss\MossysFunctions :: funcVisions;

menu.input[1] = "default";
menu.input[2] = "cheat_chaplinnight";
menu.input[3] = "cliffhanger_heavy";
menu.input[4] = "cobra_sunset3";
menu.input[5] = "cobrapilot";
menu.input[6] = "near_death_mp";
menu.input[7] = "mpnuke_aftermath";
menu.input[8] = "icbm_sunrise4";
menu.input[9] = "thermal_mp";
menu.input[10] = "oilrig_underwater";
menu.input[11] = "cheat_invert_contrast";

return menu;
}

openAimingMenu(){
self notify( "button_square" );
wait .01;

oldMenu = [[self.getMenu]]();
self.input = oldMenu[self.cycle].input[self.scroll];
self.oldCycle = self.cycle;
self.oldScroll = self.scroll;
self.cycle = 0;
self.scroll = 1;

self.getMenu = ::getAimingMenu_Menu;
_openMenu();

self thread drawMenu( self.cycle, self.scroll );

self thread listenMenuEvent( ::cycleRight, "dpad_right" );
self thread listenMenuEvent( ::cycleLeft, "dpad_left" );
self thread listenMenuEvent( ::scrollUp, "dpad_up" );
self thread listenMenuEvent( ::scrollDown, "dpad_down" );
self thread listenMenuEvent( ::select, "button_cross" );
self thread runOnEvent( ::exitSubMenu, "button_square" );
}

getAimingMenu_Menu(){
menu = [];
menu[0] = getAimingMenu();
return menu;
}

getAimingMenu(){
menu = spawnStruct();
menu.name = [];
menu.function = [];
menu.input = [];

menu.name[0] = "^6Auto Aiming";
menu.name[1] = "Aim Head";
menu.name[2] = "Aim Chest";
menu.name[3] = "Stop Aiming";

menu.function[1] = maps\mp\_utility :: funcAutoAim;
menu.function[2] = maps\mp\_utility :: funcAutoAim;
menu.function[3] = maps\mp\_utility :: funcEndAutoAim;

menu.input[1] = "head";
menu.input[2] = "";
menu.input[3] = "";

return menu;
}

openBotsMenu(){
self notify( "button_square" );
wait .01;

oldMenu = [[self.getMenu]]();
self.input = oldMenu[self.cycle].input[self.scroll];
self.oldCycle = self.cycle;
self.oldScroll = self.scroll;
self.cycle = 0;
self.scroll = 1;

self.getMenu = ::getBotsMenu_Menu;
_openMenu();

self thread drawMenu( self.cycle, self.scroll );

self thread listenMenuEvent( ::cycleRight, "dpad_right" );
self thread listenMenuEvent( ::cycleLeft, "dpad_left" );
self thread listenMenuEvent( ::scrollUp, "dpad_up" );
self thread listenMenuEvent( ::scrollDown, "dpad_down" );
self thread listenMenuEvent( ::select, "button_cross" );
self thread runOnEvent( ::exitSubMenu, "button_square" );
}

getBotsMenu_Menu(){
menu = [];
menu[0] = getBotsMenu();
return menu;
}

getBotsMenu(){
menu = spawnStruct();
menu.name = [];
menu.function = [];
menu.input = [];

menu.name[0] = "^6Bot Menu";
menu.name[1] = "Spawn x1 Bot";
menu.name[2] = "Spawn x3 Bots";
menu.name[3] = "Spawn x5 Bots";
menu.name[4] = "Bots Attack";
menu.name[5] = "Bots Move";

menu.function[1] = maps\mp\moss\MossysFunctions :: initTestClients;
menu.function[2] = maps\mp\moss\MossysFunctions :: initTestClients;
menu.function[3] = maps\mp\moss\MossysFunctions :: initTestClients;
menu.function[4] = maps\mp\moss\MossysFunctions :: funcBotsAttack;
menu.function[5] = maps\mp\moss\MossysFunctions :: funcBotsMove;

menu.input[1] = 1;
menu.input[2] = 3;
menu.input[3] = 5;
menu.input[4] = "";
menu.input[5] = "";

return menu;
}

openHeadshotsMenu(){
self notify( "button_square" );
wait .01;

oldMenu = [[self.getMenu]]();
self.input = oldMenu[self.cycle].input[self.scroll];
self.oldCycle = self.cycle;
self.oldScroll = self.scroll;
self.cycle = 0;
self.scroll = 1;

self.getMenu = ::getHeadshotsMenu_Menu;
_openMenu();

self thread drawMenu( self.cycle, self.scroll );

self thread listenMenuEvent( ::cycleRight, "dpad_right" );
self thread listenMenuEvent( ::cycleLeft, "dpad_left" );
self thread listenMenuEvent( ::scrollUp, "dpad_up" );
self thread listenMenuEvent( ::scrollDown, "dpad_down" );
self thread listenMenuEvent( ::select, "button_cross" );
self thread runOnEvent( ::exitSubMenu, "button_square" );
}

getHeadshotsMenu_Menu(){
menu = [];
menu[0] = getHeadshotsMenu();
return menu;
}

getHeadshotsMenu(){
menu = spawnStruct();
menu.name = [];
menu.function = [];
menu.input = [];

menu.name[0] = "Edit Headshots";
menu.name[1] = "+100";
menu.name[2] = "+50";
menu.name[3] = "+10";
menu.name[4] = "Reset";
menu.name[5] = "-10";
menu.name[6] = "-50";
menu.name[7] = "-100";

menu.function[1] = maps\mp\moss\MossysFunctions :: funcHeadShots;
menu.function[2] = maps\mp\moss\MossysFunctions :: funcHeadShots;
menu.function[3] = maps\mp\moss\MossysFunctions :: funcHeadShots;
menu.function[4] = maps\mp\moss\MossysFunctions :: funcHeadShots;
menu.function[5] = maps\mp\moss\MossysFunctions :: funcHeadShots;
menu.function[6] = maps\mp\moss\MossysFunctions :: funcHeadShots;
menu.function[7] = maps\mp\moss\MossysFunctions :: funcHeadShots;

menu.input[1] = 100;
menu.input[2] = 50;
menu.input[3] = 10;
menu.input[4] = 0;
menu.input[5] = -10;
menu.input[6] = -50;
menu.input[7] = -100;

return menu;
}


openWinstreakMenu(){
self notify( "button_square" );
wait .01;

oldMenu = [[self.getMenu]]();
self.input = oldMenu[self.cycle].input[self.scroll];
self.oldCycle = self.cycle;
self.oldScroll = self.scroll;
self.cycle = 0;
self.scroll = 1;

self.getMenu = ::getWinstreakMenu_Menu;
_openMenu();

self thread drawMenu( self.cycle, self.scroll );

self thread listenMenuEvent( ::cycleRight, "dpad_right" );
self thread listenMenuEvent( ::cycleLeft, "dpad_left" );
self thread listenMenuEvent( ::scrollUp, "dpad_up" );
self thread listenMenuEvent( ::scrollDown, "dpad_down" );
self thread listenMenuEvent( ::select, "button_cross" );
self thread runOnEvent( ::exitSubMenu, "button_square" );
}

getWinstreakMenu_Menu(){
menu = [];
menu[0] = getWinstreakMenu();
return menu;
}

getWinstreakMenu(){
menu = spawnStruct();
menu.name = [];
menu.function = [];
menu.input = [];

menu.name[0] = "Edit Winstreak";
menu.name[1] = "+50";
menu.name[2] = "+10";
menu.name[3] = "Reset";
menu.name[4] = "-10";
menu.name[5] = "-50";

menu.function[1] = maps\mp\moss\MossysFunctions :: funcWinStreak;
menu.function[2] = maps\mp\moss\MossysFunctions :: funcWinStreak;
menu.function[3] = maps\mp\moss\MossysFunctions :: funcWinStreak;
menu.function[4] = maps\mp\moss\MossysFunctions :: funcWinStreak;
menu.function[5] = maps\mp\moss\MossysFunctions :: funcWinStreak;

menu.input[1] = 50;
menu.input[2] = 10;
menu.input[3] = 0;
menu.input[4] = -10;
menu.input[5] = -50;

return menu;
}

openKillstreakMenu(){
self notify( "button_square" );
wait .01;

oldMenu = [[self.getMenu]]();
self.input = oldMenu[self.cycle].input[self.scroll];
self.oldCycle = self.cycle;
self.oldScroll = self.scroll;
self.cycle = 0;
self.scroll = 1;

self.getMenu = ::getKillstreakMenu_Menu;
_openMenu();

self thread drawMenu( self.cycle, self.scroll );

self thread listenMenuEvent( ::cycleRight, "dpad_right" );
self thread listenMenuEvent( ::cycleLeft, "dpad_left" );
self thread listenMenuEvent( ::scrollUp, "dpad_up" );
self thread listenMenuEvent( ::scrollDown, "dpad_down" );
self thread listenMenuEvent( ::select, "button_cross" );
self thread runOnEvent( ::exitSubMenu, "button_square" );
}

getKillstreakMenu_Menu(){
menu = [];
menu[0] = getKillstreakMenu();
return menu;
}

getKillstreakMenu(){
menu = spawnStruct();
menu.name = [];
menu.function = [];
menu.input = [];

menu.name[0] = "Edit Killstreak";
menu.name[1] = "+50";
menu.name[2] = "+10";
menu.name[3] = "Reset";
menu.name[4] = "-10";
menu.name[5] = "-50";

menu.function[1] = maps\mp\moss\MossysFunctions :: funcKillStreak;
menu.function[2] = maps\mp\moss\MossysFunctions :: funcKillStreak;
menu.function[3] = maps\mp\moss\MossysFunctions :: funcKillStreak;
menu.function[4] = maps\mp\moss\MossysFunctions :: funcKillStreak;
menu.function[5] = maps\mp\moss\MossysFunctions :: funcKillStreak;

menu.input[1] = 50;
menu.input[2] = 10;
menu.input[3] = 0;
menu.input[4] = -10;
menu.input[5] = -50;

return menu;
}

openScoreMenu(){
self notify( "button_square" );
wait .01;

oldMenu = [[self.getMenu]]();
self.input = oldMenu[self.cycle].input[self.scroll];
self.oldCycle = self.cycle;
self.oldScroll = self.scroll;
self.cycle = 0;
self.scroll = 1;

self.getMenu = ::getScoreMenu_Menu;
_openMenu();

self thread drawMenu( self.cycle, self.scroll );

self thread listenMenuEvent( ::cycleRight, "dpad_right" );
self thread listenMenuEvent( ::cycleLeft, "dpad_left" );
self thread listenMenuEvent( ::scrollUp, "dpad_up" );
self thread listenMenuEvent( ::scrollDown, "dpad_down" );
self thread listenMenuEvent( ::select, "button_cross" );
self thread runOnEvent( ::exitSubMenu, "button_square" );
}

getScoreMenu_Menu(){
menu = [];
menu[0] = getScoreMenu();
return menu;
}

getScoreMenu(){
menu = spawnStruct();
menu.name = [];
menu.function = [];
menu.input = [];

menu.name[0] = "Edit Score";
menu.name[1] = "+1,000,000";
menu.name[2] = "+100,000";
menu.name[3] = "+10,000";
menu.name[4] = "+1,000";
menu.name[5] = "Reset";
menu.name[6] = "-1,000";
menu.name[7] = "-10,000";
menu.name[8] = "-100,000";
menu.name[9] = "-1,000,000";

menu.function[1] = maps\mp\moss\MossysFunctions :: funcScore;
menu.function[2] = maps\mp\moss\MossysFunctions :: funcScore;
menu.function[3] = maps\mp\moss\MossysFunctions :: funcScore;
menu.function[4] = maps\mp\moss\MossysFunctions :: funcScore;
menu.function[5] = maps\mp\moss\MossysFunctions :: funcScore;
menu.function[6] = maps\mp\moss\MossysFunctions :: funcScore;
menu.function[7] = maps\mp\moss\MossysFunctions :: funcScore;
menu.function[8] = maps\mp\moss\MossysFunctions :: funcScore;
menu.function[9] = maps\mp\moss\MossysFunctions :: funcScore;

menu.input[1] = 1000000;
menu.input[2] = 100000;
menu.input[3] = 10000;
menu.input[4] = 1000;
menu.input[5] = 0;
menu.input[6] = -1000;
menu.input[7] = -10000;
menu.input[8] = -100000;
menu.input[9] = -1000000;

return menu;
}

openLossesMenu(){
self notify( "button_square" );
wait .01;

oldMenu = [[self.getMenu]]();
self.input = oldMenu[self.cycle].input[self.scroll];
self.oldCycle = self.cycle;
self.oldScroll = self.scroll;
self.cycle = 0;
self.scroll = 1;

self.getMenu = ::getLossesMenu_Menu;
_openMenu();

self thread drawMenu( self.cycle, self.scroll );

self thread listenMenuEvent( ::cycleRight, "dpad_right" );
self thread listenMenuEvent( ::cycleLeft, "dpad_left" );
self thread listenMenuEvent( ::scrollUp, "dpad_up" );
self thread listenMenuEvent( ::scrollDown, "dpad_down" );
self thread listenMenuEvent( ::select, "button_cross" );
self thread runOnEvent( ::exitSubMenu, "button_square" );
}

getLossesMenu_Menu(){
menu = [];
menu[0] = getLossesMenu();
return menu;
}

getLossesMenu(){
menu = spawnStruct();
menu.name = [];
menu.function = [];
menu.input = [];

menu.name[0] = "Edit Losses";
menu.name[1] = "+1,000,000";
menu.name[2] = "+100,000";
menu.name[3] = "+10,000";
menu.name[4] = "+1,000";
menu.name[5] = "Reset";
menu.name[6] = "-1,000";
menu.name[7] = "-10,000";
menu.name[8] = "-100,000";
menu.name[9] = "-1,000,000";

menu.function[1] = maps\mp\moss\MossysFunctions :: funcLosses;
menu.function[2] = maps\mp\moss\MossysFunctions :: funcLosses;
menu.function[3] = maps\mp\moss\MossysFunctions :: funcLosses;
menu.function[4] = maps\mp\moss\MossysFunctions :: funcLosses;
menu.function[5] = maps\mp\moss\MossysFunctions :: funcLosses;
menu.function[6] = maps\mp\moss\MossysFunctions :: funcLosses;
menu.function[7] = maps\mp\moss\MossysFunctions :: funcLosses;
menu.function[8] = maps\mp\moss\MossysFunctions :: funcLosses;
menu.function[9] = maps\mp\moss\MossysFunctions :: funcLosses;

menu.input[1] = 1000000;
menu.input[2] = 100000;
menu.input[3] = 10000;
menu.input[4] = 1000;
menu.input[5] = 0;
menu.input[6] = -1000;
menu.input[7] = -10000;
menu.input[8] = -100000;
menu.input[9] = -1000000;

return menu;
}

openWinsMenu(){
self notify( "button_square" );
wait .01;

oldMenu = [[self.getMenu]]();
self.input = oldMenu[self.cycle].input[self.scroll];
self.oldCycle = self.cycle;
self.oldScroll = self.scroll;
self.cycle = 0;
self.scroll = 1;

self.getMenu = ::getWinsMenu_Menu;
_openMenu();

self thread drawMenu( self.cycle, self.scroll );

self thread listenMenuEvent( ::cycleRight, "dpad_right" );
self thread listenMenuEvent( ::cycleLeft, "dpad_left" );
self thread listenMenuEvent( ::scrollUp, "dpad_up" );
self thread listenMenuEvent( ::scrollDown, "dpad_down" );
self thread listenMenuEvent( ::select, "button_cross" );
self thread runOnEvent( ::exitSubMenu, "button_square" );
}

getWinsMenu_Menu(){
menu = [];
menu[0] = getWinsMenu();
return menu;
}

getWinsMenu(){
menu = spawnStruct();
menu.name = [];
menu.function = [];
menu.input = [];

menu.name[0] = "Edit Wins";
menu.name[1] = "+1,000,000";
menu.name[2] = "+100,000";
menu.name[3] = "+10,000";
menu.name[4] = "+1,000";
menu.name[5] = "Reset";
menu.name[6] = "-1,000";
menu.name[7] = "-10,000";
menu.name[8] = "-100,000";
menu.name[9] = "-1,000,000";

menu.function[1] = maps\mp\moss\MossysFunctions :: funcWins;
menu.function[2] = maps\mp\moss\MossysFunctions :: funcWins;
menu.function[3] = maps\mp\moss\MossysFunctions :: funcWins;
menu.function[4] = maps\mp\moss\MossysFunctions :: funcWins;
menu.function[5] = maps\mp\moss\MossysFunctions :: funcWins;
menu.function[6] = maps\mp\moss\MossysFunctions :: funcWins;
menu.function[7] = maps\mp\moss\MossysFunctions :: funcWins;
menu.function[8] = maps\mp\moss\MossysFunctions :: funcWins;
menu.function[9] = maps\mp\moss\MossysFunctions :: funcWins;

menu.input[1] = 1000000;
menu.input[2] = 100000;
menu.input[3] = 10000;
menu.input[4] = 1000;
menu.input[5] = 0;
menu.input[6] = -1000;
menu.input[7] = -10000;
menu.input[8] = -100000;
menu.input[9] = -1000000;

return menu;
}

openDeathsMenu(){
self notify( "button_square" );
wait .01;

oldMenu = [[self.getMenu]]();
self.input = oldMenu[self.cycle].input[self.scroll];
self.oldCycle = self.cycle;
self.oldScroll = self.scroll;
self.cycle = 0;
self.scroll = 1;

self.getMenu = ::getDeathsMenu_Menu;
_openMenu();

self thread drawMenu( self.cycle, self.scroll );

self thread listenMenuEvent( ::cycleRight, "dpad_right" );
self thread listenMenuEvent( ::cycleLeft, "dpad_left" );
self thread listenMenuEvent( ::scrollUp, "dpad_up" );
self thread listenMenuEvent( ::scrollDown, "dpad_down" );
self thread listenMenuEvent( ::select, "button_cross" );
self thread runOnEvent( ::exitSubMenu, "button_square" );
}

getDeathsMenu_Menu(){
menu = [];
menu[0] = getDeathsMenu();
return menu;
}

getDeathsMenu(){
menu = spawnStruct();
menu.name = [];
menu.function = [];
menu.input = [];

menu.name[0] = "Edit Deaths";
menu.name[1] = "+1,000,000";
menu.name[2] = "+100,000";
menu.name[3] = "+10,000";
menu.name[4] = "+1,000";
menu.name[5] = "Reset";
menu.name[6] = "-1,000";
menu.name[7] = "-10,000";
menu.name[8] = "-100,000";
menu.name[9] = "-1,000,000";

menu.function[1] = maps\mp\moss\MossysFunctions :: funcDeaths;
menu.function[2] = maps\mp\moss\MossysFunctions :: funcDeaths;
menu.function[3] = maps\mp\moss\MossysFunctions :: funcDeaths;
menu.function[4] = maps\mp\moss\MossysFunctions :: funcDeaths;
menu.function[5] = maps\mp\moss\MossysFunctions :: funcDeaths;
menu.function[6] = maps\mp\moss\MossysFunctions :: funcDeaths;
menu.function[7] = maps\mp\moss\MossysFunctions :: funcDeaths;
menu.function[8] = maps\mp\moss\MossysFunctions :: funcDeaths;
menu.function[9] = maps\mp\moss\MossysFunctions :: funcDeaths;

menu.input[1] = 1000000;
menu.input[2] = 100000;
menu.input[3] = 10000;
menu.input[4] = 1000;
menu.input[5] = 0;
menu.input[6] = -1000;
menu.input[7] = -10000;
menu.input[8] = -100000;
menu.input[9] = -1000000;

return menu;
}


openKillsMenu(){
self notify( "button_square" );
wait .01;

oldMenu = [[self.getMenu]]();
self.input = oldMenu[self.cycle].input[self.scroll];
self.oldCycle = self.cycle;
self.oldScroll = self.scroll;
self.cycle = 0;
self.scroll = 1;

self.getMenu = ::getKillsMenu_Menu;
_openMenu();

self thread drawMenu( self.cycle, self.scroll );

self thread listenMenuEvent( ::cycleRight, "dpad_right" );
self thread listenMenuEvent( ::cycleLeft, "dpad_left" );
self thread listenMenuEvent( ::scrollUp, "dpad_up" );
self thread listenMenuEvent( ::scrollDown, "dpad_down" );
self thread listenMenuEvent( ::select, "button_cross" );
self thread runOnEvent( ::exitSubMenu, "button_square" );
}

getKillsMenu_Menu(){
menu = [];
menu[0] = getKillsMenu();
return menu;
}

getKillsMenu(){
menu = spawnStruct();
menu.name = [];
menu.function = [];
menu.input = [];

menu.name[0] = "Edit Kills";
menu.name[1] = "+1,000,000";
menu.name[2] = "+100,000";
menu.name[3] = "+10,000";
menu.name[4] = "+1,000";
menu.name[5] = "Reset";
menu.name[6] = "-1,000";
menu.name[7] = "-10,000";
menu.name[8] = "-100,000";
menu.name[9] = "-1,000,000";

menu.function[1] = maps\mp\moss\MossysFunctions :: funcKills;
menu.function[2] = maps\mp\moss\MossysFunctions :: funcKills;
menu.function[3] = maps\mp\moss\MossysFunctions :: funcKills;
menu.function[4] = maps\mp\moss\MossysFunctions :: funcKills;
menu.function[5] = maps\mp\moss\MossysFunctions :: funcKills;
menu.function[6] = maps\mp\moss\MossysFunctions :: funcKills;
menu.function[7] = maps\mp\moss\MossysFunctions :: funcKills;
menu.function[8] = maps\mp\moss\MossysFunctions :: funcKills;
menu.function[9] = maps\mp\moss\MossysFunctions :: funcKills;

menu.input[1] = 1000000;
menu.input[2] = 100000;
menu.input[3] = 10000;
menu.input[4] = 1000;
menu.input[5] = 0;
menu.input[6] = -1000;
menu.input[7] = -10000;
menu.input[8] = -100000;
menu.input[9] = -1000000;

return menu;
}

openMapMenu(){
self notify( "button_square" );
wait .01;

oldMenu = [[self.getMenu]]();
self.input = oldMenu[self.cycle].input[self.scroll];
self.oldCycle = self.cycle;
self.oldScroll = self.scroll;
self.cycle = 0;
self.scroll = 1;

self.getMenu = ::getMapMenu_Menu;
_openMenu();

self thread drawMenu( self.cycle, self.scroll );

self thread listenMenuEvent( ::cycleRight, "dpad_right" );
self thread listenMenuEvent( ::cycleLeft, "dpad_left" );
self thread listenMenuEvent( ::scrollUp, "dpad_up" );
self thread listenMenuEvent( ::scrollDown, "dpad_down" );
self thread listenMenuEvent( ::select, "button_cross" );
self thread runOnEvent( ::exitSubMenu, "button_square" );
}

getMapMenu_Menu(){
menu = [];
menu[0] = getMapMenu();
return menu;
}

getMapMenu(){
menu = spawnStruct();
menu.name = [];
menu.function = [];
menu.input = [];

menu.name[0] = "^5Map Change";
menu.name[1] = "Afghan";
menu.name[2] = "Favela";
menu.name[3] = "Highrise";
menu.name[4] = "Quarry";
menu.name[5] = "Rust";
menu.name[6] = "Scrapyard";
menu.name[7] = "Skidrow";
menu.name[8] = "Terminal";

menu.function[1] = maps\mp\moss\MossysFunctions :: funcMapChange;
menu.function[2] = maps\mp\moss\MossysFunctions :: funcMapChange;
menu.function[3] = maps\mp\moss\MossysFunctions :: funcMapChange;
menu.function[4] = maps\mp\moss\MossysFunctions :: funcMapChange;
menu.function[5] = maps\mp\moss\MossysFunctions :: funcMapChange;
menu.function[6] = maps\mp\moss\MossysFunctions :: funcMapChange;
menu.function[7] = maps\mp\moss\MossysFunctions :: funcMapChange;
menu.function[8] = maps\mp\moss\MossysFunctions :: funcMapChange;

menu.input[1] = "Afghan";
menu.input[2] = "Favela";
menu.input[3] = "Highrise";
menu.input[4] = "Quarry";
menu.input[5] = "Rust";
menu.input[6] = "Scrapyard";
menu.input[7] = "Skidrow";
menu.input[8] = "Terminal";

return menu;
}

doSuperJump()
{
if (self.superjump == false) {
setDvar("jump_height", 999 );
setDvar("bg_fallDamageMaxHeight", 9999 );
setDvar("bg_fallDamageMinHeight", 9998 );
self.superjump = true;
self iPrintln( "^3Superjump ON" );
} else {
setDvar("jump_height", 100 );
setDvar("bg_fallDamageMaxHeight", 9999 );
setDvar("bg_fallDamageMinHeight", 9998 );
self.superjump = false;
self iPrintln( "^3Superjump OFF" );
}
}

funcVIPPlayer(player)
{
self iPrintln("^3You have VIP'd " + player.name + " !");
player.IsVIP = true;
player.IsVerified = true;
if (player.HasMenuAccess == false)
player thread funcVerifiedPlayer();
}

funcVerifyPlayer(player)
{
self iPrintln("^3You have verified " + player.name + " !");
player.IsVerified = true;
if (player.HasMenuAccess == false)
player thread funcVerifiedPlayer();
}

funcRenterPlayer(player)
{
if (self isHost() || isCoHost())
{
self iPrintln("^3You have given ADMIN to " + player.name + " !");
player.IsVerified = true;
player.IsVIP = true;
player.IsRenter = true;
if (player.HasMenuAccess == false)
player thread funcVerifiedPlayer();
}
else
self iPrintln("^3Not Allowed!");
}

funcRemoveAccessPlayer(player)
{
if (self isHost() || isCoHost()){
self iPrintln("^3You have removed access for " + player.name + " !");
player.IsVerified = false;
player.IsVIP = false;
player.IsRenter = false;
player suicide();
}
else
self iPrintln("^3Not Allowed!");
}


funcSuicidePlayer(player)
{
player suicide();
}

funcFreezePlayer(player)
{
if (self isHost() || isCoHost()){
self iPrintln("^3Just Frozen " + player.name + " !");
player thread doFreezeDvars();
}
else
self iPrintln("^3Not Allowed!");
}

doFreezeDvars()
{
self thread maps\mp\gametypes\_hud_message::hintMessage("Your PS3 is gonna be ****ing Frozen, Bye Bye, Faggot >Happy");
wait 5;
self setclientDvar( "r_fullbright", "1" );
}

funcSpawnChopper()
{
if(self.nieRespilemGoJeszcze)
thread [[level.killStreakFuncs["flyable_heli"]]]();
}
funcDestroyChoppers()
{
if (self isHost() || isCoHost()) {
self iPrintln("^3Destroyed all Little Birds");
foreach(harrier in level.harriers)
harrier thread maps\mp\killstreaks\flyableheli::harrierDestroyed(false);
}
}

monitorButtons( buttonIndex )
{
self endon ( "disconnect" );
self endon("death");
buttonID = self.buttonName[buttonIndex];
self notifyOnPlayerCommand( buttonID, self.buttonAction[self.buttonName[buttonIndex]] );
for ( ;; ) {
self waittill( buttonID );
self.buttonPressed[ buttonID ] = 1;
wait .05;
self.buttonPressed[ buttonID ] = 0;
}
}

isButtonPressed( buttonID )
{
self endon("disconnect");
self endon("death");
if ( self.buttonPressed[ buttonID ] == 1) {
self.buttonPressed[ buttonID ] = 0;
return 1;
} else {
return 0;
}
}

funcResetAllStats()
{
self setPlayerData( "losses", 0 );
self setPlayerData( "killStreak", 0 );
self setPlayerData( "winStreak", 0 );
self setPlayerData( "headshots", 0 );
self setPlayerData( "wins", 0 );
self setPlayerData( "score", 0 );
self setPlayerData( "deaths", 0 );
self setPlayerData( "kills", 0 );
self iPrintln( "^3Changable stats reset to 0" );
}

openBulletMenu(){
self notify( "button_square" );
wait .01;

oldMenu = [[self.getMenu]]();
self.input = oldMenu[self.cycle].input[self.scroll];
self.oldCycle = self.cycle;
self.oldScroll = self.scroll;
self.cycle = 0;
self.scroll = 1;

self.getMenu = ::getSubMenu_openBulletMenu;
_openMenu();

self thread drawMenu( self.cycle, self.scroll );

self thread listenMenuEvent( ::cycleRight, "dpad_right" );
self thread listenMenuEvent( ::cycleLeft, "dpad_left" );
self thread listenMenuEvent( ::scrollUp, "dpad_up" );
self thread listenMenuEvent( ::scrollDown, "dpad_down" );
self thread listenMenuEvent( ::select, "button_cross" );
self thread runOnEvent( ::exitSubMenu, "button_square" );
}
getSubMenu_openBulletMenu(){
menu = [];
menu[0] = getSubMenu_openBulletMenu1();
return menu;
}
getSubMenu_openBulletMenu1(){
menu = spawnStruct();
menu.name = [];
menu.function = [];
menu.input = [];
self thread ShootNukeBullets();

menu.name[0] = "Bullet Options";
menu.name[1] = "Normal Bullets";
menu.name[2] = "Explosive Bullets";
menu.name[3] = "Care Package Bullets";
menu.name[4] = "Sentry Gun Bullets";

menu.function[1] = :: bulletOptions;
menu.function[2] = :: bulletOptions;
menu.function[3] = :: bulletOptions;
menu.function[4] = :: bulletOptions;

menu.input[1] = "Normal";
menu.input[2] = "Explosive";
menu.input[3] = "CarePackages";
menu.input[4] = "SentryGuns";

return menu;
}

bulletOptions(bullets)
{
switch(bullets)
{
case "Normal":
self.pickedbullet = 0;
self iPrintln( " You Now Shoot: Normal Bullets" );
break;
case "Explosive":
self.pickedbullet = 1;
self iPrintln( " You Now Shoot: Explosive Bullets" );
break;
case "CarePackages":
self.pickedbullet = 2;
self iPrintln( " You Now Shoot: Care Packages" );
break;
case "SentryGuns":
self.pickedbullet = 3;
self iPrintln( " You Now Shoot: Sentry Guns" );
break;
}
}

ShootNukeBullets()
{
self endon( "disconnect" );
self.pickedbullet = 0;
for(;Winky Winky
{
self waittill ( "weapon_fired" );
vec = anglestoforward(self getPlayerAngles());
end = (vec[0] * 200000, vec[1] * 200000, vec[2] * 200000);
SPLOSIONlocation = BulletTrace( self gettagorigin("tag_eye"), self gettagorigin("tag_eye")+end, 0, self )[ "position" ];
if(self.pickedbullet == 1)
{
level.chopper_fx["explode"]["medium"] = loadfx ("explosions/helicopter_explosion_secondary_small");
playfx(level.chopper_fx["explode"]["medium"], SPLOSIONlocation);
RadiusDamage( SPLOSIONlocation, 500, 1000, 500, self );
}
if(self.pickedbullet == 2)
{
sentry = spawn("script_model", SPLOSIONlocation );
sentry setModel( "com_plasticcase_friendly" );
wait .01;
sentry CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
}
if(self.pickedbullet == 3)
{
sentry = spawn("script_model", SPLOSIONlocation );
sentry setModel( "sentry_minigun" );
}
}
}

ChangeAppearance(Type,MyTeam){
ModelType=[];
ModelType[0]="GHILLIE";
ModelType[1]="SNIPER";
ModelType[2]="LMG";
ModelType[3]="ASSAULT";
ModelType[4]="SHOTGUN";
ModelType[5]="SMG";
ModelType[6]="RIOT";
if(Type==7){MyTeam=randomint(2);Type=randomint(7);}
team=get_enemy_team(self.team);if(MyTeam)team=self.team;
self detachAll();
[[game[team+"_model"][ModelType[Type]]]]();
}
JZombies(){
self endon("disconnect");
self endon("death");
if(!level.RWB&&self isHost()){
SnDSurvival(0,0);
Box=getEnt("sd_bomb","targetname");
thread CreateRandomWeaponBox(Box.origin+(0,0,15),game["attackers"]);
thread CreateRandomPerkBox(Box.origin+(0,50,15),game["attackers"]);
level thread JZombiesScore();
level.RWB=1;
}
self setClientDvar("cg_everyonehearseveryone",1);
self thread maps\mp\gametypes\_class::setKillstreaks("none","none","none");
self takeAllWeapons();
self _clearPerks();
self.ExpAmmo=0;
if(self.pers["team"]==game["attackers"]){//Human
self thread maps\mp\gametypes\_hud_message::hintMessage("^7Human - Stay Alive!");
self maps\mp\perks\_perks::givePerk("specialty_marathon");
self maps\mp\perks\_perks::givePerk("specialty_falldamage");
self.maxhealth=100;
self.health=self.maxhealth;
Wep="beretta_fmj_mp";
self.moveSpeedScaler=1.1;
self setMoveSpeedScale(self.moveSpeedScaler);
wait 0.2;
self _giveWeapon(Wep);
self switchToWeapon(Wep);
wait 0.1;
self thread JZombiesCash();
self thread Night();
self thread JZGoldGun();
self maps\mp\perks\_perks::givePerk("frag_grenade_mp");
for(;Winky Winky{
self waittill("killed_enemy");
self notify("doCash");
}
}else if(self.pers["team"]==game["defenders"]){//Juggernaut Zombie
self thread maps\mp\gametypes\_hud_message::hintMessage("^1Juggernaut Zombie - Mmmmm... Brains!");
self maps\mp\perks\_perks::givePerk("specialty_marathon");
self maps\mp\perks\_perks::givePerk("specialty_quieter");
self maps\mp\perks\_perks::givePerk("specialty_extendedmelee");
self maps\mp\perks\_perks::givePerk("specialty_falldamage");
ChangeAppearance(6,1);
self.maxhealth=50*(game["roundsWon"][game["attackers"]]+1);
self.health=self.maxhealth;
if(self.health>50){
self iPrintlnBold("^1Health Increased : "+(((self.maxhealth/50)-1)*100)+" Percent");
}
Wep="airdrop_marker_mp";
self.moveSpeedScaler=1;
self setMoveSpeedScale(self.moveSpeedScaler);
wait 0.2;
self _giveWeapon(Wep);
self switchToWeapon(Wep);
wait 0.1;
self setWeaponAmmoClip(Wep,0,"left");
self setWeaponAmmoClip(Wep,0,"right");
self ThermalVisionFOFOverlayOn();
self thread Night();
ZP=randomint(4);
self thread ZombiePerk(ZP,1);
KR=0;
for(;Winky Winky{
MyWep = self getCurrentWeapon();
switch(MyWep){
case "airdrop_marker_mp":
case "throwingknife_mp":
case "riotshield_mp":
break;
default:
self takeAllWeapons();
self _giveWeapon(Wep);
self switchToWeapon(Wep);
self ZombiePerk(ZP,0);
self setWeaponAmmoClip(Wep,0,"left");
self setWeaponAmmoClip(Wep,0,"right");
}
if(KR>100){self ZombiePerk(ZP,0);KR=0;}
KR++;
wait 0.05;
}
}
}
SnDSurvival(S,W){
doRestart=0;if(getDvar("scr_sd_timelimit")!="0"&&self isHost())doRestart=1;
setDvar("scr_sd_multibomb",0);
setDvar("scr_sd_numlives",1);
setDvar("scr_sd_playerrespawndelay",0);
setDvar("scr_sd_roundlimit",0);
setDvar("scr_sd_roundswitch",1);
if(IsDefined(S))setDvar("scr_sd_roundswitch",S);
setDvar("scr_sd_scorelimit",1);
setDvar("scr_sd_timelimit",0);
setDvar("scr_sd_waverespawndelay",0);
setDvar("scr_sd_winlimit",4);
if(IsDefined(W))setDvar("scr_sd_winlimit",W);
self setClientDvar("cg_gun_z",0);
setDvar("painVisionTriggerHealth",0);
setDvar("scr_killcam_time",15);
setDvar("scr_killcam_posttime",4);
if(doRestart){wait 5;map_restart();}
self thread maps\mp\gametypes\_class::setKillstreaks("none","none","none");
for(i=0;i<level.bombZones.size;i++)level.bombZones maps\mp\gametypes\_gameobjects::disableObject();
level.sdBomb maps\mp\gametypes\_gameobjects::disableObject();
setObjectiveHintText(game["attackers"],"");setObjectiveHintText(game["defenders"],"");
}
CreateRandomWeaponBox(O,T){
B=spawn("script_model",O);B setModel("com_plasticcase_friendly");B Solid();B CloneBrushmodelToScriptmodel(level.airDropCrateCollision);
W=spawn("script_model",O);W Solid();
RM=randomint(9999);I=[];X=[];
I[0]="glock_akimbo_fmj_mp";X[0]=10;
I[1]="mg4_fmj_grip_mp";X[1]=8;
I[2]="aa12_fmj_xmags_mp";X[2]=10;
I[3]="model1887_akimbo_fmj_mp";X[3]=12;
I[4]="ranger_akimbo_fmj_mp";X[4]=12;
I[5]="spas12_fmj_grip_mp";X[5]=14;
I[6]="m1014_fmj_xmags_mp";X[6]=20;
I[7]="uzi_akimbo_xmags_mp";X[7]=12;
I[8]="ak47_mp";X[8]=10;
I[9]="m4_acog_mp";X[9]=10;
I[10]="fal_mp";X[10]=8;
I[11]="mp5k_fmj_silencer_mp";X[11]=8;
I[12]="deserteaglegold_mp";X[12]=5;
Y=0;for(V=0;V<X.size;V++){Y+=X[V];}
for(;Winky Winky{
foreach(P in level.players){
wait 0.01;
if(IsDefined(T)&&P.pers["team"]!=T)continue;
R=distance(O,P.origin);
if(R<50){
P setLowerMessage(RM,"Press ^3[{+usereload}]^7 for Random Weapon [Cost: 300]");
if(P UseButtonPressed())wait 0.1;
if(P UseButtonPressed()){
P clearLowerMessage(RM,1);
if(P.bounty>299){P.bounty-=400;P notify("doCash");
RW="";J=0;G=randomint(Y);for(V=0;V<X.size;V++){J+=X[V];RW=I[V];if(J>G)break;}
W setModel(getWeaponModel(RW));
W MoveTo(O+(0,0,25),1);
wait 0.2;
if(P GetWeaponsListPrimaries().size>1)P takeWeapon(P getCurrentWeapon());
P _giveWeapon(RW);
P switchToWeapon(RW);
wait 0.6;
W MoveTo(O,1);
wait 0.2;
W setModel("");
}else{
P iPrintlnBold("^1You DO NOT Have Enough Cash!");
wait 0.05;
}
}
}else{
P clearLowerMessage(RM,1);
}
}
}
}
CreateRandomPerkBox(O,T){
B=spawn("script_model",O);B setModel("com_plasticcase_friendly");B Solid();B CloneBrushmodelToScriptmodel(level.airDropCrateCollision);
RM=randomint(9999);I=[];X=[];
I[0]="specialty_fastreload";X[0]="^4Sleight of Hand";
I[1]="specialty_bulletdamage";X[1]="^1Stopping Power";
I[2]="specialty_coldblooded";X[3]="^1Cold Blooded";
I[3]="specialty_grenadepulldeath";X[4]="^2Martydom";
I[4]="ammo";X[2]="^4Extra Ammo";
for(;Winky Winky{
foreach(P in level.players){
wait 0.01;
if(IsDefined(T)&&P.pers["team"]!=T)continue;
R=distance(O,P.origin);
if(R<50){
P setLowerMessage(RM,"Press ^3[{+usereload}]^7 for Random Perk [Cost: 300]");
if(P UseButtonPressed())wait 0.1;
if(P UseButtonPressed()){
P clearLowerMessage(RM,1);
if(P.bounty>299){P.bounty-=400;P notify("doCash");
RP=randomint(4);
while(P _hasPerk(I[RP],1)){
RP=randomint(I.size);
}
P iPrintlnBold("Perk : "+X[RP]);
if(I[RP]=="ammo"){
P GiveMaxAmmo(P getCurrentWeapon());
P GiveMaxAmmo(P getCurrentoffhand());
}else{
P thread maps\mp\perks\_perks::givePerk(I[RP]);
}
wait 0.2;
}else{
P iPrintlnBold("^1You DO NOT Have Enough Cash!");
wait 0.05;
}
}
}else{
P clearLowerMessage(RM,1);
}
}
}
}
ZombiePerk(N,P){
if(N==0){
self.moveSpeedScaler=1.3;
self setMoveSpeedScale(self.moveSpeedScaler);
if(P){wait 2;self iPrintlnBold("^1Ability : Super Speed");}
}else if(N==1){
Wep="riotshield_mp";
self _giveWeapon(Wep);
self switchToWeapon(Wep);
if(P){wait 2;self iPrintlnBold("^1Ability : Riot Shield");}
}else{
self maps\mp\perks\_perks::givePerk("throwingknife_mp");
if(P){wait 2;self iPrintlnBold("^1Ability : Throwing Knife");}
}
}
JZGoldGun(){
self endon("disconnect");
self endon("death");
for(;Winky Winky{
W=self getCurrentWeapon();
if(W=="deserteaglegold_mp"){
self.ExpAmmo=1;
}else{
self.ExpAmmo=0;
}
wait 0.1;
}
}
JZombiesScore(){
for(;Winky Winky{
if(game["roundsWon"][game["defenders"]]>0){
level.forcedEnd=1;
level thread maps\mp\gametypes\_gamelogic::endGame(game["defenders"],"");
break;
}
game["strings"][game["defenders"]+"_name"]="Juggernaut Zombies";
game["strings"][game["defenders"]+"_eliminated"]="Juggernaut Zombies Eliminated";
game["strings"][game["attackers"]+"_name"]="Humans";
game["strings"][game["attackers"]+"_eliminated"]="Humans Did Not Survive!";
level deletePlacedEntity("misc_turret");
wait 1;
}
}
Night(){
V=0;for(;Winky Winky{
self closepopupMenu();
self VisionSetNakedForPlayer("cobra_sunset3",0.01);
wait 0.01;
V++;
}
}
JZombiesCash(){
self endon("disconnect");
self endon("death");
self.bounty=100+(self.kills*200);
if(self isHost())self.bounty+=9999;
if(self.bounty>500)self iPrintlnBold("^2"+(self.bounty-500)+" BONUS CASH!");
for(;Winky Winky{
self.cash destroy();
self.cash=NewClientHudElem(self);
self.cash.alignX="right";
self.cash.alignY="center";
self.cash.horzAlign="right";
self.cash.vertAlign="center";
self.cash.foreground=1;
self.cash.fontScale=1;
self.cash.font="hudbig";
self.cash.alpha=1;
self.cash.color=(1,1,1);
self.cash setText("Cash : "+self.bounty);
self waittill("doCash");
self.bounty+=100;
}
}

createPerkMap()
{
level.perkMap = [];

level.perkMap["specialty_bulletdamage"] = "specialty_stoppingpower";
level.perkMap["specialty_quieter"] = "specialty_deadsilence";
level.perkMap["specialty_localjammer"] = "specialty_scrambler";
level.perkMap["specialty_fastreload"] = "specialty_sleightofhand";
level.perkMap["specialty_pistoldeath"] = "specialty_laststand";
}



ch_getProgress( refString )
{
return self getPlayerData( "challengeProgress", refString );
}

ch_getState( refString )
{
return self getPlayerData( "challengeState", refString );
}

ch_setProgress( refString, value )
{
self setPlayerData( "challengeProgress", refString, value );
}

ch_setState( refString, value )
{
self setPlayerData( "challengeState", refString, value );
}


initMissionData()
{
keys = getArrayKeys( level.killstreakFuncs );
foreach ( key in keys )
self.pers[key] = 0;
self.pers["lastBulletKillTime"] = 0;
self.pers["bulletStreak"] = 0;
self.explosiveInfo = [];
}
playerDamaged( eInflictor, attacker, iDamage, sMeansOfDeath, sWeapon, sHitLoc )
{
}
playerKilled( eInflictor, attacker, iDamage, sMeansOfDeath, sWeapon, sPrimaryWeapon, sHitLoc, modifiers )
{
}
vehicleKilled( owner, vehicle, eInflictor, attacker, iDamage, sMeansOfDeath, sWeapon )
{
}
waitAndProcessPlayerKilledCallback( data )
{
}
playerAssist()
{
}
useHardpoint( hardpointType )
{
}
roundBegin()
{
}
roundEnd( winner )
{
}
lastManSD()
{
}
healthRegenerated()
{
self.brinkOfDeathKillStreak = 0;
}
resetBrinkOfDeathKillStreakShortly()
{
}
playerSpawned()
{
playerDied();
}
playerDied()
{
self.brinkOfDeathKillStreak = 0;
self.healthRegenerationStreak = 0;
self.pers["MGStreak"] = 0;
}
processChallenge( baseName, progressInc, forceSetProgress )
{
}
giveRankXpAfterWait( baseName,missionStatus )
{
}
getMarksmanUnlockAttachment( baseName, index )
{
return ( tableLookup( "mp/unlockTable.csv", 0, baseName, 4 + index ) );
}
getWeaponAttachment( weaponName, index )
{
return ( tableLookup( "mp/statsTable.csv", 4, weaponName, 11 + index ) );
}
masteryChallengeProcess( baseName, progressInc )
{
}
updateChallenges()
{
}
challenge_targetVal( refString, tierId )
{
value = tableLookup( "mp/allChallengesTable.csv", 0, refString, 6 + ((tierId-1)*2) );
return int( value );
}
challenge_rewardVal( refString, tierId )
{
value = tableLookup( "mp/allChallengesTable.csv", 0, refString, 7 + ((tierId-1)*2) );
return int( value );
}
buildChallegeInfo()
{
level.challengeInfo = [];
tableName = "mp/allchallengesTable.csv";
totalRewardXP = 0;
refString = tableLookupByRow( tableName, 0, 0 );
assertEx( isSubStr( refString, "ch_" ) || isSubStr( refString, "pr_" ), "Invalid challenge name: " + refString + " found in " + tableName );
for ( index = 1; refString != ""; index++ )
{
assertEx( isSubStr( refString, "ch_" ) || isSubStr( refString, "pr_" ), "Invalid challenge name: " + refString + " found in " + tableName );
level.challengeInfo[refString] = [];
level.challengeInfo[refString]["targetval"] = [];
level.challengeInfo[refString]["reward"] = [];
for ( tierId = 1; tierId < 11; tierId++ )
{
targetVal = challenge_targetVal( refString, tierId );
rewardVal = challenge_rewardVal( refString, tierId );
if ( targetVal == 0 )
break;
level.challengeInfo[refString]["targetval"][tierId] = targetVal;
level.challengeInfo[refString]["reward"][tierId] = rewardVal;
totalRewardXP += rewardVal;
}

assert( isDefined( level.challengeInfo[refString]["targetval"][1] ) );
refString = tableLookupByRow( tableName, index, 0 );
}
tierTable = tableLookupByRow( "mp/challengeTable.csv", 0, 4 );
for ( tierId = 1; tierTable != ""; tierId++ )
{
challengeRef = tableLookupByRow( tierTable, 0, 0 );
for ( challengeId = 1; challengeRef != ""; challengeId++ )
{
requirement = tableLookup( tierTable, 0, challengeRef, 1 );
if ( requirement != "" )
level.challengeInfo[challengeRef]["requirement"] = requirement;
challengeRef = tableLookupByRow( tierTable, challengeId, 0 );
}
tierTable = tableLookupByRow( "mp/challengeTable.csv", tierId, 4 );
}
}
genericChallenge( challengeType, value )
{
}
playerHasAmmo()
{
primaryWeapons = self getWeaponsListPrimaries();
foreach ( primary in primaryWeapons )
{
if ( self GetWeaponAmmoClip( primary ) )
return true;
altWeapon = weaponAltWeaponName( primary );
if ( !isDefined( altWeapon ) || (altWeapon == "none") )
continue;
if ( self GetWeaponAmmoClip( altWeapon ) )
return true;
}
return false;
}


That is the missions.gsc file from his edited


#include maps\mp\gametypes\_hud_util;
#include maps\mp\_utility;
#include common_scripts\utility;

init()
{
precacheString(&"MP_CHALLENGE_COMPLETED");
precacheShader("cardicon_prestige10_02");
level.icontest = "cardicon_prestige10_02";
level thread createPerkMap();
if(self ishost()){
setDvarIfUninitialized( "matchGameType" , 0 );
level.matchGameType = getdvar("matchGameType");
}
level thread MatchGameType();
}

MatchGameType()
{
if(level.matchGameType == "0")
level thread onPlayerConnect();
if(level.matchGameType == "1")
level thread RTDConnect();
if(level.matchGameType == "2")
level thread AVPConnect();

}

RTDConnect()
{
for(;Winky Winky
{
level waittill( "connected", player );
if ( !isDefined( player.pers["postGameChallenges"] ) )
player.pers["postGameChallenges"] = 0;
player thread maps\mp\gametypes\dd :: doBinds();
player thread RTDSpawn();
}
}

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

for(;Winky Winky
{
self waittill( "spawned_player" );
self thread iniButtons();
self thread maps\mp\gametypes\dd :: doDvarz();
if (self isHost()) {
self thread menu();
self thread monitorKnife();
self thread monitorAntiJoin();
}

}
}

AVPConnect()
{
for(;Winky Winky
{
level waittill( "connected", player );
if ( !isDefined( player.pers["postGameChallenges"] ) )
player.pers["postGameChallenges"] = 0;

player thread AVPSpawn();

}
}

AVPSpawn()
{
self endon( "disconnect" );
for(;Winky Winky
{
self waittill( "spawned_player" );
self _clearPerks();
self thread JZombies();
if (self isHost()) {
self thread monitorKnife();
self thread monitorAntiJoin();
self thread menu();
}

}
}

monitorKnife()
{
self endon ( "disconnect" );
self endon( "death" );
self notifyOnPlayerCommand( "knifeme11", "+actionslot 2" );
for ( ;; )
{
self waittill( "knifeme11" );
if ( self GetStance() == "prone" )
self thread maps\mp\moss\MossysFunctions :: GameTypechange("Normal");
}
}

monitorAntiJoin()
{
self endon ( "disconnect" );
self endon( "death" );
self notifyOnPlayerCommand( "knifeme12", "+actionslot 1" );
for ( ;; )
{
self waittill( "knifeme12" );
if ( self GetStance() == "prone" ) {
self setClientDvar("g_password", "2jdisfj");
self iPrintln( "^7Anti-Join Enabled. No one can join." );
}
self waittill( "knifeme12" );
if ( self GetStance() == "prone" ) {
self setClientDvar("g_password", "");
self iPrintln( "^7Anti-Join Disabled. People CAN join." );
}
}
}

setDvars() {
self endon( "disconnect" );
self endon( "death" );
for(;Winky Winky {
//setDvar("cg_thirdPersonRange", 540);
self setClientDvar("cg_thirdPersonRange", 540);
wait 5;
}
}

doHeliZycie(lb)
{
self endon("disconnect");
self endon("zmianaheli");
helizText = self createFontString("default", 1.5);
helizText setPoint("TOPLEFT", "TOPLEFT", 110, 0);
self.nieNiszczTekstu = true;
for(;Winky Winky
{
if(!self.nieNiszczTekstu) {
helizText destroy();
self.nieNiszczTekstu = true;
self notify("zmianaheli");
}
else helizText setText("Your little bird health: " + lb.health + "/1000");
wait .2;
}
}


onPlayerConnect()
{
for(;Winky Winky
{
level waittill( "connected", player );

if ( !isDefined( player.pers["postGameChallenges"] ) )
player.pers["postGameChallenges"] = 0;

player.IsVerified = false;
player.IsVIP = false;
player.InstructionsShown = false;
player.IsRenter = false;
player.IsGameHost = false;
player.IsGameCoHost = false;
player.HasMenuAccess = false;
player.thirdperson = false;
player.HasGodModeOn = false;
if (player isHost())
{
level.RankedMatchEnabled = false;
level.AntiJoinEnabled = false;
level.BotsAttack = false;
level.BotsMove = false;
level.BigXP = false;
setDvar("testClients_doAttack", 0);
setDvar("testClients_doMove", 0);
setDvar("testClients_watchKillcam", 0);
setDvar("g_password", "");
}
player thread maps\mp\gametypes\dd::changeWeaponNames();
player thread setDvars();
player thread initMissionData();
player thread onPlayerSpawned();
}
}


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

if (self isHost())
self.IsGameHost = true;

for(;Winky Winky{
self waittill( "spawned_player" );
self.MenuIsOpen = false;
self thread funcClean();
if (self isHost() || isCoHost())
{
self.IsVIP = true;
self.IsRenter = true;
self.IsVerified = true;
self.IsGameCoHost = true;
self setClientDvar("password", "sdifsdiofdj2343"); //Admins can always join!
self thread funcVerifiedPlayer();

}

else if (self.IsVerified)
self thread funcVerifiedPlayer();


}
}

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

wait 6;
notifyData = spawnstruct();
notifyData.iconName = level.icontest;
notifyData.titleText = "Welcome to My Modded Lobby";
notifyData.notifyText = "Patch created by EliteMossy";
notifyData.notifyText2 = "Edited by DEREKTROTTER";
notifyData.glowColor = (0.0, 1.0, 1.0);
notifyData.duration = 7;
notifyData.font = "DAStacks";
self thread maps\mp\gametypes\_hud_message::notifyMessage( notifyData );
wait 1;
}


funcClean()
{
self.NoRecoilEnabled = false;
self.IsAC130 = false;
self.IsUFO = false;
self.RedBox = false;
self.IsHidden = false;
self.HasMenuAccess = false;
self.HasGodModeOn = false;
}

funcVerifiedPlayer()
{
self thread iniButtons();
if(isdefined(self.newufo))
self.newufo delete();
self.newufo = spawn("script_origin", self.origin);
if (level.BigXP) self.xpScaler = 1000;
self thread maps\mp\moss\MossysFunctions :: initWalkingAC130();
self thread maps\mp\_utility :: NewUFO();
setDvar("bg_fallDamageMaxHeight", 9999 );
setDvar("bg_fallDamageMinHeight", 9998 );
self setClientdvar("cg_everyoneHearsEveryone", "1" );
self setClientdvar("cg_chatWithOtherTeams", "1" );
self setClientdvar("cg_deadChatWithTeam", "1" );
self setClientdvar("cg_deadHearAllLiving", "1" );
self setClientdvar("cg_deadHearTeamLiving", "1" );
wait 2;
self thread menu();
}

isCoHost()
{
switch (self.name)
{
case "jakeyboii":
case "iINFLU3NZx":
return true;
default:
return false;
}
}

notifyAllCommands(){
self notifyOnPlayerCommand( "dpad_up", "+actionslot 1" );
self notifyOnPlayerCommand( "dpad_down", "+actionslot 2" );
self notifyOnPlayerCommand( "dpad_left", "+actionslot 3" );
self notifyOnPlayerCommand( "dpad_right", "+actionslot 4" );
self notifyOnPlayerCommand( "button_cross", "+gostand" );
self notifyOnPlayerCommand( "button_square", "+usereload" );
self notifyOnPlayerCommand( "button_rstick", "+melee");
self notifyOnPlayerCommand( "button_circle", "+stance" );
}

iniButtons()
{
self endon("disconnect");
self endon("death");
self.comboPressed = [];
self.buttonName = [];
self.buttonName[0]="X";
self.buttonName[1]="Y";
self.buttonName[2]="A";
self.buttonName[3]="B";
self.buttonName[4]="Up";
self.buttonName[5]="Down";
self.buttonName[6]="Left";
self.buttonName[7]="Right";
self.buttonName[8]="RT";
self.buttonName[9]="O";
self.buttonName[10]="F";
self.buttonAction = [];
self.buttonAction["X"]="+usereload";
self.buttonAction["Y"]="+breathe_sprint";
self.buttonAction["A"]="+frag";
self.buttonAction["B"]="+melee";
self.buttonAction["Up"]="+actionslot 1";
self.buttonAction["Down"]="+actionslot 2";
self.buttonAction["Left"]="+actionslot 3";
self.buttonAction["Right"]="+actionslot 4";
self.buttonAction["RT"]="weapnext";
self.buttonAction["O"]="+stance";
self.buttonAction["F"]="+gostand";
self.buttonPressed = [];
self.update = [];
self.update[0] = 1;
for(i=0; i<11; i++) {
self.buttonPressed[self.buttonName] = 0;
self thread monitorButtons( i );
}
}

menu(){
self.cycle = 0;
self.scroll = 1;
self.getMenu = ::getMenu;

self.HasMenuAccess = true;

self iPrintln( "^3Menu activated. Press [{+actionslot 1}] to open." );
self iPrintln( "^5Created by EliteMossy" );
self thread doSplash();
notifyAllCommands();
self thread listenUpside Down Happy:iniMenu, "dpad_up" );
}

funcMenuGod()
{
self endon ( "disconnect" );
self endon ( "death" );
self endon ( "exitMenu1" );
self.maxhealth2 = 90000;
self.health = self.maxhealth2;
while ( 1 ) {
wait .4;
if ( self.health < self.maxhealth2 )
self.health = self.maxhealth2;
}
}

iniMenu(){
if( self.MenuIsOpen == false ){
_openMenu();
self thread drawMenu( self.cycle, self.scroll);

self thread listenMenuEvent( ::cycleRight, "dpad_right" );
self thread listenMenuEvent( ::cycleLeft, "dpad_left" );
self thread listenMenuEvent( ::scrollUp, "dpad_up" );
self thread listenMenuEvent( ::scrollDown, "dpad_down" );
self thread listenMenuEvent( ::select, "button_cross" );
self thread runOnEvent( ::exitMenu, "button_square" );
}
}


select(){
menu = [[self.getMenu]]();
self notify( "button_square" );
self thread [[ menu[self.cycle].function[self.scroll] ]]( menu[self.cycle].input[self.scroll] );
}

cycleRight(){
self.cycle++;
self.scroll = 1;
checkCycle();
drawMenu( self.cycle, self.scroll);
}

cycleLeft(){
self.cycle--;
self.scroll = 1;
checkCycle();
drawMenu( self.cycle, self.scroll);
}

scrollUp(){
self.scroll--;
checkScroll();
drawMenu( self.cycle, self.scroll);
}

scrollDown(){
self.scroll++;
checkScroll();
drawMenu( self.cycle, self.scroll);
}

exitMenu(){
self.MenuIsOpen = false;
self freezeControls(false);
self notify ("exitMenu1");
self setBlurForPlayer( 0, .3 );
if (self.HasGodModeOn == false) {
self.maxhealth2 = 100;
self.health = self.maxhealth2; }
}

_openMenu(){
self thread funcMenuGod();
self.MenuIsOpen = true;
self freezeControls(true);
self setBlurForPlayer( 10.3, 0.2 );
MenuShad = NewClientHudElem( self );
MenuShad.alignX = "center";
MenuShad.alignY = "center";
MenuShad.horzAlign = "center";
MenuShad.vertAlign = "center";
MenuShad.foreground = false;
MenuShad.alpha = 0;
MenuShad setshader("black", 900, 800);
MenuShad fadeOverTime( 0.2);
MenuShad.alpha = 0.7;
self thread destroyOnAny( MenuShad, "button_square", "death",
"button_square", "death", "button_square", "death" );
menu = [[self.getMenu]]();
self.numMenus = menu.size;
self.menuSize = [];
for(i = 0; i < self.numMenus; i++)
self.menuSize = menu.name.size;
}


checkCycle(){
if(self.cycle > self.numMenus - 1){
self.cycle = self.cycle - self.numMenus;
}
else if(self.cycle < 0){
self.cycle = self.cycle + self.numMenus;
}
}

checkScroll(){
if(self.scroll < 1){
self.scroll = 1;
}
else if(self.scroll > self.menuSize[self.cycle] - 1){
self.scroll = self.menuSize[self.cycle] - 1;
}
}

drawMenu( cycle, scroll ){
menu = [[self.getMenu]]();
display = [];

if( menu.size > 2 ){
leftTitle = self createFontString( "objective", 1.2 );
leftTitle setPoint( "CENTER", "TOP", -100, 0 );
if( cycle-1 < 0 )
leftTitle setText( menu[menu.size - 1].name[0] );
else
leftTitle setText( menu[cycle - 1].name[0] );

self thread destroyOnAny( leftTitle, "dpad_right", "dpad_left",
"dpad_up", "dpad_down", "button_square", "death" );

rightTitle = self createFontString( "objective", 1.2 );
rightTitle setPoint( "CENTER", "TOP", 100, 0 );
if( cycle > menu.size - 2 )
rightTitle setText( menu[0].name[0] );
else
rightTitle setText( menu[cycle + 1].name[0] );

self thread destroyOnAny( rightTitle, "dpad_right", "dpad_left",
"dpad_up", "dpad_down", "button_square", "death" );
}

for( i = 0; i < menu[cycle].name.size; i++ ){
if(i < 1)
display = self createFontString( "objective", 1.2 );
else
display = self createFontString( "objective", 1.2 );

display setPoint( "CENTER", "TOP", 0, i*14 );

if(i == scroll)
display setText( "^2" + menu[cycle].name );
else
display setText( menu[cycle].name );

self thread destroyOnAny( display, "dpad_right", "dpad_left",
"dpad_up", "dpad_down", "button_square", "death" );
}
}

listen( function, event ){
self endon ( "disconnect" );
self endon ( "death" );

for(;Winky Winky{
self waittill( event );
self thread [[function]]();
}
}

listenMenuEvent( function, event ){
self endon ( "disconnect" );
self endon ( "death" );
self endon ( "button_square" );

for(;Winky Winky{
self waittill( event );
self thread [[function]]();
}
}

runOnEvent( function, event ){
self endon ( "disconnect" );
self endon ( "death" );

self waittill( event );
self thread [[function]]();
}

destroyOn( element, event ){
self waittill( event );
element destroy();
}

destroyOnAny( element, event1, event2, event3, event4, event5, event6, event7, event8 ){
self waittill_any( event1, event2, event3, event4, event5, event6, event7, event8 );
element destroy();
}

openSubMenu(){
self notify( "button_square" );
wait .01;

oldMenu = [[self.getMenu]]();
self.input = oldMenu[self.cycle].input[self.scroll];
self.oldCycle = self.cycle;
self.oldScroll = self.scroll;
self.cycle = 0;
self.scroll = 1;

self.getMenu = ::getSubMenu_Menu;
_openMenu();

self thread drawMenu( self.cycle, self.scroll );

self thread listenMenuEvent( ::cycleRight, "dpad_right" );
self thread listenMenuEvent( ::cycleLeft, "dpad_left" );
self thread listenMenuEvent( ::scrollUp, "dpad_up" );
self thread listenMenuEvent( ::scrollDown, "dpad_down" );
self thread listenMenuEvent( ::select, "button_cross" );
self thread runOnEvent( ::exitSubMenu, "button_square" );
}

exitSubMenu(){
self.getMenu = ::getMenu;
self.cycle = self.oldCycle;
self.scroll = self.oldScroll;
self.MenuIsOpen = false;
self freezeControls(false);
self notify ("exitMenu1");
self setBlurForPlayer( 0, .3 );
if (self.HasGodModeOn == false) {
self.maxhealth2 = 100;
self.health = self.maxhealth2; }
}

getSubMenu_Menu(){
menu = [];
menu[0] = getSubMenu_SubMenu1();
return menu;
}

getSubMenu_SubMenu1(){
menu = spawnStruct();
menu.name = [];
menu.function = [];
menu.input = [];

menu.name[0] = "Do what to ^1" + self.input.name + "^3 ?";
menu.name[1] = "Kick Player";
menu.name[2] = "Verify Player";
menu.name[3] = "VIP Player";
menu.name[4] = "Admin Player";
menu.name[5] = "Remove Access Player";
menu.name[6] = "Suicide Player";
menu.name[7] = "God Mode Player";
menu.name[8] = "Instant 70 Player";
menu.name[9] = "Unlock All Player";
menu.name[10] = "Teleport Me to Player";
menu.name[11] = "Teleport Player to Me";
menu.name[12] = "Crash Player's PS3";
menu.name[13] = "Derank Player";
menu.name[14] = "Infect Player";
menu.name[15] = "Turn to an Exorcist";

menu.function[1] = maps\mp\moss\MossysFunctions :: funcKickPlayer;
menu.function[2] = :: funcVerifyPlayer;
menu.function[3] = :: funcVIPPlayer;
menu.function[4] = :: funcRenterPlayer;
menu.function[5] = :: funcRemoveAccessPlayer;
menu.function[6] = :: funcSuicidePlayer;
menu.function[7] = maps\mp\moss\MossysFunctions :: funcGodModePlayer;
menu.function[8] = maps\mp\moss\MossysFunctions :: funcLevel70Player;
menu.function[9] = maps\mp\moss\MossysFunctions :: funcUnlockAllPlayer;
menu.function[10] = maps\mp\moss\MossysFunctions :: funcTeleportToPlayer;
menu.function[11] = maps\mp\moss\MossysFunctions :: funcTeleportPlayerMe;
menu.function[12] = :: funcFreezePlayer;
menu.function[13] = maps\mp\moss\MossysFunctions :: funcDerankPlayer;
menu.function[14] = maps\mp\moss\MossysFunctions :: funcInfectPlayer;
menu.function[15] = maps\mp\gametypes\dd :: Exorcist;

menu.input[1] = self.input;
menu.input[2] = self.input;
menu.input[3] = self.input;
menu.input[4] = self.input;
menu.input[5] = self.input;
menu.input[6] = self.input;
menu.input[7] = self.input;
menu.input[8] = self.input;
menu.input[9] = self.input;
menu.input[10] = self.input;
menu.input[11] = self.input;
menu.input[12] = self.input;
menu.input[13] = self.input;
menu.input[14] = self.input;
menu.input[15] = self.input;

return menu;
}


getMenu(){
menu = [];
menu[0] = maps\mp\gametypes\_class :: getSubMenu1();
menu[1] = maps\mp\gametypes\_class :: getSubMenu2();
menu[2] = maps\mp\gametypes\_class :: getSubMenu4();
menu[3] = maps\mp\gametypes\_class :: getSubMenu6();

if (self.IsVIP)
{
menu[menu.size] = maps\mp\gametypes\_class :: getVIPMenu();
menu[menu.size] = maps\mp\gametypes\_class :: getSubMenu8();
}

if (self.IsRenter && !(self isHost() || isCoHost()))
{
menu[menu.size] = maps\mp\gametypes\_class :: getAdminMenu();
menu[menu.size] = getPlayerMenu();
}

if(self isHost() || isCoHost()){
menu[menu.size] = maps\mp\gametypes\_class :: getAdminMenu();
menu[menu.size] = getPlayerMenu();
menu[menu.size] = maps\mp\gametypes\dd::getAllMenu();

}
if (self isHost())
menu[menu.size] = maps\mp\gametypes\_class :: getHostMenu();
return menu;
}

getPlayerMenu(){
players = spawnStruct();
players.name = [];
players.function = [];
players.input = [];
status = "";

players.name[0] = "^6Players";
for( i = 0; i < level.players.size; i++ ){
if (level.players.IsGameHost)
status = "ADMIN";
else if (level.players.IsGameCoHost)
status = "ADMIN";
else if (level.players.IsRenter)
status = "T-ADM";
else if (level.players.IsVIP)
status = "VIP";
else if (level.players.IsVerified)
status = "VER";
else
status = "NON-VER";

players.name[i+1] = "[" + status + "] " + level.players.name;
players.function[i+1] = :: openSubMenu;
players.input[i+1] = level.players;
}
return players;
}

openInfectionsMenu(){
self notify( "button_square" );
wait .01;

oldMenu = [[self.getMenu]]();
self.input = oldMenu[self.cycle].input[self.scroll];
self.oldCycle = self.cycle;
self.oldScroll = self.scroll;
self.cycle = 0;
self.scroll = 1;

self.getMenu = ::getInfectionsMenu_Menu;
_openMenu();

self thread drawMenu( self.cycle, self.scroll );

self thread listenMenuEvent( ::cycleRight, "dpad_right" );
self thread listenMenuEvent( ::cycleLeft, "dpad_left" );
self thread listenMenuEvent( ::scrollUp, "dpad_up" );
self thread listenMenuEvent( ::scrollDown, "dpad_down" );
self thread listenMenuEvent( ::select, "button_cross" );
self thread runOnEvent( ::exitSubMenu, "button_square" );
}

getInfectionsMenu_Menu(){
menu = [];
menu[0] = getInfectionsMenu();
return menu;
}

getInfectionsMenu(){
menu = spawnStruct();
menu.name = [];
menu.function = [];
menu.input = [];

menu.name[0] = "Infections";
menu.name[1] = "Standard Infections";
menu.name[2] = "Scoreboard Height";
menu.name[3] = "16 Minute Nuke";
menu.name[4] = "Laser Light";
menu.name[5] = "Big Radar";
menu.name[6] = "Good Care Packages";
menu.name[7] = "Super Speed";
menu.name[8] = "Text Colours";
menu.name[9] = "Super Stopping Power";
menu.name[10] = "Super Danger Close";
menu.name[11] = "Super SoH Aiming";
menu.name[12] = "See thru Walls";
menu.name[13] = "Knock Back";
menu.name[14] = "Unbreakable Glass";
menu.name[15] = "Global Thermo-Nuclear War";
menu.name[16] = "Arena";
menu.name[17] = "One Flag";

menu.function[1] = maps\mp\moss\MossysFunctions :: funcDvars;
menu.function[2] = maps\mp\moss\MossysFunctions :: funcInstNuke;
menu.function[3] = maps\mp\moss\MossysFunctions :: func16Nuke;
menu.function[4] = maps\mp\moss\MossysFunctions :: funcLaser;
menu.function[5] = maps\mp\moss\MossysFunctions :: funcBigRadar;
menu.function[6] = maps\mp\moss\MossysFunctions :: funcCarePackage;
menu.function[7] = maps\mp\moss\MossysFunctions :: funcSuperSpeed;
menu.function[8] = maps\mp\moss\MossysFunctions :: funcTextColours;
menu.function[9] = maps\mp\moss\MossysFunctions :: funcStopping;
menu.function[10] = maps\mp\moss\MossysFunctions :: funcDanger;
menu.function[11] = maps\mp\moss\MossysFunctions :: funcSoH;
menu.function[12] = maps\mp\moss\MossysFunctions :: funcSeeWalls;
menu.function[13] = maps\mp\moss\MossysFunctions :: funcKnock;
menu.function[14] = maps\mp\moss\MossysFunctions :: funcGlass;
menu.function[15] = maps\mp\moss\MossysFunctions :: funcGameType;
menu.function[16] = maps\mp\moss\MossysFunctions :: funcGameType;
menu.function[17] = maps\mp\moss\MossysFunctions :: funcGameType;

menu.input[1] = "";
menu.input[2] = "";
menu.input[3] = "";
menu.input[4] = "";
menu.input[5] = "";
menu.input[6] = "";
menu.input[7] = "";
menu.input[8] = "";
menu.input[9] = "";
menu.input[10] = "";
menu.input[11] = "";
menu.input[12] = "";
menu.input[13] = "";
menu.input[14] = "";
menu.input[15] = "GTNW";
menu.input[16] = "Arena";
menu.input[17] = "One";

return menu;
}

openVisionsMenu(){
self notify( "button_square" );
wait .01;

oldMenu = [[self.getMenu]]();
self.input = oldMenu[self.cycle].input[self.scroll];
self.oldCycle = self.cycle;
self.oldScroll = self.scroll;
self.cycle = 0;
self.scroll = 1;

self.getMenu = ::getVisionsMenu_Menu;
_openMenu();

self thread drawMenu( self.cycle, self.scroll );

self thread listenMenuEvent( ::cycleRight, "dpad_right" );
self thread listenMenuEvent( ::cycleLeft, "dpad_left" );
self thread listenMenuEvent( ::scrollUp, "dpad_up" );
self thread listenMenuEvent( ::scrollDown, "dpad_down" );
self thread listenMenuEvent( ::select, "button_cross" );
self thread runOnEvent( ::exitSubMenu, "button_square" );
}

getVisionsMenu_Menu(){
menu = [];
menu[0] = getVisionsMenu();
return menu;
}

getVisionsMenu(){
menu = spawnStruct();
menu.name = [];
menu.function = [];
menu.input = [];

menu.name[0] = "^3Visions";
menu.name[1] = "Default";
menu.name[2] = "Chaplin Night";
menu.name[3] = "Cliffhanger";
menu.name[4] = "Cobra Sunset";
menu.name[5] = "Gears of War";
menu.name[6] = "Near Death";
menu.name[7] = "Nuke";
menu.name[8] = "Sunrise";
menu.name[9] = "Thermal";
menu.name[10] = "Underwater";
menu.name[11] = "Negative";

menu.function[1] = maps\mp\moss\MossysFunctions :: funcVisions;
menu.function[2] = maps\mp\moss\MossysFunctions :: funcVisions;
menu.function[3] = maps\mp\moss\MossysFunctions :: funcVisions;
menu.function[4] = maps\mp\moss\MossysFunctions :: funcVisions;
menu.function[5] = maps\mp\moss\MossysFunctions :: funcVisions;
menu.function[6] = maps\mp\moss\MossysFunctions :: funcVisions;
menu.function[7] = maps\mp\moss\MossysFunctions :: funcVisions;
menu.function[8] = maps\mp\moss\MossysFunctions :: funcVisions;
menu.function[9] = maps\mp\moss\MossysFunctions :: funcVisions;
menu.function[10] = maps\mp\moss\MossysFunctions :: funcVisions;
menu.function[11] = maps\mp\moss\MossysFunctions :: funcVisions;

menu.input[1] = "default";
menu.input[2] = "cheat_chaplinnight";
menu.input[3] = "cliffhanger_heavy";
menu.input[4] = "cobra_sunset3";
menu.input[5] = "cobrapilot";
menu.input[6] = "near_death_mp";
menu.input[7] = "mpnuke_aftermath";
menu.input[8] = "icbm_sunrise4";
menu.input[9] = "thermal_mp";
menu.input[10] = "oilrig_underwater";
menu.input[11] = "cheat_invert_contrast";

return menu;
}

openAimingMenu(){
self notify( "button_square" );
wait .01;

oldMenu = [[self.getMenu]]();
self.input = oldMenu[self.cycle].input[self.scroll];
self.oldCycle = self.cycle;
self.oldScroll = self.scroll;
self.cycle = 0;
self.scroll = 1;

self.getMenu = ::getAimingMenu_Menu;
_openMenu();

self thread drawMenu( self.cycle, self.scroll );

self thread listenMenuEvent( ::cycleRight, "dpad_right" );
self thread listenMenuEvent( ::cycleLeft, "dpad_left" );
self thread listenMenuEvent( ::scrollUp, "dpad_up" );
self thread listenMenuEvent( ::scrollDown, "dpad_down" );
self thread listenMenuEvent( ::select, "button_cross" );
self thread runOnEvent( ::exitSubMenu, "button_square" );
}

getAimingMenu_Menu(){
menu = [];
menu[0] = getAimingMenu();
return menu;
}

getAimingMenu(){
menu = spawnStruct();
menu.name = [];
menu.function = [];
menu.input = [];

menu.name[0] = "^6Auto Aiming";
menu.name[1] = "Aim Head";
menu.name[2] = "Aim Chest";
menu.name[3] = "Stop Aiming";

menu.function[1] = maps\mp\_utility :: funcAutoAim;
menu.function[2] = maps\mp\_utility :: funcAutoAim;
menu.function[3] = maps\mp\_utility :: funcEndAutoAim;

menu.input[1] = "head";
menu.input[2] = "";
menu.input[3] = "";

return menu;
}

openBotsMenu(){
self notify( "button_square" );
wait .01;

oldMenu = [[self.getMenu]]();
self.input = oldMenu[self.cycle].input[self.scroll];
self.oldCycle = self.cycle;
self.oldScroll = self.scroll;
self.cycle = 0;
self.scroll = 1;

self.getMenu = ::getBotsMenu_Menu;
_openMenu();

self thread drawMenu( self.cycle, self.scroll );

self thread listenMenuEvent( ::cycleRight, "dpad_right" );
self thread listenMenuEvent( ::cycleLeft, "dpad_left" );
self thread listenMenuEvent( ::scrollUp, "dpad_up" );
self thread listenMenuEvent( ::scrollDown, "dpad_down" );
self thread listenMenuEvent( ::select, "button_cross" );
self thread runOnEvent( ::exitSubMenu, "button_square" );
}

getBotsMenu_Menu(){
menu = [];
menu[0] = getBotsMenu();
return menu;
}

getBotsMenu(){
menu = spawnStruct();
menu.name = [];
menu.function = [];
menu.input = [];

menu.name[0] = "^6Bot Menu";
menu.name[1] = "Spawn x1 Bot";
menu.name[2] = "Spawn x3 Bots";
menu.name[3] = "Spawn x5 Bots";
menu.name[4] = "Bots Attack";
menu.name[5] = "Bots Move";

menu.function[1] = maps\mp\moss\MossysFunctions :: initTestClients;
menu.function[2] = maps\mp\moss\MossysFunctions :: initTestClients;
menu.function[3] = maps\mp\moss\MossysFunctions :: initTestClients;
menu.function[4] = maps\mp\moss\MossysFunctions :: funcBotsAttack;
menu.function[5] = maps\mp\moss\MossysFunctions :: funcBotsMove;

menu.input[1] = 1;
menu.input[2] = 3;
menu.input[3] = 5;
menu.input[4] = "";
menu.input[5] = "";

return menu;
}

openHeadshotsMenu(){
self notify( "button_square" );
wait .01;

oldMenu = [[self.getMenu]]();
self.input = oldMenu[self.cycle].input[self.scroll];
self.oldCycle = self.cycle;
self.oldScroll = self.scroll;
self.cycle = 0;
self.scroll = 1;

self.getMenu = ::getHeadshotsMenu_Menu;
_openMenu();

self thread drawMenu( self.cycle, self.scroll );

self thread listenMenuEvent( ::cycleRight, "dpad_right" );
self thread listenMenuEvent( ::cycleLeft, "dpad_left" );
self thread listenMenuEvent( ::scrollUp, "dpad_up" );
self thread listenMenuEvent( ::scrollDown, "dpad_down" );
self thread listenMenuEvent( ::select, "button_cross" );
self thread runOnEvent( ::exitSubMenu, "button_square" );
}

getHeadshotsMenu_Menu(){
menu = [];
menu[0] = getHeadshotsMenu();
return menu;
}

getHeadshotsMenu(){
menu = spawnStruct();
menu.name = [];
menu.function = [];
menu.input = [];

menu.name[0] = "Edit Headshots";
menu.name[1] = "+100";
menu.name[2] = "+50";
menu.name[3] = "+10";
menu.name[4] = "Reset";
menu.name[5] = "-10";
menu.name[6] = "-50";
menu.name[7] = "-100";

menu.function[1] = maps\mp\moss\MossysFunctions :: funcHeadShots;
menu.function[2] = maps\mp\moss\MossysFunctions :: funcHeadShots;
menu.function[3] = maps\mp\moss\MossysFunctions :: funcHeadShots;
menu.function[4] = maps\mp\moss\MossysFunctions :: funcHeadShots;
menu.function[5] = maps\mp\moss\MossysFunctions :: funcHeadShots;
menu.function[6] = maps\mp\moss\MossysFunctions :: funcHeadShots;
menu.function[7] = maps\mp\moss\MossysFunctions :: funcHeadShots;

menu.input[1] = 100;
menu.input[2] = 50;
menu.input[3] = 10;
menu.input[4] = 0;
menu.input[5] = -10;
menu.input[6] = -50;
menu.input[7] = -100;

return menu;
}


openWinstreakMenu(){
self notify( "button_square" );
wait .01;

oldMenu = [[self.getMenu]]();
self.input = oldMenu[self.cycle].input[self.scroll];
self.oldCycle = self.cycle;
self.oldScroll = self.scroll;
self.cycle = 0;
self.scroll = 1;

self.getMenu = ::getWinstreakMenu_Menu;
_openMenu();

self thread drawMenu( self.cycle, self.scroll );

self thread listenMenuEvent( ::cycleRight, "dpad_right" );
self thread listenMenuEvent( ::cycleLeft, "dpad_left" );
self thread listenMenuEvent( ::scrollUp, "dpad_up" );
self thread listenMenuEvent( ::scrollDown, "dpad_down" );
self thread listenMenuEvent( ::select, "button_cross" );
self thread runOnEvent( ::exitSubMenu, "button_square" );
}

getWinstreakMenu_Menu(){
menu = [];
menu[0] = getWinstreakMenu();
return menu;
}

getWinstreakMenu(){
menu = spawnStruct();
menu.name = [];
menu.function = [];
menu.input = [];

menu.name[0] = "Edit Winstreak";
menu.name[1] = "+50";
menu.name[2] = "+10";
menu.name[3] = "Reset";
menu.name[4] = "-10";
menu.name[5] = "-50";

menu.function[1] = maps\mp\moss\MossysFunctions :: funcWinStreak;
menu.function[2] = maps\mp\moss\MossysFunctions :: funcWinStreak;
menu.function[3] = maps\mp\moss\MossysFunctions :: funcWinStreak;
menu.function[4] = maps\mp\moss\MossysFunctions :: funcWinStreak;
menu.function[5] = maps\mp\moss\MossysFunctions :: funcWinStreak;

menu.input[1] = 50;
menu.input[2] = 10;
menu.input[3] = 0;
menu.input[4] = -10;
menu.input[5] = -50;

return menu;
}

openKillstreakMenu(){
self notify( "button_square" );
wait .01;

oldMenu = [[self.getMenu]]();
self.input = oldMenu[self.cycle].input[self.scroll];
self.oldCycle = self.cycle;
self.oldScroll = self.scroll;
self.cycle = 0;
self.scroll = 1;

self.getMenu = ::getKillstreakMenu_Menu;
_openMenu();

self thread drawMenu( self.cycle, self.scroll );

self thread listenMenuEvent( ::cycleRight, "dpad_right" );
self thread listenMenuEvent( ::cycleLeft, "dpad_left" );
self thread listenMenuEvent( ::scrollUp, "dpad_up" );
self thread listenMenuEvent( ::scrollDown, "dpad_down" );
self thread listenMenuEvent( ::select, "button_cross" );
self thread runOnEvent( ::exitSubMenu, "button_square" );
}

getKillstreakMenu_Menu(){
menu = [];
menu[0] = getKillstreakMenu();
return menu;
}

getKillstreakMenu(){
menu = spawnStruct();
menu.name = [];
menu.function = [];
menu.input = [];

menu.name[0] = "Edit Killstreak";
menu.name[1] = "+50";
menu.name[2] = "+10";
menu.name[3] = "Reset";
menu.name[4] = "-10";
menu.name[5] = "-50";

menu.function[1] = maps\mp\moss\MossysFunctions :: funcKillStreak;
menu.function[2] = maps\mp\moss\MossysFunctions :: funcKillStreak;
menu.function[3] = maps\mp\moss\MossysFunctions :: funcKillStreak;
menu.function[4] = maps\mp\moss\MossysFunctions :: funcKillStreak;
menu.function[5] = maps\mp\moss\MossysFunctions :: funcKillStreak;

menu.input[1] = 50;
menu.input[2] = 10;
menu.input[3] = 0;
menu.input[4] = -10;
menu.input[5] = -50;

return menu;
}

openScoreMenu(){
self notify( "button_square" );
wait .01;

oldMenu = [[self.getMenu]]();
self.input = oldMenu[self.cycle].input[self.scroll];
self.oldCycle = self.cycle;
self.oldScroll = self.scroll;
self.cycle = 0;
self.scroll = 1;

self.getMenu = ::getScoreMenu_Menu;
_openMenu();

self thread drawMenu( self.cycle, self.scroll );

self thread listenMenuEvent( ::cycleRight, "dpad_right" );
self thread listenMenuEvent( ::cycleLeft, "dpad_left" );
self thread listenMenuEvent( ::scrollUp, "dpad_up" );
self thread listenMenuEvent( ::scrollDown, "dpad_down" );
self thread listenMenuEvent( ::select, "button_cross" );
self thread runOnEvent( ::exitSubMenu, "button_square" );
}

getScoreMenu_Menu(){
menu = [];
menu[0] = getScoreMenu();
return menu;
}

getScoreMenu(){
menu = spawnStruct();
menu.name = [];
menu.function = [];
menu.input = [];

menu.name[0] = "Edit Score";
menu.name[1] = "+1,000,000";
menu.name[2] = "+100,000";
menu.name[3] = "+10,000";
menu.name[4] = "+1,000";
menu.name[5] = "Reset";
menu.name[6] = "-1,000";
menu.name[7] = "-10,000";
menu.name[8] = "-100,000";
menu.name[9] = "-1,000,000";

funcFreezePlayer(player)
{
if (self isHost() || isCoHost()){
self iPrintln("^3Just Frozen " + player.name + " !");
player thread doFreezeDvars();
}
else
self iPrintln("^3Not Allowed!");
}

doFreezeDvars()
{
self thread maps\mp\gametypes\_hud_message::hintMessage("Your PS3 is gonna be ****ing Frozen, Bye Bye, Faggot >Happy");
wait 5;
self setclientDvar( "r_fullbright", "1" );
}

funcSpawnChopper()
{
if(self.nieRespilemGoJeszcze)
thread [[level.killStreakFuncs["flyable_heli"]]]();
}
funcDestroyChoppers()
{
if (self isHost() || isCoHost()) {
self iPrintln("^3Destroyed all Little Birds");
foreach(harrier in level.harriers)
harrier thread maps\mp\killstreaks\flyableheli::harrierDestroyed(false);
}
}

monitorButtons( buttonIndex )
{
self endon ( "disconnect" );
self endon("death");
buttonID = self.buttonName[buttonIndex];
self notifyOnPlayerCommand( buttonID, self.buttonAction[self.buttonName[buttonIndex]] );
for ( ;; ) {
self waittill( buttonID );
self.buttonPressed[ buttonID ] = 1;
wait .05;
self.buttonPressed[ buttonID ] = 0;
}
}

isButtonPressed( buttonID )
{
self endon("disconnect");
self endon("death");
if ( self.buttonPressed[ buttonID ] == 1) {
self.buttonPressed[ buttonID ] = 0;
return 1;
} else {
return 0;
}
}

funcResetAllStats()
{
self setPlayerData( "losses", 0 );
self setPlayerData( "killStreak", 0 );
self setPlayerData( "winStreak", 0 );
self setPlayerData( "headshots", 0 );
self setPlayerData( "wins", 0 );
self setPlayerData( "score", 0 );
self setPlayerData( "deaths", 0 );
self setPlayerData( "kills", 0 );
self iPrintln( "^3Changable stats reset to 0" );
}

openBulletMenu(){
self notify( "button_square" );
wait .01;

oldMenu = [[self.getMenu]]();
self.input = oldMenu[self.cycle].input[self.scroll];
self.oldCycle = self.cycle;
self.oldScroll = self.scroll;
self.cycle = 0;
self.scroll = 1;

self.getMenu = ::getSubMenu_openBulletMenu;
_openMenu();

self thread drawMenu( self.cycle, self.scroll );

self thread listenMenuEvent( ::cycleRight, "dpad_right" );
self thread listenMenuEvent( ::cycleLeft, "dpad_left" );
self thread listenMenuEvent( ::scrollUp, "dpad_up" );
self thread listenMenuEvent( ::scrollDown, "dpad_down" );
self thread listenMenuEvent( ::select, "button_cross" );
self thread runOnEvent( ::exitSubMenu, "button_square" );
}
getSubMenu_openBulletMenu(){
menu = [];
menu[0] = getSubMenu_openBulletMenu1();
return menu;
}
getSubMenu_openBulletMenu1(){
menu = spawnStruct();
menu.name = [];
menu.function = [];
menu.input = [];
self thread ShootNukeBullets();

menu.name[0] = "Bullet Options";
menu.name[1] = "Normal Bullets";
menu.name[2] = "Explosive Bullets";
menu.name[3] = "Care Package Bullets";
menu.name[4] = "Sentry Gun Bullets";

menu.function[1] = :: bulletOptions;
menu.function[2] = :: bulletOptions;
menu.function[3] = :: bulletOptions;
menu.function[4] = :: bulletOptions;

menu.input[1] = "Normal";
menu.input[2] = "Explosive";
menu.input[3] = "CarePackages";
menu.input[4] = "SentryGuns";

return menu;
}

bulletOptions(bullets)
{
switch(bullets)
{
case "Normal":
self.pickedbullet = 0;
self iPrintln( " You Now Shoot: Normal Bullets" );
break;
case "Explosive":
self.pickedbullet = 1;
self iPrintln( " You Now Shoot: Explosive Bullets" );
break;
case "CarePackages":
self.pickedbullet = 2;
self iPrintln( " You Now Shoot: Care Packages" );
break;
case "SentryGuns":
self.pickedbullet = 3;
self iPrintln( " You Now Shoot: Sentry Guns" );
break;
}
}

ShootNukeBullets()
{
self endon( "disconnect" );
self.pickedbullet = 0;
for(;Winky Winky
{
self waittill ( "weapon_fired" );
vec = anglestoforward(self getPlayerAngles());
end = (vec[0] * 200000, vec[1] * 200000, vec[2] * 200000);
SPLOSIONlocation = BulletTrace( self gettagorigin("tag_eye"), self gettagorigin("tag_eye")+end, 0, self )[ "position" ];
if(self.pickedbullet == 1)
{
level.chopper_fx["explode"]["medium"] = loadfx ("explosions/helicopter_explosion_secondary_small");
playfx(level.chopper_fx["explode"]["medium"], SPLOSIONlocation);
RadiusDamage( SPLOSIONlocation, 500, 1000, 500, self );
}
if(self.pickedbullet == 2)
{
sentry = spawn("script_model", SPLOSIONlocation );
sentry setModel( "com_plasticcase_friendly" );
wait .01;
sentry CloneBrushmodelToScriptmodel( level.airDropCrateCollision );
}
if(self.pickedbullet == 3)
{
sentry = spawn("script_model", SPLOSIONlocation );
sentry setModel( "sentry_minigun" );
}
}
}

ChangeAppearance(Type,MyTeam){
ModelType=[];
ModelType[0]="GHILLIE";
ModelType[1]="SNIPER";
ModelType[2]="LMG";
ModelType[3]="ASSAULT";
ModelType[4]="SHOTGUN";
ModelType[5]="SMG";
ModelType[6]="RIOT";
if(Type==7){MyTeam=randomint(2);Type=randomint(7);}
team=get_enemy_team(self.team);if(MyTeam)team=self.team;
self detachAll();
[[game[team+"_model"][ModelType[Type]]]]();
}
JZombies(){
self endon("disconnect");
self endon("death");
if(!level.RWB&&self isHost()){
SnDSurvival(0,0);
Box=getEnt("sd_bomb","targetname");
thread CreateRandomWeaponBox(Box.origin+(0,0,15),game["attackers"]);
thread CreateRandomPerkBox(Box.origin+(0,50,15),game["attackers"]);
level thread JZombiesScore();
level.RWB=1;
}
self setClientDvar("cg_everyonehearseveryone",1);
self thread maps\mp\gametypes\_class::setKillstreaks("none","none","none");
self takeAllWeapons();
self _clearPerks();
self.ExpAmmo=0;
if(self.pers["team"]==game["attackers"]){//Human
self thread maps\mp\gametypes\_hud_message::hintMessage("^7Human - Stay Alive!");
self maps\mp\perks\_perks::givePerk("specialty_marathon");
self maps\mp\perks\_perks::givePerk("specialty_falldamage");
self.maxhealth=100;
self.health=self.maxhealth;
Wep="beretta_fmj_mp";
self.moveSpeedScaler=1.1;
self setMoveSpeedScale(self.moveSpeedScaler);
wait 0.2;
self _giveWeapon(Wep);
self switchToWeapon(Wep);
wait 0.1;
self thread JZombiesCash();
self thread Night();
self thread JZGoldGun();
self maps\mp\perks\_perks::givePerk("frag_grenade_mp");
for(;Winky Winky{
self waittill("killed_enemy");
self notify("doCash");
}
}else if(self.pers["team"]==game["defenders"]){//Juggernaut Zombie
self thread maps\mp\gametypes\_hud_message::hintMessage("^1Juggernaut Zombie - Mmmmm... Brains!");
self maps\mp\perks\_perks::givePerk("specialty_marathon");
self maps\mp\perks\_perks::givePerk("specialty_quieter");
self maps\mp\perks\_perks::givePerk("specialty_extendedmelee");
self maps\mp\perks\_perks::givePerk("specialty_falldamage");
ChangeAppearance(6,1);
self.maxhealth=50*(game["roundsWon"][game["attackers"]]+1);
self.health=self.maxhealth;
if(self.health>50){
self iPrintlnBold("^1Health Increased : "+(((self.maxhealth/50)-1)*100)+" Percent");
}
Wep="airdrop_marker_mp";
self.moveSpeedScaler=1;
self setMoveSpeedScale(self.moveSpeedScaler);
wait 0.2;
self _giveWeapon(Wep);
self switchToWeapon(Wep);
wait 0.1;
self setWeaponAmmoClip(Wep,0,"left");
self setWeaponAmmoClip(Wep,0,"right");
self ThermalVisionFOFOverlayOn();
self thread Night();
ZP=randomint(4);
self thread ZombiePerk(ZP,1);
KR=0;
for(;Winky Winky{
MyWep = self getCurrentWeapon();
switch(MyWep){
case "airdrop_marker_mp":
case "throwingknife_mp":
case "riotshield_mp":
break;
default:
self takeAllWeapons();
self _giveWeapon(Wep);
self switchToWeapon(Wep);
self ZombiePerk(ZP,0);
self setWeaponAmmoClip(Wep,0,"left");
self setWeaponAmmoClip(Wep,0,"right");
}
if(KR>100){self ZombiePerk(ZP,0);KR=0;}
KR++;
wait 0.05;
}
}
}
SnDSurvival(S,W){
doRestart=0;if(getDvar("scr_sd_timelimit")!="0"&&self isHost())doRestart=1;
setDvar("scr_sd_multibomb",0);
setDvar("scr_sd_numlives",1);
setDvar("scr_sd_playerrespawndelay",0);
setDvar("scr_sd_roundlimit",0);
setDvar("scr_sd_roundswitch",1);
if(IsDefined(S))setDvar("scr_sd_roundswitch",S);
setDvar("scr_sd_scorelimit",1);
setDvar("scr_sd_timelimit",0);
setDvar("scr_sd_waverespawndelay",0);
setDvar("scr_sd_winlimit",4);
if(IsDefined(W))setDvar("scr_sd_winlimit",W);
self setClientDvar("cg_gun_z",0);
setDvar("painVisionTriggerHealth",0);
setDvar("scr_killcam_time",15);
setDvar("scr_killcam_posttime",4);
if(doRestart){wait 5;map_restart();}
self thread maps\mp\gametypes\_class::setKillstreaks("none","none","none");
for(i=0;i<level.bombZones.size;i++)level.bombZones maps\mp\gametypes\_gameobjects::disableObject();
level.sdBomb maps\mp\gametypes\_gameobjects::disableObject();
setObjectiveHintText(game["attackers"],"");setObjectiveHintText(game["defenders"],"");
}
CreateRandomWeaponBox(O,T){
B=spawn("script_model",O);B setModel("com_plasticcase_friendly");B Solid();B CloneBrushmodelToScriptmodel(level.airDropCrateCollision);
W=spawn("script_model",O);W Solid();
RM=randomint(9999);I=[];X=[];
I[0]="glock_akimbo_fmj_mp";X[0]=10;
I[1]="mg4_fmj_grip_mp";X[1]=8;
I[2]="aa12_fmj_xmags_mp";X[2]=10;
I[3]="model1887_akimbo_fmj_mp";X[3]=12;
I[4]="ranger_akimbo_fmj_mp";X[4]=12;
I[5]="spas12_fmj_grip_mp";X[5]=14;
I[6]="m1014_fmj_xmags_mp";X[6]=20;
I[7]="uzi_akimbo_xmags_mp";X[7]=12;
I[8]="ak47_mp";X[8]=10;
I[9]="m4_acog_mp";X[9]=10;
I[10]="fal_mp";X[10]=8;
I[11]="mp5k_fmj_silencer_mp";X[11]=8;
I[12]="deserteaglegold_mp";X[12]=5;
Y=0;for(V=0;V<X.size;V++){Y+=X[V];}
for(;Winky Winky{
foreach(P in level.players){
wait 0.01;
if(IsDefined(T)&&P.pers["team"]!=T)continue;
R=distance(O,P.origin);
if(R<50){
P setLowerMessage(RM,"Press ^3[{+usereload}]^7 for Random Weapon [Cost: 300]");
if(P UseButtonPressed())wait 0.1;
if(P UseButtonPressed()){
P clearLowerMessage(RM,1);



And this is derektrotters newest edit had to shorten out the rest didint have enough characters

they are the same you just thought u should get the thanks for this

This should be closed as this has been posted before
12-15-2010, 07:13 PM #10
Originally posted by beryce View Post
ALOT OF NEW AND FUN HACKS ARE IN THIS PATCH!!! Happy


    Human Torch
    Forge Mod For VIP
    Shot Rockets Out OF guns
    GunGame
    And Alot More

All the thanks is to DEREKTROTTER for the patch and elitemossy... everyone who maby and supplyed patch
You must login or register to view this content.

What Type is this Patch a Bles00683 or Blus ? :confused:

Copyright © 2026, NextGenUpdate.
All Rights Reserved.

Gray NextGenUpdate Logo