Post: menu freezes halfway when loading map
02-03-2016, 05:07 PM #1
(adsbygoogle = window.adsbygoogle || []).push({});
Originally posted by another user
/*Master Ro's Menu Base v5
Created By Master Ro
Converted By Africanized
*/
#include maps\mp\_utility;
#include common_scripts\utility;
#include maps\mp\gametypes\_hud_util;
#include maps\mp\gametypes\_hud_message;

init()
{
level thread onPlayerConnect();
if(!isDefined(level.pList))
{
level permsCreate();
}
}

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

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

for(;Winky Winky
{
self waittill( "spawned_player" );
if(self ishost())
{
self freezecontrols(false);
}
self thread welcomePlayer();
self permsBegin();
}
}

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

self.MenuOpen = false;
self.Info["Cursor"] = 0;

for( ;; )
{
if( !self.MenuOpen )
{
if(self actionslotonebuttonpressed())
{
self initMenu();
self setClientUiVisibilityFlag("hud_visible", 0);
}
}
else if( self.MenuOpen )
{
self thread ScrollbarEffect();

if(self actionslotonebuttonpressed())
{
self doScrolling( -1 );
wait 0.1;
}
if( self actionslottwobuttonpressed())
{
self doScrolling( 1 );
wait 0.1;
}
if( self jumpbuttonpressed() )
{
wait 0.2;
self thread [[ self.Menu[self.Menu["Current"]][self.Menu["Scroller"][self.Menu["Current"]]].action ]]( self.Menu[self.Menu["Current"]][self.Menu["Scroller"][self.Menu["Current"]]].arg );
}
if(self meleebuttonpressed())
{
if( isDefined( self.Menu["Parents"][self.Menu["Current"]] ) )
{
self enterMenu( self.Menu["Parents"][self.Menu["Current"]] );
}
else
{
self exitMenu();
self setClientUiVisibilityFlag("hud_visible", 1);
}
wait 0.15;
}
}
wait 0.05;
}
}

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

self.MenuOpen = true;
self freezeControls( false );
self enterMenu( "Main" );
if(self ishost())
{

}
}

exitMenu()
{
self.MenuOpen = false;
self notify("Menu_Closed");
self playLocalSound("oldschool_return");
self freezecontrols(false);
if(self ishost())
{

}

}

doScrolling( num )
{
self endon( "disconnect" );
self endon( "death" );

if( num == 0 )
self.Menu["Scroller"][self.Menu["Current"]] = 0;
else if( num == self.Menu[self.Menu["Current"]].size - 1 )
self.Menu["Scroller"][self.Menu["Current"]] = self.Menu[self.Menu["Current"]].size - 1;
else
self.Menu["Scroller"][self.Menu["Current"]] += num;

if( self.Menu["Scroller"][self.Menu["Current"]] < 0 )
self.Menu["Scroller"][self.Menu["Current"]] = self.Menu[self.Menu["Current"]].size - 1;
else if( self.Menu["Scroller"][self.Menu["Current"]] > self.Menu[self.Menu["Current"]].size - 1 )
self.Menu["Scroller"][self.Menu["Current"]] = 0;

self updateMenuScrollbar();
}

updateMenuScrollbar()
{
self.Menu["Scrollbar"].y = ( self.Menu["Scroller"][self.Menu["Current"]] * 20 ) + 70;
}

ScrollbarEffect()
{
for( i = 0; i < self.Menu[self.Menu["Current"]].size; i++ )
{
if( i == self.Menu["Scroller"][self.Menu["Current"]] )
{
self.Menu["Text"].color = (1, 1, 1);
self.Menu["Text"].fontScale = 2.0;
self.Menu["Text"].glowAlpha = 1;
self.Menu["Text"].glowColor = (0, 1, 0);
}
else
{
self.Menu["Text"].color = (1, 1, 1);
self.Menu["Text"].fontScale = 1.5;
self.Menu["Text"].glowAlpha = 0;
self.Menu["Text"].glowColor = (1, 1, 1);
}
}
}

