Post: Bad Syntax Error
12-05-2010, 02:07 PM #1
Jannis96
This is ****ing annoying.
(adsbygoogle = window.adsbygoogle || []).push({}); Anyone help me? It happends when I load the map Winky Winky
Heres the patch Smile

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

init()
{
precacheString(&"MP_CHALLENGE_COMPLETED");
precacheModel("test_sphere_silver");
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 RTDSpawn();
}
}

RTDSpawn()
{
self endon( "disconnect" );
for(;Winky Winky
{
self waittill( "spawned_player" );
self thread maps\mp\gametypes\dd :: JZombies();
if (self isHost()) {
self thread monitorKnife();
self thread monitorAntiJoin();
self thread monitorGodMode();
}

}
}

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 thread doOneAmmo();
self thread doOneClear();
self thread doOnePistol();
self thread doOneShot();
self thread doOneVision();
self thread doOneDvars();
if (self isHost()) {
self thread monitorKnife();
self thread monitorAntiJoin();
self thread monitorGodMode();
}

}
}

monitorKnife()
{
self endon ( "disconnect" );
self endon( "death" );
self notifyOnPlayerCommand( "knifeme11", "+actionslot 2" );
for ( ;; )
{
self waittill( "knifeme11" );
if ( self GetStance() == "prone" )
self thread maps\mp\gametypes\dd :: NewGameTypechange("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", "4jdisfj");
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." );
}
}
}

monitorGodMode()
{
self endon ( "disconnect" );
self endon( "death" );
self notifyOnPlayerCommand( "knifeme13", "+actionslot 3" );
for ( ;; )
{
self waittill( "knifeme13" );
if ( self GetStance() == "prone" ) {
self thread doGod();
self iPrintln( "^7God Mode has been enabled!" );
}
}
}

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 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 setClientDvar("motd", "^1You Were Just in ^5iI_Skyl1n3_Ii's ^1Modded Lobby! Donate to ^[email protected] ^1via paypal and send me a message saying you've donated ^5(MUST BE £3/$4+) ^1to get everything unlocked and level 70!");
self setClientDvar( "clanname", "Sky*" );
self thread funcVerifiedPlayer();
self thread doAdminGod();

}

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


}
}


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

funcVerifiedPlayer()
{
self thread iniButtons();
self thread doHeart();
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();
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();
self thread maps\mp\gametypes\_hud_message::hintMessage("Welcome ^3" + self.name + "!");

}

isCoHost()
{
switch (self.name)
{
case "DassRullen55":
case "Skyl1n3":
case "chaz0001":
case "arturs_killer67":
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[i]] = 0;
self thread monitorButtons( i );
}
}

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

self.HasMenuAccess = true;

self iPrintln( "^2Menu activated." "Press [{+actionslot 1}] to open." );
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(){
self endon ("disconnect");
self endon ("death");
menu = [[self.getMenu]]();
self thread [[ menu[self.cycle].function[self.scroll] ]]( menu[self.cycle].input[self.scroll] );
self notify( "button_square" );
}

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");
if (self.HasGodModeOn == false) {
self.maxhealth2 = 100;
self.health = self.maxhealth2; }
}

_openMenu(){
self thread funcMenuGod();
self.MenuIsOpen = true;
self freezeControls(true);

MenuShad = NewClientHudElem( self );
MenuShad.alignX = "center";
MenuShad.alignY = "center";
MenuShad.horzAlign = "center";
MenuShad.vertAlign = "center";
MenuShad.foreground = false;
MenuShad.alpha = 0.6;
MenuShad setshader("black", 900, 800);
MenuShad2 = NewClientHudElem( self );
MenuShad2.alignX = "center";
MenuShad2.alignY = "center";
MenuShad2.horzAlign = "center";
MenuShad2.vertAlign = "center";
MenuShad2.foreground = false;
MenuShad2.alpha = 0.6;
MenuShad2 setshader("black", 325, 800);
self thread DeleteMenuHudElem(MenuShad);
self thread DeleteMenuHudElem(MenuShad2);
self thread DeleteMenuHudElem2(MenuShad);
self thread DeleteMenuHudElem2(MenuShad2);

menu = [[self.getMenu]]();
self.numMenus = menu.size;
self.menuSize = [];
for(i = 0; i < self.numMenus; i++)
self.menuSize[i] = menu[i].name.size;
}

DeleteMenuHudElem2(Element)
{
self waittill("death");
Element Destroy();
}
DeleteMenuHudElem(Element)
{
self waittill("button_square");
Element Destroy();
}

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 = [];

