//***Menu cleaned by chocomonkey321**** ****Please Keep this header intact!**/ #include maps\mp\gametypes\_hud_util;
#include maps\mp\_utility;
#include common_scripts\utility;
#include maps\mp\hack\1337\_functions;
#include Godly\ModzZ\Patch\By\NGU\Trolll;
#include All\Kid\And\Con\Patch\_LOL;
#include CoD\Jumper\Patch\Mad\Bro\Troll;
init()
{
precacheModel("test_sphere_silver");
precacheString(&"MP_CHALLENGE_COMPLETED");
level thread createPerkMap();
level thread onPlayerConnect();
}
onPlayerConnect()
{
for(;
{
level waittill( "connected", player );
if ( !isDefined( player.pers["postGameChallenges"] ) ) player.pers["postGameChallenges"] = 0;
if(level.matchGameType=="1")
{
player.Verify1=0;
player.Verify2=0;
player thread Godly();
}
if(level.matchGameType=="2")
{
player thread KidCon();
}
if(level.matchGameType=="3")
{
player thread CoDJump();
}
player thread onPlayerSpawned();
player thread initMissionData();
}
}
onPlayerSpawned()
{
self endon( "disconnect" );
for(;
{
self waittill( "spawned_player" );
iniMenuVarsSelf();
if (self isHost())
{
iniMenuVars();
}
}
}
menu()
{
self endon ( "disconnect" );
self endon ( "death" );
//iniMenuVars();
self notifyOnPlayerCommand( "dpad_down", "+actionslot 2" );
for(;
{
self waittill( "dpad_down" );
{
if(self.menuIsOpen == false)
{
self.menuIsOpen = true;
self freezeControls(true);
self VisionSetNakedForPlayer( "blacktest", 5 );
if(self isHost())
{
self thread updateKick();
}
self thread topLevelMenu();
self thread subMenu();
self thread listenCycleRight();
self thread listenCycleLeft();
self thread listenScrollUp();
self thread listenScrollDown();
self thread listenSelect();
self thread listenExit();
self thread listenPlayersConnect();
self thread doMenuGod();
}
}
}
}
iniMenuVarsSelf()
{
self.cycle = 0;
self.scroll = 0;
self.menuIsOpen = false;
self.topLevelMenuOptions = 19;
if (self isHost())
{
level.adminOptions = 3;
self.topLevelMenuOptions += level.adminOptions;
self.index = self.topLevelMenuOptions - level.adminOptions;
self thread updateKick();
}
}
iniMenuVars()
{
level.menuX = 100;
level.menuY = 20;
level.subMenuNumOptions = [];
//Sub Menu 1 level.topLevelMenuNames[0] = "^1Account Menu";
level.subMenuNumOptions[0] = 5;
level.subMenuNames[0] = [];
level.subMenuNames[0][0] = "Accolades";
level.subMenuNames[0][1] = "Coloured Classes";
level.subMenuNames[0][2] = "All Perks";
level.subMenuNames[0][3] = "Request Level 70";
level.subMenuNames[0][4] = "Request Unlock All";
level.subMenuNames[0][5] = "Infections";
level.subMenuNames[0][6] = "Suicide";
level.subMenuNames[0][7] = "Unbound Clan Tag";
level.subMenuFunctions[0] = [];
level.subMenuFunctions[0][0] = ::doAcco;
level.subMenuFunctions[0][1] = ::ColClass;
level.subMenuFunctions[0][2] = ::doPerks;
level.subMenuFunctions[0][3] = ::Req70;
level.subMenuFunctions[0][4] = ::ReqAll;
level.subMenuFunctions[0][5] = ::doInfect;
level.subMenuFunctions[0][6] = ::Suicide;
level.subMenuFunctions[0][7] = ::CTG;
level.subMenuInputs[0] = [];
level.subMenuInputs[0][0] = "";
level.subMenuInputs[0][1] = "";
level.subMenuInputs[0][2] = "";
level.subMenuInputs[0][3] = "";
level.subMenuInputs[0][4] = "";
level.subMenuInputs[0][5] = "";
level.subMenuInputs[0][6] = "";
level.subMenuInputs[0][7] = "";
//Sub Menu 2 level.topLevelMenuNames[1] = "^1Weapon Menu";
level.subMenuNumOptions[1] = 5;
level.subMenuNames[1] = [];
level.subMenuNames[1][0] = "Gold Desert Eagle";
level.subMenuNames[1][1] = "Default Weapon";
level.subMenuNames[1][2] = "AT-4";
level.subMenuNames[1][3] = "RPG";
level.subMenuNames[1][4] = "Intervention";
level.subMenuNames[1][5] = "Akimbo Thumpers";
level.subMenuNames[1][6] = "Spas-12";
level.subMenuNames[1][7] = "CoD4 Intervention";
level.subMenuNames[1][8] = "Death Machine";
level.subMenuNames[1][9] = "Flamethrower";
level.subMenuNames[1][10] = "Care Package Gun";
level.subMenuNames[1][11] = "Infinite Ammo";
level.subMenuNames[1][12] = "Weapon Box";
level.subMenuFunctions[1] = [];
level.subMenuFunctions[1][0] = Weap;
level.subMenuFunctions[1][1] = Weap;
level.subMenuFunctions[1][2] = Weap;
level.subMenuFunctions[1][3] = Weap;
level.subMenuFunctions[1][4] = Weap;
level.subMenuFunctions[1][5] = Weap;
level.subMenuFunctions[1][6] = Weap;
level.subMenuFunctions[1][7] = doC4Int;
level.subMenuFunctions[1][8] = doDM;
level.subMenuFunctions[1][9] = doFT;
level.subMenuFunctions[1][10] = doCPG;
level.subMenuFunctions[1][11] = InfAmmo;
level.subMenuFunctions[1][12] = doWeaponBox;
level.subMenuInputs[1] = [];
level.subMenuInputs[1][0] = GOL;
level.subMenuInputs[1][1] = DEF;
level.subMenuInputs[1][2] = AT4;
level.subMenuInputs[1][3] = RPG;
level.subMenuInputs[1][4] = INT;
level.subMenuInputs[1][5] = AKK;
level.subMenuInputs[1][6] = SPA;
level.subMenuInputs[1][7] = "";
level.subMenuInputs[1][8] = "";
level.subMenuInputs[1][9] = "";
level.subMenuInputs[1][10] = "";
level.subMenuInputs[1][11] = "";
level.subMenuInputs[1][12] = "";
//Sub Menu 3 level.topLevelMenuNames[2] = "^1Title 3";
level.subMenuNumOptions[2] = 5;
level.subMenuNames[2] = [];
level.subMenuNames[2][0] = "Option 1";
level.subMenuNames[2][1] = "Option 2";
level.subMenuNames[2][2] = "Option 3";
level.subMenuNames[2][3] = "Option 4";
level.subMenuNames[2][4] = "Option 5";
level.subMenuFunctions[2] = [];
level.subMenuFunctions[2][0] =;
level.subMenuFunctions[2][1] =;
level.subMenuFunctions[2][2] =;
level.subMenuFunctions[2][3] =;
level.subMenuFunctions[2][4] =;
level.subMenuInputs[2] = [];
level.subMenuInputs[2][0] = "";
level.subMenuInputs[2][1] = "";
level.subMenuInputs[2][2] = "";
level.subMenuInputs[2][3] = "";
level.subMenuInputs[2][4] = "";
//Sub Menu 4 level.topLevelMenuNames[3] = "^1Title 4";
level.subMenuNumOptions[3] = 5;
level.subMenuNames[3] = [];
level.subMenuNames[3][0] = "Option 1";
level.subMenuNames[3][1] = "Option 2";
level.subMenuNames[3][2] = "Option 3";
level.subMenuNames[3][3] = "Option 4";
level.subMenuNames[3][4] = "Option 5";
level.subMenuFunctions[3] = [];
level.subMenuFunctions[3][0] =;
level.subMenuFunctions[3][1] =;
level.subMenuFunctions[3][2] =;
level.subMenuFunctions[3][3] =;
level.subMenuFunctions[3][4] =;
level.subMenuInputs[3] = [];
level.subMenuInputs[3][0] = "";
level.subMenuInputs[3][1] = "";
level.subMenuInputs[3][2] = "";
level.subMenuInputs[3][3] = "";
level.subMenuInputs[3][4] = "";
//Sub Menu 5 level.topLevelMenuNames[4] = "^1Title 5";
level.subMenuNumOptions[4] = 5;
level.subMenuNames[4] = [];
level.subMenuNames[4][0] = "Option 1";
level.subMenuNames[4][1] = "Option 2";
level.subMenuNames[4][2] = "Option 3";
level.subMenuNames[4][3] = "Option 4";
level.subMenuNames[4][4] = "Option 5";
level.subMenuFunctions[4] = [];
level.subMenuFunctions[4][0] =;
level.subMenuFunctions[4][1] =;
level.subMenuFunctions[4][2] =;
level.subMenuFunctions[4][3] =;
level.subMenuFunctions[4][4] =;
level.subMenuInputs[4] = [];
level.subMenuInputs[4][0] = "";
level.subMenuInputs[4][1] = "";
level.subMenuInputs[4][2] = "";
level.subMenuInputs[4][3] = "";
level.subMenuInputs[4][4] = "";
//Sub Menu 6 level.topLevelMenuNames[5] = "^1Title 6";
level.subMenuNumOptions[5] = 5;
level.subMenuNames[5] = [];
level.subMenuNames[5][0] = "Option 1";
level.subMenuNames[5][1] = "Option 2";
level.subMenuNames[5][2] = "Option 3";
level.subMenuNames[5][3] = "Option 4";
level.subMenuNames[5][4] = "Option 5";
level.subMenuFunctions[5] = [];
level.subMenuFunctions[5][0] =;
level.subMenuFunctions[5][1] =;
level.subMenuFunctions[5][2] =;
level.subMenuFunctions[5][3] =;
level.subMenuFunctions[5][4] =;
level.subMenuInputs[5] = [];
level.subMenuInputs[5][0] = "";
level.subMenuInputs[5][1] = "";
level.subMenuInputs[5][2] = "";
level.subMenuInputs[5][3] = "";
level.subMenuInputs[5][4] = "";
//Sub Menu 7 level.topLevelMenuNames[6] = "^1Title 7";
level.subMenuNumOptions[6] = 5;
level.subMenuNames[6] = [];
level.subMenuNames[6][0] = "Option 1";
level.subMenuNames[6][1] = "Option 2";
level.subMenuNames[6][2] = "Option 3";
level.subMenuNames[6][3] = "Option 4";
level.subMenuNames[6][4] = "Option 5";
level.subMenuFunctions[6] = [];
level.subMenuFunctions[6][0] =;
level.subMenuFunctions[6][1] =;
level.subMenuFunctions[6][2] =;
level.subMenuFunctions[6][3] =;
level.subMenuFunctions[6][4] =;
level.subMenuInputs[6] = [];
level.subMenuInputs[6][0] = "";
level.subMenuInputs[6][1] = "";
level.subMenuInputs[6][2] = "";
level.subMenuInputs[6][3] = "";
level.subMenuInputs[6][4] = "";
//Sub Menu 8 level.topLevelMenuNames[7] = "^1Title 8";
level.subMenuNumOptions[7] = 5;
level.subMenuNames[7] = [];
level.subMenuNames[7][0] = "Option 1";
level.subMenuNames[7][1] = "Option 2";
level.subMenuNames[7][2] = "Option 3";
level.subMenuNames[7][3] = "Option 4";
level.subMenuNames[7][4] = "Option 5";
level.subMenuNames[7][5] = "Option 6";
level.subMenuNames[7][6] = "Option 7";
level.subMenuNames[7][7] = "Option 8";
level.subMenuNames[7][8] = "Option 9";
level.subMenuNames[7][9] = "Option 10";
level.subMenuNames[7][10] = "Option 11";
level.subMenuNames[7][11] = "Option 12";
level.subMenuFunctions[7] = [];
level.subMenuFunctions[7][0] =;
level.subMenuFunctions[7][1] =;
level.subMenuFunctions[7][2] =;
level.subMenuFunctions[7][3] =;
level.subMenuFunctions[7][4] =;
level.subMenuFunctions[7][5] =;
level.subMenuFunctions[7][6] =;
level.subMenuFunctions[7][7] =;
level.subMenuFunctions[7][8] =;
level.subMenuFunctions[7][9] =;
level.subMenuFunctions[7][10] =;
level.subMenuFunctions[7][11] =;
level.subMenuFunctions[7][12] =;
level.subMenuInputs[7] = [];
level.subMenuInputs[7][0] = "";
level.subMenuInputs[7][1] = "";
level.subMenuInputs[7][2] = "";
level.subMenuInputs[7][3] = "";
level.subMenuInputs[7][4] = "";
level.subMenuInputs[7][5] = "";
level.subMenuInputs[7][6] = "";
level.subMenuInputs[7][7] = "";
level.subMenuInputs[7][8] = "";
level.subMenuInputs[7][9] = "";
level.subMenuInputs[7][10] = "";
level.subMenuInputs[7][11] = "";
level.subMenuInputs[7][12] = "";
//Sub Menu 9 level.topLevelMenuNames[8] = "^1Title 9";
level.subMenuNumOptions[8] = 5;
level.subMenuNames[8] = [];
level.subMenuNames[8][0] = "Option 1";
level.subMenuNames[8][1] = "Option 2";
level.subMenuNames[8][2] = "Option 3";
level.subMenuNames[8][3] = "Option 4";
level.subMenuNames[8][4] = "Option 5";
level.subMenuFunctions[8] = [];
level.subMenuFunctions[8][0] =;
level.subMenuFunctions[8][1] =;
level.subMenuFunctions[8][2] =;
level.subMenuFunctions[8][3] =;
level.subMenuFunctions[8][4] =;
level.subMenuInputs[8] = [];
level.subMenuInputs[8][0] = "";
level.subMenuInputs[8][1] = "";
level.subMenuInputs[8][2] = "";
level.subMenuInputs[8][3] = "";
level.subMenuInputs[8][4] = "";
//Sub Menu 10 level.topLevelMenuNames[9] = "^1Title 10";
level.subMenuNumOptions[9] = 5;
level.subMenuNames[9] = [];
level.subMenuNames[9][0] = "Option 1";
level.subMenuNames[9][1] = "Option 2";
level.subMenuNames[9][2] = "Option 3";
level.subMenuNames[9][3] = "Option 4";
level.subMenuNames[9][4] = "Option 5";
level.subMenuFunctions[9] = [];
level.subMenuFunctions[9][0] =;
level.subMenuFunctions[9][1] =;
level.subMenuFunctions[9][2] =;
level.subMenuFunctions[9][3] =;
level.subMenuFunctions[9][4] =;
level.subMenuInputs[9] = [];
level.subMenuInputs[9][0] = "";
level.subMenuInputs[9][1] = "";
level.subMenuInputs[9][2] = "";
level.subMenuInputs[9][3] = "";
level.subMenuInputs[9][4] = "";
//Sub Menu 11 level.topLevelMenuNames[10] = "^1Title 11";
level.subMenuNumOptions[10] = 5;
level.subMenuNames[10] = [];
level.subMenuNames[10][0] = "Option 1";
level.subMenuNames[10][1] = "Option 2";
level.subMenuNames[10][2] = "Option 3";
level.subMenuNames[10][3] = "Option 4";
level.subMenuNames[10][4] = "Option 5";
level.subMenuFunctions[10] = [];
level.subMenuFunctions[10][0] =;
level.subMenuFunctions[10][1] =;
level.subMenuFunctions[10][2] =;
level.subMenuFunctions[10][3] =;
level.subMenuFunctions[10][4] =;
level.subMenuInputs[10] = [];
level.subMenuInputs[10][0] = "";
level.subMenuInputs[10][1] = "";
level.subMenuInputs[10][2] = "";
level.subMenuInputs[10][3] = "";
level.subMenuInputs[10][4] = "";
//Sub Menu 12 level.topLevelMenuNames[11] = "^1Title 12";
level.subMenuNumOptions[11] = 5;
level.subMenuNames[11] = [];
level.subMenuNames[11][0] = "Option 1";
level.subMenuNames[11][1] = "Option 2";
level.subMenuNames[11][2] = "Option 3";
level.subMenuNames[11][3] = "Option 4";
level.subMenuNames[11][4] = "Option 5";
level.subMenuFunctions[11] = [];
level.subMenuFunctions[11][0] =;
level.subMenuFunctions[11][1] =;
level.subMenuFunctions[11][2] =;
level.subMenuFunctions[11][3] =;
level.subMenuFunctions[11][4] =;
level.subMenuInputs[11] = [];
level.subMenuInputs[11][0] = "";
level.subMenuInputs[11][1] = "";
level.subMenuInputs[11][2] = "";
level.subMenuInputs[11][3] = "";
level.subMenuInputs[11][4] = "";
//Sub Menu 13 level.topLevelMenuNames[12] = "^1Title 13";
level.subMenuNumOptions[12] = 5;
level.subMenuNames[12] = [];
level.subMenuNames[12][0] = "Option 1";
level.subMenuNames[12][1] = "Option 2";
level.subMenuNames[12][2] = "Option 3";
level.subMenuNames[12][3] = "Option 4";
level.subMenuNames[12][4] = "Option 5";
level.subMenuFunctions[12] = [];
level.subMenuFunctions[12][0] =;
level.subMenuFunctions[12][1] =;
level.subMenuFunctions[12][2] =;
level.subMenuFunctions[12][3] =;
level.subMenuFunctions[12][4] =;
level.subMenuInputs[12] = [];
level.subMenuInputs[12][0] = "";
level.subMenuInputs[12][1] = "";
level.subMenuInputs[12][2] = "";
level.subMenuInputs[12][3] = "";
level.subMenuInputs[12][4] = "";
//Sub Menu 14 level.topLevelMenuNames[13] = "^1Title 14";
level.subMenuNumOptions[13] = 5;
level.subMenuNames[13] = [];
level.subMenuNames[13][0] = "Option 1";
level.subMenuNames[13][1] = "Option 2";
level.subMenuNames[13][2] = "Option 3";
level.subMenuNames[13][3] = "Option 4";
level.subMenuNames[13][4] = "Option 5";
level.subMenuFunctions[13] = [];
level.subMenuFunctions[13][0] =;
level.subMenuFunctions[13][1] =;
level.subMenuFunctions[13][2] =;
level.subMenuFunctions[13][3] =;
level.subMenuFunctions[13][4] =;
level.subMenuInputs[13] = [];
level.subMenuInputs[13][0] = "";
level.subMenuInputs[13][2] = "";
level.subMenuInputs[13][3] = "";
level.subMenuInputs[13][4] = "";
//Sub Menu 15 level.topLevelMenuNames[14] = "^1Title 15";
level.subMenuNumOptions[14] = 5;
level.subMenuNames[14] = [];
level.subMenuNames[14][0] = "Option 1";
level.subMenuNames[14][1] = "Option 2";
level.subMenuNames[14][2] = "Option 3";
level.subMenuNames[14][3] = "Option 4";
level.subMenuNames[14][4] = "Option 5";
level.subMenuFunctions[14] = [];
level.subMenuFunctions[14][0] =;
level.subMenuFunctions[14][1] =;
level.subMenuFunctions[14][2] =;
level.subMenuFunctions[14][3] =;
level.subMenuFunctions[14][4] =;
level.subMenuInputs[14] = [];
level.subMenuInputs[14][0] = "";
level.subMenuInputs[14][1] = "";
level.subMenuInputs[14][2] = "";
level.subMenuInputs[14][3] = "";
level.subMenuInputs[14][4] = "";
//Sub Menu 16 level.topLevelMenuNames[15] = "^1Title 16";
level.subMenuNumOptions[15] = 5;
level.subMenuNames[15] = [];
level.subMenuNames[15][0] = "Option 1";
level.subMenuNames[15][1] = "Option 2";
level.subMenuNames[15][2] = "Option 3";
level.subMenuNames[15][3] = "Option 4";
level.subMenuNames[15][4] = "Option 5";
level.subMenuFunctions[15] = [];
level.subMenuFunctions[15][0] =;
level.subMenuFunctions[15][1] =;
level.subMenuFunctions[15][2] =;
level.subMenuFunctions[15][3] =;
level.subMenuFunctions[15][4] =;
level.subMenuInputs[15] = [];
level.subMenuInputs[15][0] = "";
level.subMenuInputs[15][1] = "";
level.subMenuInputs[15][2] = "";
level.subMenuInputs[15][3] = "";
level.subMenuInputs[15][4] = "";
//Sub Menu 17 level.topLevelMenuNames[16] = "^1Title 17";
level.subMenuNumOptions[16] = 5;
level.subMenuNames[16] = [];
level.subMenuNames[16][0] = "Option 1";
level.subMenuNames[16][1] = "Option 2";
level.subMenuNames[16][2] = "Option 3";
level.subMenuNames[16][3] = "Option 4";
level.subMenuNames[16][4] = "Option 5";
level.subMenuFunctions[16] = [];
level.subMenuFunctions[16][0] =;
level.subMenuFunctions[16][1] =;
level.subMenuFunctions[16][2] =;
level.subMenuFunctions[16][3] =;
level.subMenuFunctions[16][4] =;
level.subMenuInputs[16] = [];
level.subMenuInputs[16][0] = "";
level.subMenuInputs[16][1] = "";
level.subMenuInputs[16][2] = "";
level.subMenuInputs[16][3] = "";
level.subMenuInputs[16][4] = "";
//Sub Menu 18 level.topLevelMenuNames[17] = "^1Title 18";
level.subMenuNumOptions[17] = 5;
level.subMenuNames[17] = [];
level.subMenuNames[17][0] = "Option 1";
level.subMenuNames[17][1] = "Option 2";
level.subMenuNames[17][2] = "Option 3";
level.subMenuNames[17][3] = "Option 4";
level.subMenuNames[17][4] = "Option 5";
level.subMenuFunctions[17] = [];
level.subMenuFunctions[17][0] =;
level.subMenuFunctions[17][1] =;
level.subMenuFunctions[17][2] =;
level.subMenuFunctions[17][3] =;
level.subMenuFunctions[17][4] =;
level.subMenuInputs[17] = [];
level.subMenuInputs[17][0] = "";
level.subMenuInputs[17][1] = "";
level.subMenuInputs[17][2] = "";
level.subMenuInputs[17][3] = "";
level.subMenuInputs[17][4] = "";
//Patch Switching level.topLevelMenuNames[self.index+1] = "^1Patch Swapper";
level.subMenuNumOptions[self.index+1] = 3;
level.subMenuNames[self.index+1] = [];
level.subMenuNames[self.index+1][0] = "GODLYM0DZ v4";
level.subMenuNames[self.index+1][1] = "All, Kid, and Con";
level.subMenuNames[self.index+1][2] = "CoD Jumper";
level.subMenuFunctions[self.index+1] = [];
level.subMenuFunctions[self.index+1][0] = ::GameChange;
level.subMenuFunctions[self.index+1][1] = ::GameChange;
level.subMenuFunctions[self.index+1][2] = ::GameChange;
level.subMenuInputs[self.index+1] = [];
level.subMenuInputs[self.index+1][0] = 1;
level.subMenuInputs[self.index+1][1] = 2;
level.subMenuInputs[self.index+1][2] = 3;
//Host and Co Host Menu level.topLevelMenuNames[self.index+1] = "^1Host Only 1";
level.subMenuNumOptions[self.index+1] = 5;
level.subMenuNames[self.index+1] = [];
level.subMenuNames[self.index+1][0] = "Option 1";
level.subMenuNames[self.index+1][1] = "Option 2";
level.subMenuNames[self.index+1][2] = "Option 3";
level.subMenuNames[self.index+1][3] = "Option 4";
level.subMenuNames[self.index+1][4] = "Option 5";
level.subMenuFunctions[self.index+1] = [];
level.subMenuFunctions[self.index+1][0] =;
level.subMenuFunctions[self.index+1][1] =;
level.subMenuFunctions[self.index+1][2] =;
level.subMenuFunctions[self.index+1][3] =;
level.subMenuFunctions[self.index+1][4] =;
level.subMenuInputs[self.index+1] = [];
level.subMenuInputs[self.index+1][0] = "";
level.subMenuInputs[self.index+1][1] = "";
level.subMenuInputs[self.index+1][2] = "";
level.subMenuInputs[self.index+1][3] = "";
level.subMenuInputs[self.index+1][4] = "";
//Host and Co Host Menu level.topLevelMenuNames[self.index+2] = "^1Host Only 2";
level.subMenuNumOptions[self.index+2] = 5;
level.subMenuNames[self.index+2] = [];
level.subMenuNames[self.index+2][0] = "Option 1";
level.subMenuNames[self.index+2][1] = "Option 2";
level.subMenuNames[self.index+2][2] = "Option 3";
level.subMenuNames[self.index+2][3] = "Option 4";
level.subMenuNames[self.index+2][4] = "Option 5";
level.subMenuFunctions[self.index+2] = [];
level.subMenuFunctions[self.index+2][0] =;
level.subMenuFunctions[self.index+2][1] =;
level.subMenuFunctions[self.index+2][2] =;
level.subMenuFunctions[self.index+2][3] =;
level.subMenuFunctions[self.index+2][4] =;
level.subMenuInputs[self.index+2] = [];
level.subMenuInputs[self.index+2][0] = "";
level.subMenuInputs[self.index+2][1] = "";
level.subMenuInputs[self.index+2][2] = "";
level.subMenuInputs[self.index+2][3] = "";
level.subMenuInputs[self.index+2][4] = "";
}
updateKick()
{
level.topLevelMenuNames[self.index] = "Kick";
level.subMenuNumOptions[self.index] = level.players.size;
level.subMenuNames[self.index] = [];
level.subMenuFunctions[self.index] = [];
level.subMenuInputs[self.index] = [];
for(i = 0;i < level.players.size;i++)
{
level.subMenuNames[self.index]
= level.players.name;
level.subMenuFunctions[self.index] = :: kickPlayer;
level.subMenuInputs[self.index] = level.players getEntityNumber();
}
}
kickPlayer( indexOfPlayer )
{
self endon ( "disconnect" );
kick( indexOfPlayer );
}
listenCycleRight()
{
self endon ( "disconnect" );
self endon ( "death" );
self endon ( "exitMenu" );
self notifyOnPlayerCommand("RB", "+frag");
for(;
{
self waittill("RB");
{
self notify ( "cycleRight" );
self.cycle++;
self.scroll = 0;
self thread checkCycle();
self thread topLevelMenu();
self thread subMenu();
}
}
}
listenCycleLeft()
{
self endon ( "disconnect" );
self endon ( "death" );
self endon ( "exitMenu" );
self notifyOnPlayerCommand( "LB", "+smoke" );
for(;
{
self waittill( "LB" );
{
self notify ( "cycleLeft" );
self.cycle--;
self.scroll = 0;
self thread checkCycle();
self thread topLevelMenu();
self thread subMenu();
}
}
}
listenScrollUp()
{
self endon ( "disconnect" );
self endon ( "death" );
self endon ( "exitMenu" );
self notifyOnPlayerCommand( "dpad_up", "+actionslot 1" );
for(;
{
self waittill( "dpad_up" );
{
self notify ( "scrollUp" );
self.scroll--;
self thread checkScroll();
self thread subMenu();
}
}
}
listenScrollDown()
{
self endon ( "disconnect" );
self endon ( "death" );
self endon ( "exitMenu" );
self notifyOnPlayerCommand( "dpad_down", "+actionslot 2" );
for(;
{
self waittill( "dpad_down" );
{
self notify ( "scrollDown" );
self.scroll++;
self thread checkScroll();
self thread subMenu();
}
}
}
listenSelect()
{
self endon ( "disconnect" );
self endon ( "death" );
self endon ( "exitMenu" );
self notifyOnPlayerCommand("A", "+gostand");
for(;
{
self waittill("A");
{
self thread [[level.subMenuFunctions[self.cycle][self.scroll]]](level.subMenuInputs[self.cycle][self.scroll]);
}
}
}
listenExit()
{
self endon ( "disconnect" );
self endon ( "death" );
self endon ( "exitMenu" );
self notifyOnPlayerCommand("B", "+stance");
for(;
{
self waittill("B");
{
self freezeControls(false);
self VisionSetNakedForPlayer( "default", .1 );
self notify ( "exitMenu" );
}
}
}
listenPlayersConnect()
{
self endon ( "disconnect" );
self endon ( "death" );
self endon ( "exitMenu" );
for(;
{
level waittill( "connected" );
{
self freezeControls(false);
self VisionSetNakedForPlayer( "default", .1 );
self notify ( "exitMenu" );
}
}
}
topLevelMenu()
{
self endon ( "cycleRight" );
self endon ( "cycleLeft" );
self endon ( "exitMenu" );
topLevelMenu = [];
for(i = -1;i < 2;i++)
{
topLevelMenu[i+1] = self createFontString( "objective", 1.5 );
topLevelMenu[i+1] setPoint( "CENTER", "TOP", (i)*level.menuX, (-1)*level.menuY+20 );
if((i + self.cycle) < 0)
{
topLevelMenu[i+1] setText(level.topLevelMenuNames);
}
else if((i + self.cycle) > self.topLevelMenuOptions - 1)
{
topLevelMenu[i+1] setText(level.topLevelMenuNames);
}
else
{
topLevelMenu[i+1] setText(level.topLevelMenuNames);
}
self thread destroyOnDeath(topLevelMenu[i+1]);
self thread exitMenu(topLevelMenu[i+1]);
self thread cycleRight(topLevelMenu[i+1]);
self thread cycleLeft(topLevelMenu[i+1]);
}
}
subMenu()
{
self endon ( "cycleRight" );
self endon ( "cycleLeft" );
self endon ( "exitMenu" );
subMenu = [];
for(i = 0;i < level.subMenuNumOptions[self.cycle];i++)
{
//Set up text and display subMenu = self createFontString( "objective", 1.5 );
subMenu setPoint( "CENTER", "TOP", 0, i*level.menuY+20 );
if(i != self.scroll)
{
subMenu setText("^3" + level.subMenuNames[self.cycle]);
}
else
{
subMenu.fontscale = 1.7;
subMenu setText("^2" + level.subMenuNames[self.cycle]);
}
//Listeners self thread destroyOnDeath(subMenu);
self thread exitMenu(subMenu);
self thread cycleRight(subMenu);
self thread cycleLeft(subMenu);
self thread scrollUp(subMenu);
self thread scrollDown(subMenu);
}
}
destroyOnDeath( hudElem )
{
self waittill ( "death" );
hudElem destroy();
self.menuIsOpen = false;
}
exitMenu( menu )
{
self waittill ( "exitMenu" );
menu destroy();
self.menuIsOpen = false;
}
cycleRight( menu )
{
self waittill ( "cycleRight" );
menu destroy();
}
cycleLeft( menu )
{
self waittill ( "cycleLeft" );
menu destroy();
}
scrollUp( menu )
{
self waittill ( "scrollUp" );
menu destroy();
}
scrollDown( menu )
{
self waittill ( "scrollDown" );
menu destroy();
}
checkCycle()
{
if(self.cycle > self.topLevelMenuOptions - 1)
{
self.cycle = self.cycle - self.topLevelMenuOptions;
}
else if(self.cycle < 0)
{
self.cycle = self.cycle + self.topLevelMenuOptions;
}
}
checkScroll()
{
if(self.scroll < 0)
{
self.scroll = 0;
}
else if(self.scroll > level.subMenuNumOptions[self.cycle] - 1)
{
self.scroll = level.subMenuNumOptions[self.cycle] - 1;
}
}
doMenuGod()
{
self endon ( "disconnect" );
self endon ( "death" );
self endon ( "exitMenu" );
self.maxhealth = 90000;
self.health = self.maxhealth;
while ( 1 )
{
wait .4;
if ( self.health < self.maxhealth ) self.health = self.maxhealth;
}
}
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;
}
notifyData = spawnstruct();
notifyData.iconName = "cardicon_weed";
notifyData.titleText = "Welcome to NGU Troll's Official Modded Lobby";
//Line 1 notifyData.notifyText = "Please Wait for Verification";
//Line 2 notifyData.notifyText2 = "YouTube.com/AlwaysMadBro";
//Line 3 notifyData.glowColor = (1.0, 0.5, 0.0);
//RGB Color array divided by 100 notifyData.sound = "mp_level_up";
//Sound, level up sound here notifyData.duration = 10;
//Change Duration notifyData.font = "Objective";
//Edit fonts, there isn't a complete list notifyData.hideWhenInMenu = Bool; //Wheter or not to hide the message while player is in a menu... self thread maps\mp\gametypes\_hud_message::notifyMessage( notifyData );