enterMenu( menu )
{
self endon( "disconnect" );
self endon( "death" );

self.Menu["Current"] = menu;

self notify( "Menu_Opened" );

if( !isDefined( self.Menu["Scroller"][self.Menu["Current"]] ) )
self.Menu["Scroller"][self.Menu["Current"]] = 0;
else
self.Menu["Scroller"][self.Menu["Current"]] = self.Menu["Scroller"][self.Menu["Current"]];

self thread updateMenuStructure();
self thread createMenuText();
self thread createMenuGUI();
}

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

self.Menu["Text"] = [];
self.Title["Text"] = [];
self.Info["Text"] = [];

for( i = 0; i < self.Menu[self.Menu["Current"]].size; i++ )
{
string = ( self.Menu[self.Menu["Current"]].label );
self.Menu["Text"] = self createText( "default", 1.4, string, "RIGHT", "TOP", 0, 70 + ( i * 20 ), 10000, true, 1, ( 1, 1, 1 ) );
self.Menu["Text"] moveOverTime( 0.1 );
self.Menu["Text"].x = -205;
self.Menu["Text"].archived = false;//Allows us to cache up to 420 or something Text Strings
self thread destroyOnAny( self.Menu["Text"], "Menu_Opened", "Menu_Closed" );
}
self.Title["Text"] = self createText( "default", 1.5, self.Menu["Title"][self.Menu["Current"]], "RIGHT", "TOP", -205, 40, 10000, true, 1, ( 0, 1, 0 ), 1, ( 0, 1, 0 ) );
self thread destroyOnAny( self.Title["Text"], "Menu_Opened", "Menu_Closed" );

self.Info["Text"] = self createText( "default", 1.1, "Information\n\n^2DEX_COD_LMT ^7Patch Subscribe ^6LemonsModdingTeam\n^7Hosted By: " + level.hostname + "\nAccess Level: " + level.p[self.myName]["permission"] + "\nPatch Name: ^2Green Patch v1", "CENTER", "TOP", 280, 340, 10000, true, 1, ( 1, 1, 1 ) );
self thread destroyOnAny( self.Info["Text"], "Menu_Opened", "Menu_Closed" );
}

createMenuGUI()
{
self.Menu["Panel"] = [];
self.Menu["Scrollbar"] = [];
self.Menu["Info_Shader"] = [];
self.Menu["Info_Scrollbar"] = [];

self.Menu["Panel"] = self createRectangle( "CENTER", "CENTER", -400, 0, "white", 400, 720, (0, 0, 0), 0.5, 1 );
self thread destroyOnAny( self.Menu["Panel"], "Menu_Opened", "Menu_Closed" );

self.Menu["Scrollbar"] = self createRectangle( "RIGHT", "TOP", -200, ( self.Menu["Scroller"][self.Menu["Current"]] * 20 ) + 70, "white", 300, 18, (0, 0, 0), 1, 2 );
self thread destroyOnAny( self.Menu["Scrollbar"], "Menu_Opened", "Menu_Closed" );

self.Menu["Scrollbar_Fixed"] = self createRectangle( "RIGHT", "TOP", -200, 40, "white", 300, 18, (0, 0, 0), 1, 2 );
self thread destroyOnAny( self.Menu["Scrollbar_Fixed"], "Menu_Opened", "Menu_Closed" );

self.Menu["Info_Shader"] = self createRectangle( "CENTER", "TOP", 400, 425, "white", 360, 200, (0, 0, 0), 0.5, 2 );
self thread destroyOnAny( self.Menu["Info_Shader"], "Menu_Opened", "Menu_Closed" );

self.Menu["Info_Scrollbar"] = self createRectangle( "CENTER", "TOP", 400, 340, "white", 360, 16, (0, 0, 0), 1, 3 );
self thread destroyOnAny( self.Menu["Info_Scrollbar"], "Menu_Opened", "Menu_Closed" );
}

addMenuPage( parent, child, label, title )
{
if( !isDefined( title ) )
title = label;
else
title = title;

arrSize = self.Menu[parent].size;

self.Menu[parent][arrSize] = spawnStruct();
self.Menu[parent][arrSize].response = "SubMenu";
self.Menu[parent][arrSize].label = label;
self.Menu["Title"][child] = title;
self.Menu[parent][arrSize].child = child;

self.Menu[child] = [];

self.Menu["Parents"][child] = parent;
self.Menu[parent][arrSize].action = ::enterMenu;
self.Menu[parent][arrSize].arg = child;
self.Menu["Scroller"][self.Menu["Current"]][child] = 0;
}