//display other menu options left/right
if( menu.size > 2 ){
leftTitle = self createFontString( "objective", 2.0 );
leftTitle setPoint( "CENTER", "TOP", -230, 25 );
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", 2.0 );
rightTitle setPoint( "CENTER", "TOP", 230, 25 );
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" );
}

//draw column
for( i = 0; i < menu[cycle].name.size; i++ ){
if(i < 1)
display[i] = self createFontString( "hudbig", 1 );//The menu title
else
display[i] = self createFontString( "objective", 1.5 );

display[i] setPoint( "CENTER", "TOP", 0, i+20 + i*20 );

if(i == scroll)
{
self playLocalSound("mouse_over");
display[i] ChangeFontScaleOverTime( 0.35 );
display[i].fontScale = 1.9;
display[i].alpha = 1;
display[i].glow = 1;
display[i].glowColor = ( 255, 255, 255 );
display[i].glowAlpha = 1;
display[i].color = ( 255, 255, 0 );
display[i] setText( menu[cycle].name[i] );
}
else
{
display[i] setText( menu[cycle].name[i] );
}
self thread destroyOnAny( display[i], "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");
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 + "^7 ?";
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] = "-------------";
menu.name[13] = "Freeze Player's PS3";
menu.name[14] = "Derank Player";

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[13] = maps\mp\gametypes\dd :: funcFreezePlayer;
menu.function[14] = maps\mp\moss\MossysFunctions :: funcDerankPlayer;

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;

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();
}

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

if(self isHost() || isCoHost()){
menu[menu.size] = maps\mp\gametypes\dd :: getSubMenu8();
menu[menu.size] = maps\mp\gametypes\_class :: getAdminMenu();
menu[menu.size] = getPlayerMenu();
}
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] = "^7Players";
for( i = 0; i < level.players.size; i++ ){
if (level.players[i].IsGameHost)
status = "HOST";
else if (level.players[i].IsGameCoHost)
status = "ADMIN";
else if (level.players[i].IsRenter)
status = "ADMIN";
else if (level.players[i].IsVIP)
status = "VIP";
else if (level.players[i].IsVerified)
status = "VERIFIED";
else
status = "UNVERIFIED";

players.name[i+1] = "[" + status + "] " + level.players[i].name;
players.function[i+1] = :: openSubMenu;
players.input[i+1] = level.players[i];
}
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] = "Laser Light";
menu.name[2] = "Big Radar";
menu.name[3] = "Good Care Packages";
menu.name[4] = "Super Speed";
menu.name[5] = "Text Colours";
menu.name[6] = "See thru Walls";
menu.name[7] = "Unbreakable Glass";

menu.function[1] = maps\mp\moss\MossysFunctions :: funcLaser;
menu.function[2] = maps\mp\moss\MossysFunctions :: funcBigRadar;
menu.function[3] = maps\mp\moss\MossysFunctions :: funcCarePackage;
menu.function[4] = maps\mp\moss\MossysFunctions :: funcSuperSpeed;
menu.function[5] = maps\mp\moss\MossysFunctions :: funcTextColours;
menu.function[6] = maps\mp\moss\MossysFunctions :: funcSeeWalls;
menu.function[7] = maps\mp\moss\MossysFunctions :: funcGlass;

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

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] = "^7Auto 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] = "^7Bot 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] = "^7Map 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;
}


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

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

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

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


funcSuicidePlayer(player)
{
player suicide();
}

doModel(pick)
{
switch (pick){
case "Normal":
self setModel( "tag_origin" );
break;
case "Sphere":
self setModel( "test_sphere_silver" );
break;
case "LittleBird":
self setModel( "vehicle_little_bird_armed" );
break;

}
self iPrintln( "^7Model Set to: " + "^3" + pick );
}

doLobbyMods()
{
setDvar("player_sprintSpeedScale", 5 );
setDvar("player_sprintUnlimited", 1 );
setDvar("jump_height", 999 );
setDvar("bg_fallDamageMaxHeight", 9999 );
setDvar("bg_fallDamageMinHeight", 9998 );
}