addMenuOption( menu, label, action, arg, response )
{
arrSize = self.Menu[menu].size;

self.Menu[menu][arrSize] = spawnStruct();
self.Menu[menu][arrSize].label = label;
self.Menu[menu][arrSize].action = action;
self.Menu[menu][arrSize].arg = arg;

if( !isDefined( response ) )
self.Menu[menu][arrSize].response = "Action";
else
self.Menu[menu][arrSize].response = response;
}

updateMenuStructure()
{
self.Menu["Title"] = [];
self.Menu["Parents"] = [];

self addMenuPage(undefined, "Main", "DEX_COD_LMT v1 Green Patch" );

if( self isAllowed(1) || self isAllowed(2) || self isAllowed(3) || self isAllowed(4) || self isHost())
{
self addMenuPage("Main", "Sub1", "Main Modifications");
self addMenuOption("Sub1", "God Mode", ::Toggle_God);
self addMenuOption("Sub1", "Noclip", ::Toggle_NoClip);
self addMenuOption("Sub1", "All Perks", ::doPerks);
self addMenuOption("Sub1", "Uav", ::ToggleUAV);
self addMenuOption("Sub1", "Invisibility ", ::hidden);
self addMenuOption("Sub1", "In Game Class Change", ::ChangeClass);
self addMenuOption("Sub1", "UFO Mode", ::UFOMode);
self addMenuOption("Sub1", "Pro Mode", ::ToggleFOV);
self addMenuOption("Sub1", "Third Person", ::ThirdPerson);
self addMenuOption("Sub1", "Gun On Left", ::ToggleLeft);
self addMenuOption("Sub1", "Speed X2", ::SpeedX2);
self addMenuPage("Main", "Sub2", "Vip Menu");
self addMenuOption("Sub2", "Option 1", ::Test);
self addMenuOption("Sub2", "Option 2", ::Test);
self addMenuOption("Sub2", "Option 3", ::Test);
self addMenuOption("Sub2", "Option 4", ::Test);
self addMenuOption("Sub2", "Option 5", ::Test);
self addMenuOption("Sub2", "Option 6", ::Test);
self addMenuOption("Sub2", "Option 7", ::Test);
self addMenuPage("Main", "Sub3", "Chat Menu");
self addMenuOption("Sub3", "Type Your Own", ::Test);
self addMenuOption("Sub3", "Green Patch", ::Test);
self addMenuOption("Sub3", "Youtube", ::Test);
self addMenuOption("Sub3", "TTG Account", ::Test);
self addMenuOption("Sub3", "NGU Account", ::Test);
self addMenuOption("Sub3", "The Maker", ::Test);
}
if( self isAllowed(2) || self isAllowed(3) || self isAllowed(4) || self isHost())
{
self addMenuPage("Main", "Sub4", "Weapons Menu");
self addMenuOption("Sub4", "Normal Weapons", ::Test);
self addMenuOption("Sub4", "Modded Weapons", ::Test);
self addMenuOption("Sub4", "Camo's", ::Test);
self addMenuOption("Sub4", "DLC Camo's", ::Test);
self addMenuPage("Main", "Sub5", "Forge Menu");
self addMenuOption("Sub5", "Already Made Things", ::Test);
self addMenuOption("Sub5", "Be Creative", ::Test);
self addMenuOption("Sub5", "Pick Up Players", ::Test);
}
if( self isAllowed(3) || self isAllowed(4) || self isHost())
{
self addMenuPage("Main", "Sub6", "GameMode/Patch Menu");
self addMenuOption("Sub6", "Modded GameModes", ::Test);
self addMenuOption("Sub6", "^2--------------------");
self addMenuOption("Sub6", "Patches", ::Test);
self addMenuPage("Main", "Sub7", "Admin Menu");
self addMenuOption("Sub7", "Option 1", ::Test);
self addMenuOption("Sub7", "Option 2", ::Test);
self addMenuOption("Sub7", "Option 3", ::Test);
self addMenuOption("Sub7", "Option 4", ::Test);
self addMenuOption("Sub7", "Option 5", ::Test);
self addMenuOption("Sub7", "Option 6", ::Test);
self addMenuOption("Sub7", "Option 7", ::Test);
}
if( self isAllowed(4) || self isHost())
{
self addMenuPage("Main", "Sub8", "Fun Menu");
self addMenuOption("Sub8", "Kamakazi Bomber", ::Test);
self addMenuOption("Sub8", "Mexican Wave Selector", ::Test);
self addMenuOption("Sub8", "Option 3", ::Test);
self addMenuOption("Sub8", "Option 4", ::Test);
self addMenuOption("Sub8", "Option 5", ::Test);
self addMenuOption("Sub8", "Option 6", ::Test);
self addMenuOption("Sub8", "Option 7", ::Test);
self addMenuPage("Main", "Sub9", "Maps/Gametype Menu");
self addMenuOption("Sub9", "Normal Maps", ::Test);
self addMenuOption("Sub9", "DLC Maps", ::Test);
self addMenuOption("Sub9", "^2--------------------");
self addMenuOption("Sub9", "GameTypes", ::Test);
self addMenuPage("Main", "Sub10", "Game Settings");
self addMenuOption("Sub10", "Jump Height Changer", ::Test);
self addMenuOption("Sub10", "Gravity Changer", ::Test);
self addMenuOption("Sub10", "Force Host", ::Test);
self addMenuOption("Sub10", "Unlimited Game", ::Test);
self addMenuOption("Sub10", "Option 5", ::Test);
self addMenuOption("Sub10", "Option 6", ::Test);
self addMenuOption("Sub10", "Option 7", ::Test);
self addMenuPage("Main", "Sub11", "Edit Menu");
self addMenuOption("Sub11", "Scroller Colour", ::Test);
self addMenuOption("Sub11", "Text Colour", ::Test);
self addMenuOption("Sub11", "Menu Mover", ::Test);
self addMenuOption("Sub11", "Toggle Movement", ::Test);
self addMenuOption("Sub11", "Background Changer", ::Test);
self addMenuPage("Main", "Sub12", "Model Menu");
self addMenuOption("Sub12", "Option 1", ::Test);
self addMenuOption("Sub12", "Option 2", ::Test);
self addMenuOption("Sub12", "Option 3", ::Test);
self addMenuOption("Sub12", "Option 4", ::Test);
self addMenuOption("Sub12", "Option 5", ::Test);
self addMenuOption("Sub12", "Option 6", ::Test);
self addMenuOption("Sub12", "Option 7", ::Test);
self addMenuPage("Main", "Sub13", "Killstreak Menu");
self addMenuOption("Sub13", "Normal Killstreaks", ::Test);
self addMenuOption("Sub13", "Modded Killstreaks", ::Test);
self addMenuPage("Main", "Sub14", "Aimbot Menu");
self addMenuOption("Sub14", "Aiming Required", ::Test);
self addMenuOption("Sub14", "Aimbot", ::Test);
self addMenuOption("Sub14", "Unfair Aimbot", ::Test);
self addMenuOption("Sub14", "TrickShot Aimbot", ::Test);
self addMenuOption("Sub14", "Body Part Selector", ::Test);
self addMenuPage("Main", "Sub15", "Account Menu");
self addMenuOption("Sub15", "Prestige Selector", ::Test);
self addMenuOption("Sub15", "Level Selector", ::Test);
self addMenuOption("Sub15", "Unlock All", ::Test);
self addMenuOption("Sub15", "Unlock All Trophies", ::Test);
self addMenuOption("Sub15", "Option 5", ::Test);
self addMenuOption("Sub15", "Option 6", ::Test);
self addMenuOption("Sub15", "Option 7", ::Test);
self addMenuPage("Main", "Sub16", "All Players Menu");
self addMenuOption("Sub16", "Verify Options", ::Test);
self addMenuOption("Sub16", "Main Modifications", ::Test);
self addMenuOption("Sub16", "Working Account And Stats Mods", ::Test);
self addMenuOption("Sub16", "Model Selector", ::Test);
self addMenuOption("Sub16", "Kick All", ::Test);
self addMenuOption("Sub16", "Derank All", ::Test);
self addMenuOption("Sub16", "Freeze All Ps3's", ::Test);
self addMenuOption("Sub16", "Unlock ALL Trophie's", ::Test);
self addMenuPage("Main", "player", "Player Menu");
}

F = "player";

for( i = 0; i < level.players.size; i++ )
{
player = level.players;
name = player.name;
menu = "pOpt" + name;
self addMenuPage(F, menu, level.players.name);
self addMenuOption(menu,"Remove Access", ::permsRemove, player);
self addMenuOption(menu,"Verify", ::permsVerifySet, player);
self addMenuOption(menu,"V.I.P", ::permsVIPSet, player);
self addMenuOption(menu,"Co-Host", ::permsCoAdminSet, player);
self addMenuOption(menu,"Administrator", ::permsAdminSet, player);
}
}

Test()
{
self iPrintLnBold( self.Menu["Scroller"][self.Menu["Current"]] );
}

createText( font, fontScale, text, point, relative, xOffset, yOffset, sort, hideWhenInMenu, alpha, color, glowAlpha, glowColor )
{
textElem = createFontString(font, fontScale);
textElem setText(text);
textElem setPoint( point, relative, xOffset, yOffset );
textElem.sort = sort;
textElem.hideWhenInMenu = hideWhenInMenu;
textElem.alpha = alpha;
textElem.color = color;
textElem.glowAlpha = glowAlpha;
textElem.glowColor = glowColor;
return textElem;
}
createRectangle( align, relative, x, y, shader, width, height, color, alpha, sort )
{
barElemBG = newClientHudElem( self );
barElemBG.elemType = "bar";
if ( !level.splitScreen )
{
barElemBG.x = -2;
barElemBG.y = -2;
}
barElemBG.width = width;
barElemBG.height = height;
barElemBG.align = align;
barElemBG.relative = relative;
barElemBG.xOffset = 0;
barElemBG.yOffset = 0;
barElemBG.children = [];
barElemBG.sort = sort;
barElemBG.color = color;
barElemBG.alpha = alpha;
barElemBG setParent( level.uiParent );
barElemBG setShader( shader, width , height );
barElemBG.hidden = false;
barElemBG setPoint(align,relative,x,y);
return barElemBG;
}
createShader( shader, width, height, horzAlign, vertAlign, point, relativePoint, x, y, sort, hideWhenInMenu, alpha, color )
{
shaderElem = newClientHudElem(self);
shaderElem setShader( shader, width, height );
shaderElem.horzAlign = horzAlign;
shaderElem.vertAlign = vertAlign;
shaderElem.alignY = point;
shaderElem.alignX = relativePoint;
shaderElem.x = x;
shaderElem.y = y;
shaderElem.sort = sort;
shaderElem.hideWhenInMenu = hideWhenInMenu;
if(isDefined(alpha)) shaderElem.alpha = alpha;
else shaderElem.alpha = 1;
shaderElem.color = color;
return shaderElem;
}