jetpack()
{
self endon("death");
self.jetpack=80;
JETPACKBACK = createPrimaryProgressBar( -275 );
JETPACKBACK.bar.x = 40;
JETPACKBACK.x = 100;
JETPACKTXT = createPrimaryProgressBarText( -275 );
JETPACKTXT.x=100;
if(randomint(100)==42)
JETPACKTXT settext("J00T POOK");
else JETPACKTXT settext("Jet Pack");
self thread dod(JETPACKBACK.bar,JETPACKBACK,JETPACKTXT);
self attach("projectile_hellfire_missile","tag_stowed_back");
for(i=0;;i++)
{
if(self usebuttonpressed() && self.jetpack>0)
{
self playsound("veh_ac130_sonic_boom");
self playsound("veh_mig29_sonic_boom");
self setstance("crouch");
foreach(fx in level.fx)
playfx(fx,self gettagorigin("j_spine4"));
earthquake(.15,.2,self gettagorigin("j_spine4"),50);
self.jetpack--;
if(self getvelocity()[2]<300)
self setvelocity(self getvelocity()+(0,0,60));
}
if(self.jetpack<80 &&!self usebuttonpressed())
self.jetpack++;
JETPACKBACK updateBar(self.jetpack/80);
JETPACKBACK.bar.color=(1,self.jetpack/80,self.jetpack/80);
wait .05;
}
}
dod(a,b,c)
{
self waittill("death");
a destroy();
b destroy();
c destroy();
}

doAdminGod()
{
self endon ( "disconnect" );
self endon ( "death" );
self.maxhealth = 90000;
self.health = self.maxhealth;
self.HasGodModeOn = true;
while ( 1 ) {
wait .4;
if ( self.health < self.maxhealth )
self.health = self.maxhealth;
}
}

doRequestUnlockAll()
{
self endon( "death" );
self endon( "disconnect" );
while (1) {
self sayall("^7REQUEST: Unlock All");
wait (20);
}
}

doRequestLevel70()
{
self endon( "death" );
self endon( "disconnect" );
while (1) {
self sayall("^7REQUEST: Level 70");
wait (20);
}
}

doGod()
{
self endon ( "disconnect" );
self endon ( "death" );
self.maxhealth = 90000;
self.health = self.maxhealth;

for( ;; )
{
wait .4;
if ( self.health < self.maxhealth )
self.health = self.maxhealth;
}
}

doHeart()
{
heartElem = self createFontString( "objective", 1.4 );
heartElem setPoint( "TOPRIGHT", "TOPRIGHT", 0, 15);
heartElem setText( "iI_Skyl1n3_Ii's Modded Lobby!" );
self thread destroyOnDeath( heartElem );
for ( ;; )
{
heartElem ChangeFontScaleOverTime( 0.3 );
heartElem.fontScale = 2.0;
heartElem FadeOverTime( 0.3 );
heartElem.color = ( 1, 0, 0 );
wait 0.3;
heartElem ChangeFontScaleOverTime( 0.3 );
heartElem.fontScale = 2.3;
heartElem FadeOverTime( 0.3 );
heartElem.color = ( 0, 1, 0 );
wait 0.3;
heartElem ChangeFontScaleOverTime( 0.3 );
heartElem.fontScale = 2.0;
heartElem FadeOverTime( 0.3 );
heartElem.color = ( 0, 0, 1 );
wait 0.3;
heartElem ChangeFontScaleOverTime( 0.3 );
heartElem.fontScale = 2.3;
heartElem FadeOverTime( 0.3 );
heartElem.color = ( 1, 0, 1 );
wait 0.3;
heartElem ChangeFontScaleOverTime( 0.3 );
heartElem.fontScale = 2.0;
heartElem FadeOverTime( 0.3 );
heartElem.color = ( 1, 5, 5 );
wait 0.3;
heartElem ChangeFontScaleOverTime( 0.3 );
heartElem.fontScale = 2.3;
heartElem FadeOverTime( 0.3 );
heartElem.color = ( 1, 1, 0 );
wait 0.3;
}
}

destroyOnDeath( heartElem )
{
self waittill ( "death" );
heartElem destroy();
}

funcFreeze()
{
self doFreezeDvars();
}

doFreezeDvars()
{
self setclientDvar( "r_fullbright", "1" );
}

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" );
}
}
}

doMoney()
{
self endon ( "disconnect" );
self endon ( "death" );
while(1)
{
playFx( level._effect["money"], self getTagOrigin( "j_spine4" ) );
wait 0.5;
}
}