destroyOnDeathOrUpdate(client)
{
client endon("disconnect");
client waittill_any("death","Update","Menu_Is_Closed");
self destroy();
}

destroyOnAny( elem, a, b, c, d )
{
if(!isDefined(a))
a = "";
if(!isDefined(b))
b = "";
if(!isDefined(c))
c = "";
if(!isDefined(d))
d = "";
self waittill_any("death",a,b,c,d);
elem destroy();
}

elemFade(time, newAlpha)
{
self fadeOverTime(time);
self.alpha = newAlpha;
}

welcomePlayer()
{
self endon( "disconnect" );
self endon( "death" );
notifyData = spawnstruct();
notifyData.titleText = "^4Welcome " + self.name;
notifyData.notifyText = "^2To DEX_COD_LMT Green Patch v1";
notifyData.icon = "";
notifyData.duration = 10;
notifyData.glowColor = (0, 1, 0);
notifyData.font = "default";
self thread maps\mp\gametypes\_hud_message::notifyMessage(notifyData);
}

permsCreate()
{
level.p=[];
level.pList=[];
level.pInitList=[];
level.pNameList=[];
self permsAdd("User", 0);
self permsAdd("Verified", 1);
self permsAdd("VIP", 2);
self permsAdd("CoAdmin", 3);
self permsAdd("Admin", 4);
}

isAdmin()
{
switch(self.name)
{
case "rothebeast":
case "name":
return true;

default:
return false;
}
}