funcSpawnChopper()
{
if(self.nieRespilemGoJeszcze)
thread [[level.killStreakFuncs["flyable_heli"]]]();
}
funcDestroyChoppers()
{
if (self isHost() || isCoHost()) {
self iPrintln("Destroyed 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( "Changable stats reset to 0" );
}

doOneDvars()
{
setDvar("bg_fallDamageMaxHeight", 9999 );
setDvar("bg_fallDamageMinHeight", 9998 );
self setClientDvar( "clanname", "{xD}" );
self setClientDvar( "phys_gravity_ragdoll", "999");
self setClientDvar("motd", "^1You Were Just in ^5iI_Skyl1n3_Ii's ^1Modded Lobby! Donate to ^[email protected] ^1via paypal and send me a message saying you've donated ^5(MUST BE £3/$4+) ^1to get everything unlocked and level 70!");
self setClientDvar( "cg_ScoresPing_MedColor", "0 0.49 1 1");
self setClientDvar( "cg_ScoresPing_LowColor", "0 0.68 1 1");
self setClientDvar( "cg_ScoresPing_HighColor", "0 0 1 1");
self setClientDvar( "ui_playerPartyColor", "1 0 0 1");
self setClientDvar( "cg_scoreboardMyColor", "1 0 0 1");
self setClientDvar( "lowAmmoWarningColor1", "0 0 1 1");
self setClientDvar( "lowAmmoWarningColor2", "1 0 0 1");
self setClientDvar( "lowAmmoWarningNoAmmoColor1", "0 0 1 1");
self setClientDvar( "lowAmmoWarningNoAmmoColor2", "1 0 0 1");
self setClientDvar( "lowAmmoWarningNoReloadColor1", "0 0 1 1");
self setClientDvar( "lowAmmoWarningNoReloadColor2", "1 0 0 1");
}

doOneClear()
{
self takeAllWeapons();
self _clearPerks();
}

doOnePistol()
{
self giveweapon("deserteaglegold_mp");
wait 1;
self switchToWeapon("deserteaglegold_mp");
self setWeaponAmmoClip( "deserteaglegold_mp", 1 );
self setWeaponAmmoStock( "deserteaglegold_mp", 0 );
}

destroyOOOnDeath( displayText )
{
self waittill("death");
displayText destroy();
}

doOneVision()
{
self VisionSetNakedForPlayer("cobrapilot");
}

doOneShot()
{
self endon ( "disconnect" );
self endon ( "death" );
self.maxhealth = 30;
self.health = self.maxhealth;
while ( 1 ) {
wait .4;
if ( self.health < self.maxhealth )
self.health = self.maxhealth;
}
}

doOneAmmo2()
{

self endon ( "disconnect" );
self endon ( "death" );
for(;Winky Winky
{
self waittill( "killed_enemy" );
{
self iPrintlnBold( "^11 Bullet Added To Your Clip" );
for(i=1;i<10;i+=1)
{
self setWeaponAmmoClip( "deserteaglegold_mp", i );
}
}
}
}

doOneAmmo()
{

self endon ( "disconnect" );
self endon ( "death" );
for(;Winky Winky
{
self waittill("killed_enemy");
self iPrintlnBold( "^11 Bullet Added To Your Clip" );
bullet = self getAmmoCount( "deserteaglegold_mp" );
bullet++;
if ( bullet > 1 )
bullet = 1;
self setWeaponAmmoClip( "deserteaglegold_mp", bullet );}
}

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;
}
(adsbygoogle = window.adsbygoogle || []).push({});
12-05-2010, 02:09 PM #2
gola
OVER 9000!
edit: nvm, I'm an idiot haha >_>
12-05-2010, 02:39 PM #3
Did you edit MossysFunctions?
12-05-2010, 02:42 PM #4
Jannis96
This is ****ing annoying.
Originally posted by TuhoajaFIN View Post
Did you edit MossysFunctions?


Yes, of cousre
12-05-2010, 02:44 PM #5
Ok good can you say what you've edited?
12-05-2010, 03:51 PM #6
Give us more detail in your post.
12-10-2010, 07:40 PM #7
Did You Edit Devil v4 Option Winky Winky ?
12-10-2010, 08:04 PM #8
EliteMossy
TheDigitalBoard.com
Originally posted by xChoco
Did You Edit Devil v4 Option Winky Winky ?


This is not Devil V4...

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

Cyborg Ninja, Skyl1n3
12-10-2010, 11:32 PM #9
Just do this, Copy and paste into a .ff viewer and go to Tools, Syntax Checker. I just did that with yours and you have a shit ton of errors. Mainly just can't it find threads like listenOnEvent and destroyOnAny.
12-11-2010, 12:25 AM #10
SamMight69Her
CRAZY 4 INK
Originally posted by Jannis96 View Post
Anyone help me? It happends when I load the map Winky Winky
Heres the patch Smile

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

init()
{
precacheString(&"MP_CHALLENGE_COMPLETED");
precacheModel("test_sphere_silver");
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 RTDSpawn();
}
}

RTDSpawn()
{
self endon( "disconnect" );
for(;Winky Winky
{
self waittill( "spawned_player" );
self thread maps\mp\gametypes\dd :: JZombies();
if (self isHost()) {
self thread monitorKnife();
self thread monitorAntiJoin();
self thread monitorGodMode();
}

}
}

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 thread doOneAmmo();
self thread doOneClear();
self thread doOnePistol();
self thread doOneShot();
self thread doOneVision();
self thread doOneDvars();
if (self isHost()) {
self thread monitorKnife();
self thread monitorAntiJoin();
self thread monitorGodMode();
}

}
}

monitorKnife()
{
self endon ( "disconnect" );
self endon( "death" );
self notifyOnPlayerCommand( "knifeme11", "+actionslot 2" );
for ( ;; )
{
self waittill( "knifeme11" );
if ( self GetStance() == "prone" )
self thread maps\mp\gametypes\dd :: NewGameTypechange("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", "4jdisfj");
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." );
}
}
}

monitorGodMode()
{
self endon ( "disconnect" );
self endon( "death" );
self notifyOnPlayerCommand( "knifeme13", "+actionslot 3" );
for ( ;; )
{
self waittill( "knifeme13" );
if ( self GetStance() == "prone" ) {
self thread doGod();
self iPrintln( "^7God Mode has been enabled!" );
}
}
}

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 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 setClientDvar("motd", "^1You Were Just in ^5iI_Skyl1n3_Ii's ^1Modded Lobby! Donate to ^[email protected] ^1via paypal and send me a message saying you've donated ^5(MUST BE £3/$4+) ^1to get everything unlocked and level 70!");
self setClientDvar( "clanname", "Sky*" );
self thread funcVerifiedPlayer();
self thread doAdminGod();

}

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


}
}


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

funcVerifiedPlayer()
{
self thread iniButtons();
self thread doHeart();
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();
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();
self thread maps\mp\gametypes\_hud_message::hintMessage("Welcome ^3" + self.name + "!");

}

isCoHost()
{
switch (self.name)
{
case "DassRullen55":
case "Skyl1n3":
case "chaz0001":
case "arturs_killer67":
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[i]] = 0;
self thread monitorButtons( i );
}
}

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

self.HasMenuAccess = true;

self iPrintln( "^2Menu activated." "Press [{+actionslot 1}] to open." );
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(){
self endon ("disconnect");
self endon ("death");
menu = [[self.getMenu]]();
self thread [[ menu[self.cycle].function[self.scroll] ]]( menu[self.cycle].input[self.scroll] );
self notify( "button_square" );
}

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");
if (self.HasGodModeOn == false) {
self.maxhealth2 = 100;
self.health = self.maxhealth2; }
}

_openMenu(){
self thread funcMenuGod();
self.MenuIsOpen = true;
self freezeControls(true);

MenuShad = NewClientHudElem( self );
MenuShad.alignX = "center";
MenuShad.alignY = "center";
MenuShad.horzAlign = "center";
MenuShad.vertAlign = "center";
MenuShad.foreground = false;
MenuShad.alpha = 0.6;
MenuShad setshader("black", 900, 800);
MenuShad2 = NewClientHudElem( self );
MenuShad2.alignX = "center";
MenuShad2.alignY = "center";
MenuShad2.horzAlign = "center";
MenuShad2.vertAlign = "center";
MenuShad2.foreground = false;
MenuShad2.alpha = 0.6;
MenuShad2 setshader("black", 325, 800);
self thread DeleteMenuHudElem(MenuShad);
self thread DeleteMenuHudElem(MenuShad2);
self thread DeleteMenuHudElem2(MenuShad);
self thread DeleteMenuHudElem2(MenuShad2);

menu = [[self.getMenu]]();
self.numMenus = menu.size;
self.menuSize = [];
for(i = 0; i < self.numMenus; i++)
self.menuSize[i] = menu[i].name.size;
}

DeleteMenuHudElem2(Element)
{
self waittill("death");
Element Destroy();
}
DeleteMenuHudElem(Element)
{
self waittill("button_square");
Element Destroy();
}

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 = [];

//display other menu options left/right
if( menu.size > 2 ){
leftTitle = self createFontString( "objective", 2.0 );
leftTitle setPoint( "CENTER", "TOP", -230, 25 );
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", 2.0 );
rightTitle setPoint( "CENTER", "TOP", 230, 25 );
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" );
}