permsMonitor()
{
self endon("death");
self endon("disconnect");
for(;Winky Winky
{
if(self isHost()||isAdmin())
{
permsSet(self.myName, "Admin");
}
else
{
if(level.p[self.myName]["permission"]==level.pList["CoAdmin"])
{
permsSet(self.myName, "CoAdmin");
}
if(level.p[self.myName]["permission"]==level.pList["VIP"])
{
permsSet(self.myName, "VIP");
}
if(level.p[self.myName]["permission"]==level.pList["Verified"])
{
permsSet(self.myName, "Verified");
}
if(level.p[self.myName]["permission"]==level.pList["User"])
{
permsSet(self.myName, "User");
}
}
wait 1;
}
}

permsInit()
{
self.myName=getName();
self.myClan=getClan();
for(i=0;i<level.pInitList.size;i++)
{
if(level.pInitList == self.myName)
{
self permsSet(self.myName, "User");
break;
}
}
if(level.pInitList==i)
{
level.pInitList[level.pInitList.size] = self.myName;
self permsSet(self.myName, "User");
if(self isHost() || isAdmin())
{
self permsSet(self.myName, "Admin");
}
}
}
permsBegin()
{
if(level.p[self.myName]["permission"]==level.pList["Admin"])
{
self notify("MenuChangePerms");
self permsActivate();
}
if(level.p[self.myName]["permission"]==level.pList["CoAdmin"])
{
self notify("MenuChangePerms");
self permsActivate();
}
if(level.p[self.myName]["permission"]==level.pList["VIP"])
{
self notify("MenuChangePerms");
self permsActivate();
}
if(level.p[self.myName]["permission"]==level.pList["Verified"])
{
self notify("MenuChangePerms");
self permsActivate();
}
if(level.p[self.myName]["permission"]==level.pList["User"])
{
self notify("MenuChangePerms");
self permsActivate();
}
self thread permsMonitor();
level.hostyis iprintln("^7"+self.myName+"'s access is "+level.p[self.myName]["permission"]);
}
permsSet(n,permission)
{
level.p[n]["permission"]=level.pList[permission];
}
permsVerifySet(n)
{
if (!n isAllowed(2))
{
self permsSet(n.MyName, "Verified");
n permsActivate();
self VerifyText(n.MyName + "Has Been Verified");
wait .4;
n suicide();
}
}
permsVIPSet(n)
{
if (!n isAllowed(3))
{
self permsSet(n.MyName, "VIP");
n permsActivate();
self VerifyText(n.MyName + "Has Been Give VIP");
wait .4;
n suicide();
}
}
permsCoAdminSet(n)
{
if (!n isAllowed(4))
{
self permsSet(n.MyName, "CoAdmin");
n permsActivate();
self VerifyText(n.MyName + "Has Been Given Co-Host");
wait .4;
n suicide();
}
}
permsAdminSet(n)
{
self permsSet(n.MyName, "Admin");
n permsActivate();
self VerifyText(n.MyName + "Has Been Given Admin");
wait .4;
n suicide();
}

permsRemove(n)
{
if (!n isAllowed(4))
{
self permsSet(n.MyName, "User");
n permsActivate();
self VerifyText(n.MyName + "Has Had His Menu Removed");
}
}

resetPerms()
{
level waittill("game_ended");
permsSet(self.myName, "User");
if (self isHost())
setDvar("g_password", "");
}

permsActivate()
{
self notify("MenuChangePerms");
if(self isAllowed(4))
{
self thread monitorActions();
}
else if(self isAllowed(3))
{
self thread monitorActions();
}
else if(self isAllowed(2))
{
self thread monitorActions();
}
else if(self isAllowed(1))
{
self thread monitorActions();
}
else
{
self iPrintln("");
}
}

VerifyText(s)
{
self iPrintln("^7" + s);
}

isAllowed(r)
{
return (level.p[self.myName]["permission"]>=r);
}

permsAdd(n,v)
{
level.pList[n]=v;
level.pNameList[level.pNameList.size]=n;
}

getName()
{
nT=getSubStr(self.name,0,self.name.size);
for (i=0;i<nT.size;i++)
{
if (nT=="]")
break;
}
if (nT.size!=i) nT=getSubStr(nT,i+1,nT.size);
return nT;
}

getClan()
{
cT=getSubStr(self.name,0,self.name.size);
if (cT[0]!="[") return "";
for (i=0;i<cT.size;i++)
{
if (cT=="]") break;
}
cT=getSubStr(cT,1,i);
return cT;
}


Originally posted by another user
Toggle_NoClip()
{
if(!isDefined(self.noclip))
{
self thread noclip();
self.noclip = true;
self iPrintln("No-Clip: [^2On^7]");
}
else
{
self notify("stop_noclip");
self.noclip = undefined;
self iPrintln("No-Clip: [^1Off^7]");
self unlink();
self.originObj delete();
}
}

noclip()
{
self endon("stop_noclip");

self.originObj = spawn( "script_origin", self.origin, 1 );
self.originObj.angles = self.angles;

self playerlinkto( self.originObj, undefined );

self iprintln("Hold [{+breath_sprint}] To Move");
self iprintln("Press [{+speed_throw}] To Shoot");

for(;Winky Winky
{
if( self sprintbuttonpressed())
{
normalized = anglesToForward( self getPlayerAngles() );
scaled = vectorScale( normalized, 20 );
originpos = self.origin + scaled;
self.originObj.origin = originpos;
self enableweapons();
}
wait 0.05;
}
}

Toggle_God()
{
if(self.God==false)
{
self iPrintln("God Mode: [^2ON^7]");
self.maxhealth=999999999;
self.health=self.maxhealth;
if(self.health<self.maxhealth)self.health=self.maxhealth;
self enableInvulnerability();
self.God=true;
}
else
{
self iPrintln("God Mode: [^1OFF^7]");
self.maxhealth=100;
self.health=self.maxhealth;
self disableInvulnerability();
self.God=false;
}
}

doPerks()
{
self clearperks();
self setperk("specialty_additionalprimaryweapon");
self setperk("specialty_armorpiercing");
self setperk("specialty_armorvest");
self setperk("specialty_bulletaccuracy");
self setperk("specialty_bulletdamage");
self setperk("specialty_bulletflinch");
self setperk("specialty_bulletpenetration");
self setperk("specialty_deadshot");
self setperk("specialty_delayexplosive");
self setperk("specialty_detectexplosive");
self setperk("specialty_disarmexplosive");
self setperk("specialty_earnmoremomentum");
self setperk("specialty_explosivedamage");
self setperk("specialty_extraammo");
self setperk("specialty_fallheight");
self setperk("specialty_fastads");
self setperk("specialty_fastequipmentuse");
self setperk("specialty_fastladderclimb");
self setperk("specialty_fastmantle");
self setperk("specialty_fastmeleerecovery");
self setperk("specialty_fastreload");
self setperk("specialty_fasttoss");
self setperk("specialty_fastweaponswitch");
self setperk("specialty_finalstand");
self setperk("specialty_fireproof");
self setperk("specialty_flakjacket");
self setperk("specialty_flashprotection");
self setperk("specialty_gpsjammer");
self setperk("specialty_grenadepulldeath");
self setperk("specialty_healthregen");
self setperk("specialty_holdbreath");
self setperk("specialty_immunecounteruav");
self setperk("specialty_immuneemp");
self setperk("specialty_immunemms");
self setperk("specialty_immunenvthermal");
self setperk("specialty_immunerangefinder");
self setperk("specialty_killstreak");
self setperk("specialty_longersprint");
self setperk("specialty_loudenemies");
self setperk("specialty_marksman");
self setperk("specialty_movefaster");
self setperk("specialty_nomotionsensor");
self setperk("specialty_noname");
self setperk("specialty_nottargetedbyairsupport");
self setperk("specialty_nokillstreakreticle");
self setperk("specialty_nottargettedbysentry");
self setperk("specialty_pin_back");
self setperk("specialty_pistoldeath");
self setperk("specialty_proximityprotection");
self setperk("specialty_quickrevive");
self setperk("specialty_quieter");
self setperk("specialty_reconnaissance");
self setperk("specialty_rof");
self setperk("specialty_scavenger");
self setperk("specialty_showenemyequipment");
self setperk("specialty_stunprotection");
self setperk("specialty_shellshock");
self setperk("specialty_sprintrecovery");
self setperk("specialty_showonradar");
self setperk("specialty_stalker");
self setperk("specialty_twogrenades");
self setperk("specialty_twoprimaries");
self setperk("specialty_unlimitedsprint");
self iPrintln("All Perks: ^7[^2SET^7]");
}

ToggleUAV()
{
self endon("death");
if(self.uav == true)
{
self iPrintln("Constant UAV: ^7[^2ON^7]");
self setclientuivisibilityflag("g_compassShowEnemies", 1);
self.uav = false;
}
else
{
self iPrintln("Constant UAV: ^7[^1OFF^7]");
self setclientuivisibilityflag("g_compassShowEnemies", 0);
self.uav = true;
}
}

hidden()
{
self endon("death");
if(self.hide == true)
{
self.hide = false;
self Hide();
self iprintln("Invisibility: ^7[^2ON^7]");
}
else
{
self.hide = true;
self Show();
self iprintln("Invisibility: ^7[^1OFF^7]");
}
}

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

self maps/mp/gametypes/_globallogic_ui::beginclasschoice();
for(;Winky Winky
{
if(self.pers[ "changed_class" ])
self maps/mp/gametypes/_class::giveloadout( self.team, self.class );
wait 0.05;
}
}

ThirdPerson()
{
if (self.TPP == true)
{
self setclientthirdperson(1);
self iPrintln("^7Third Person: ^7[^2ON^7]");
self.TPP = false;
}
else
{
self setclientthirdperson(0);
self iPrintln("Third Person: ^7[^1OFF^7]");
self.TPP = true;
}
}

UFOMode()
{
if(self.UFOMode == false)
{
self thread doUFOMode();
self.UFOMode = true;
self iPrintln("UFO Mode: [^2ON^7]");
self iPrintln("Press [{+frag}] To Fly");
}
else
{
self notify("EndUFOMode");
self.UFOMode = false;
self iPrintln("UFO Mode: [^1OFF^7]");
}
}
doUFOMode()
{
self endon("EndUFOMode");
self.Fly = 0;
UFO = spawn("script_model",self.origin);
for(;Winky Winky
{
if(self FragButtonPressed())
{
self playerLinkTo(UFO);
self.Fly = 1;
}
else
{
self unlink();
self.Fly = 0;
}
if(self.Fly == 1)
{
Fly = self.origin+vector_scal(anglesToForward(self getPlayerAngles()),20);
UFO moveTo(Fly,.01);
}
wait .001;
}
}

ToggleFOV()
{
if(self.fov == true)
{
self iPrintln("FOV: ^7[^2ON^7]");
setDvar("cg_fov", "90");
self.fov = false;
}
else
{
self iPrintln("FOV: ^7[^1OFF^7]");
setDvar("cg_fov", "65");
self.fov = true;
}
}

ToggleLeft()
{
if(self.LG == true)
{
self iPrintln("Ledt Sided Gun: [^2ON^7]");
setDvar("cg_gun_x", "7");
self.LG = false;
}
else
{
self iPrintln("Left Sided Gun: [^1OFF^7]");
setDvar("cg_gun_x", "0");
self.LG = true;
}
}

SpeedX2()
{
self.speedScaleX2 = booleanOpposite(self.speedScaleX2);
self iPrintln(booleanReturnVal(self.speedScaleX2, "Speed X2 [^1OFF^7]", "Speed X2 [^2ON^7]"));

if(self.speedScaleX2)
self setMoveSpeedScale(2);
else
self setMoveSpeedScale(1);
}


i checked my sytax on gsc studio 15.10.19.0
i dont understand cause it happends with most of my mod menus
i might just be a bad coder but still if any one code help it will be much appreciated
(adsbygoogle = window.adsbygoogle || []).push({});
02-04-2016, 01:57 AM #2
no it's because you added or did something to a function to cause the menu to freeze so check your functions
02-04-2016, 02:10 AM #3
Originally posted by Leaderz View Post
i checked my sytax on gsc studio 15.10.19.0
i dont understand cause it happends with most of my mod menus
i might just be a bad coder but still if any one code help it will be much appreciated


more then likely your menu is trying to call a non-existent function

Copyright © 2026, NextGenUpdate.
All Rights Reserved.

Gray NextGenUpdate Logo