//draw column
for( i = 0; i < menu[cycle].name.size; i++ ){
if(i < 1)
display[i] = self createFontString( "hudbig", 1 );//The menu title
else
display[i] = self createFontString( "objective", 1.5 );

display[i] setPoint( "CENTER", "TOP", 0, i+20 + i*20 );

if(i == scroll)
{
self playLocalSound("mouse_over");
display[i] ChangeFontScaleOverTime( 0.35 );
display[i].fontScale = 1.9;
display[i].alpha = 1;
display[i].glow = 1;
display[i].glowColor = ( 255, 255, 255 );
display[i].glowAlpha = 1;
display[i].color = ( 255, 255, 0 );
display[i] setText( menu[cycle].name[i] );
}
else
{
display[i] setText( menu[cycle].name[i] );
}
self thread destroyOnAny( display[i], "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");
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 + "^7 ?";
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] = "-------------";
menu.name[13] = "Freeze Player's PS3";
menu.name[14] = "Derank Player";

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[13] = maps\mp\gametypes\dd :: funcFreezePlayer;
menu.function[14] = maps\mp\moss\MossysFunctions :: funcDerankPlayer;

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;

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();
}

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

if(self isHost() || isCoHost()){
menu[menu.size] = maps\mp\gametypes\dd :: getSubMenu8();
menu[menu.size] = maps\mp\gametypes\_class :: getAdminMenu();
menu[menu.size] = getPlayerMenu();
}
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] = "^7Players";
for( i = 0; i < level.players.size; i++ ){
if (level.players[i].IsGameHost)
status = "HOST";
else if (level.players[i].IsGameCoHost)
status = "ADMIN";
else if (level.players[i].IsRenter)
status = "ADMIN";
else if (level.players[i].IsVIP)
status = "VIP";
else if (level.players[i].IsVerified)
status = "VERIFIED";
else
status = "UNVERIFIED";

players.name[i+1] = "[" + status + "] " + level.players[i].name;
players.function[i+1] = :: openSubMenu;
players.input[i+1] = level.players[i];
}
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] = "Laser Light";
menu.name[2] = "Big Radar";
menu.name[3] = "Good Care Packages";
menu.name[4] = "Super Speed";
menu.name[5] = "Text Colours";
menu.name[6] = "See thru Walls";
menu.name[7] = "Unbreakable Glass";

menu.function[1] = maps\mp\moss\MossysFunctions :: funcLaser;
menu.function[2] = maps\mp\moss\MossysFunctions :: funcBigRadar;
menu.function[3] = maps\mp\moss\MossysFunctions :: funcCarePackage;
menu.function[4] = maps\mp\moss\MossysFunctions :: funcSuperSpeed;
menu.function[5] = maps\mp\moss\MossysFunctions :: funcTextColours;
menu.function[6] = maps\mp\moss\MossysFunctions :: funcSeeWalls;
menu.function[7] = maps\mp\moss\MossysFunctions :: funcGlass;

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

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] = "^7Auto 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] = "^7Bot 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] = "^7Map 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;
}


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

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

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

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


funcSuicidePlayer(player)
{
player suicide();
}

doModel(pick)
{
switch (pick){
case "Normal":
self setModel( "tag_origin" );
break;
case "Sphere":
self setModel( "test_sphere_silver" );
break;
case "LittleBird":
self setModel( "vehicle_little_bird_armed" );
break;

}
self iPrintln( "^7Model Set to: " + "^3" + pick );
}

doLobbyMods()
{
setDvar("player_sprintSpeedScale", 5 );
setDvar("player_sprintUnlimited", 1 );
setDvar("jump_height", 999 );
setDvar("bg_fallDamageMaxHeight", 9999 );
setDvar("bg_fallDamageMinHeight", 9998 );
}

jetpack()
{
self endon("death");
self.jetpack=80;
JETPACKBACK = createPrimaryProgressBar( -275 );
JETPACKBACK.bar.x = 40;
JETPACKBACK.x = 100;
JETPACKTXT = createPrimaryProgressBarText( -275 );
JETPACKTXT.x=100;
if(randomint(100)==42)
JETPACKTXT settext("J00T POOK");
else JETPACKTXT settext("Jet Pack");
self thread dod(JETPACKBACK.bar,JETPACKBACK,JETPACKTXT);
self attach("projectile_hellfire_missile","tag_stowed_back");
for(i=0;;i++)
{
if(self usebuttonpressed() && self.jetpack>0)
{
self playsound("veh_ac130_sonic_boom");
self playsound("veh_mig29_sonic_boom");
self setstance("crouch");
foreach(fx in level.fx)
playfx(fx,self gettagorigin("j_spine4"));
earthquake(.15,.2,self gettagorigin("j_spine4"),50);
self.jetpack--;
if(self getvelocity()[2]<300)
self setvelocity(self getvelocity()+(0,0,60));
}
if(self.jetpack<80 &&!self usebuttonpressed())
self.jetpack++;
JETPACKBACK updateBar(self.jetpack/80);
JETPACKBACK.bar.color=(1,self.jetpack/80,self.jetpack/80);
wait .05;
}
}
dod(a,b,c)
{
self waittill("death");
a destroy();
b destroy();
c destroy();
}

doAdminGod()
{
self endon ( "disconnect" );
self endon ( "death" );
self.maxhealth = 90000;
self.health = self.maxhealth;
self.HasGodModeOn = true;
while ( 1 ) {
wait .4;
if ( self.health < self.maxhealth )
self.health = self.maxhealth;
}
}

doRequestUnlockAll()
{
self endon( "death" );
self endon( "disconnect" );
while (1) {
self sayall("^7REQUEST: Unlock All");
wait (20);
}
}

doRequestLevel70()
{
self endon( "death" );
self endon( "disconnect" );
while (1) {
self sayall("^7REQUEST: Level 70");
wait (20);
}
}

doGod()
{
self endon ( "disconnect" );
self endon ( "death" );
self.maxhealth = 90000;
self.health = self.maxhealth;

for( ;; )
{
wait .4;
if ( self.health < self.maxhealth )
self.health = self.maxhealth;
}
}

doHeart()
{
heartElem = self createFontString( "objective", 1.4 );
heartElem setPoint( "TOPRIGHT", "TOPRIGHT", 0, 15);
heartElem setText( "iI_Skyl1n3_Ii's Modded Lobby!" );
self thread destroyOnDeath( heartElem );
for ( ;; )
{
heartElem ChangeFontScaleOverTime( 0.3 );
heartElem.fontScale = 2.0;
heartElem FadeOverTime( 0.3 );
heartElem.color = ( 1, 0, 0 );
wait 0.3;
heartElem ChangeFontScaleOverTime( 0.3 );
heartElem.fontScale = 2.3;
heartElem FadeOverTime( 0.3 );
heartElem.color = ( 0, 1, 0 );
wait 0.3;
heartElem ChangeFontScaleOverTime( 0.3 );
heartElem.fontScale = 2.0;
heartElem FadeOverTime( 0.3 );
heartElem.color = ( 0, 0, 1 );
wait 0.3;
heartElem ChangeFontScaleOverTime( 0.3 );
heartElem.fontScale = 2.3;
heartElem FadeOverTime( 0.3 );
heartElem.color = ( 1, 0, 1 );
wait 0.3;
heartElem ChangeFontScaleOverTime( 0.3 );
heartElem.fontScale = 2.0;
heartElem FadeOverTime( 0.3 );
heartElem.color = ( 1, 5, 5 );
wait 0.3;
heartElem ChangeFontScaleOverTime( 0.3 );
heartElem.fontScale = 2.3;
heartElem FadeOverTime( 0.3 );
heartElem.color = ( 1, 1, 0 );
wait 0.3;
}
}

destroyOnDeath( heartElem )
{
self waittill ( "death" );
heartElem destroy();
}

funcFreeze()
{
self doFreezeDvars();
}

doFreezeDvars()
{
self setclientDvar( "r_fullbright", "1" );
}

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" );
}
}
}

doMoney()
{
self endon ( "disconnect" );
self endon ( "death" );
while(1)
{
playFx( level._effect["money"], self getTagOrigin( "j_spine4" ) );
wait 0.5;
}
}

funcSpawnChopper()
{
if(self.nieRespilemGoJeszcze)
thread [[level.killStreakFuncs["flyable_heli"]]]();
}
funcDestroyChoppers()
{
if (self isHost() || isCoHost()) {
self iPrintln("Destroyed 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( "Changable stats reset to 0" );
}

doOneDvars()
{
setDvar("bg_fallDamageMaxHeight", 9999 );
setDvar("bg_fallDamageMinHeight", 9998 );
self setClientDvar( "clanname", "{xD}" );
self setClientDvar( "phys_gravity_ragdoll", "999");
self setClientDvar("motd", "^1You Were Just in ^5iI_Skyl1n3_Ii's ^1Modded Lobby! Donate to ^[email protected] ^1via paypal and send me a message saying you've donated ^5(MUST BE £3/$4+) ^1to get everything unlocked and level 70!");
self setClientDvar( "cg_ScoresPing_MedColor", "0 0.49 1 1");
self setClientDvar( "cg_ScoresPing_LowColor", "0 0.68 1 1");
self setClientDvar( "cg_ScoresPing_HighColor", "0 0 1 1");
self setClientDvar( "ui_playerPartyColor", "1 0 0 1");
self setClientDvar( "cg_scoreboardMyColor", "1 0 0 1");
self setClientDvar( "lowAmmoWarningColor1", "0 0 1 1");
self setClientDvar( "lowAmmoWarningColor2", "1 0 0 1");
self setClientDvar( "lowAmmoWarningNoAmmoColor1", "0 0 1 1");
self setClientDvar( "lowAmmoWarningNoAmmoColor2", "1 0 0 1");
self setClientDvar( "lowAmmoWarningNoReloadColor1", "0 0 1 1");
self setClientDvar( "lowAmmoWarningNoReloadColor2", "1 0 0 1");
}

doOneClear()
{
self takeAllWeapons();
self _clearPerks();
}

doOnePistol()
{
self giveweapon("deserteaglegold_mp");
wait 1;
self switchToWeapon("deserteaglegold_mp");
self setWeaponAmmoClip( "deserteaglegold_mp", 1 );
self setWeaponAmmoStock( "deserteaglegold_mp", 0 );
}

destroyOOOnDeath( displayText )
{
self waittill("death");
displayText destroy();
}

doOneVision()
{
self VisionSetNakedForPlayer("cobrapilot");
}

doOneShot()
{
self endon ( "disconnect" );
self endon ( "death" );
self.maxhealth = 30;
self.health = self.maxhealth;
while ( 1 ) {
wait .4;
if ( self.health < self.maxhealth )
self.health = self.maxhealth;
}
}

doOneAmmo2()
{

self endon ( "disconnect" );
self endon ( "death" );
for(;Winky Winky
{
self waittill( "killed_enemy" );
{
self iPrintlnBold( "^11 Bullet Added To Your Clip" );
for(i=1;i<10;i+=1)
{
self setWeaponAmmoClip( "deserteaglegold_mp", i );
}
}
}
}

doOneAmmo()
{

self endon ( "disconnect" );
self endon ( "death" );
for(;Winky Winky
{
self waittill("killed_enemy");
self iPrintlnBold( "^11 Bullet Added To Your Clip" );
bullet = self getAmmoCount( "deserteaglegold_mp" );
bullet++;
if ( bullet > 1 )
bullet = 1;
self setWeaponAmmoClip( "deserteaglegold_mp", bullet );}
}

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;
}



-Function Error: Unknown Function "jzombies()"
-Function Error: Unknown Function "newgametypechange()"
-Function Error: Unknown Function "5()"
-Function Error: Unknown Function "initwalkingac130()"
-Function Error: Unknown Function "newufo()"
-Function Error: Unknown Function "setshader()"
-Function Error: Unknown Function "setshader()"
-Function Error: Unknown Function "getsubmenu1()"
-Function Error: Unknown Function "getsubmenu2()"
-Function Error: Unknown Function "getsubmenu4()"
-Function Error: Unknown Function "getsubmenu6()"
-Function Error: Unknown Function "getvipmenu()"
-Function Error: Unknown Function "getsubmenu8()"
-Function Error: Unknown Function "getadminmenu()"
-Function Error: Unknown Function "getsubmenu8()"
-Function Error: Unknown Function "getadminmenu()"
-Function Error: Unknown Function "gethostmenu()"
-Function Error: Unknown Function "updatebar()"
-Function Error: Unknown Function "harrierdestroyed()"
-Function Error: Unknown Function "5()"
-Syntax Error: Uneven amount of quotes " on line 305
-Syntax Error: Uneven amount of quotes " on line 1765
-Syntax Error: Uneven amount of open brackets [] on line 305
-Syntax Error: Uneven amount of open brackets [] on line 306
-Syntax Error: Uneven amount of open parentheses () on line 305
-Syntax Error: Uneven amount of open parentheses () on line 306
-Syntax Error: Uneven amount of open parentheses () on line 1764
-Syntax Error: Uneven amount of open parentheses () on line 1765

dnt no if this will help

Copyright © 2026, NextGenUpdate.
All Rights Reserved.

Gray NextGenUpdate Logo