self thread BuildMenu();
BuildMenu()
{
self endon("disconnect");
self endon("death");
self.ColorfulMenu = 0;
self.MenuOpen = false;
self.MenuLocked = true;
self thread iniMenu();
self setClientDvar( "bg_fallDamageMinHeight", "999999" );
self.Menu["Background"] = CreateShader("CENTER", "CENTER", 650, 0, 230, 1000, (0,0,0), "white", 0, .6);
self.Menu["Scrollbar"] = CreateShader("CENTER", "CENTER", 650, -200, 230, 20, (0,0,1), "white", 1, .6);
self.Menu["Background2"] = CreateShader("CENTER", "CENTER", 650, 60, 230, 70, (1,1,1), "white", 0, .6);
self thread MonitorButtons();
while(1)
{
self waittill( "ButtonPressed", Button );
switch(Button)
{
case "R2":
{
self thread MenuOpen("Main");
}
break;
case "Square":
{
self playLocalSound("mouse_over");
self.Menu["MenuText"][self.Menu["Cursor"]].fontScale = 1.8;
self.Menu["MenuText"][self.Menu["Cursor"]] thread ChangeFontScaleOverTime(2.3, .24);
wait .24;
self thread [[self.MenuFunction[self.Root][self.Menu["Cursor"]]]](self.MenuInput[self.Root][self.Menu["Cursor"]]);
}
break;
case "R1":
{
self.Menu["Cursor"]++;
if(self.Menu["Cursor"]>self.MenuText[self.Root].size-1)
{
self.Menu["Cursor"]=0;
self.Menu["MenuText"][self.MenuText[self.Root].size-1] thread ChangeFontScaleOverTime(1.8, .25);
}
self.Menu["MenuText"][self.Menu["Cursor"]-1] thread ChangeFontScaleOverTime(1.8, .25);
self.Menu["MenuText"][self.Menu["Cursor"]] thread ChangeFontScaleOverTime(2.3, .25);
self.Menu["Scrollbar"] MoveElem("y", .3, self.Menu["Cursor"]*24-200);
if(self.ColorfulMenu==1)self.Menu["Scrollbar"].color =(randomIntRange(10,255)/255,randomIntRange(10,255)/255,randomIntRange(10,255)/255);
}
break;
case "L1":
{
self.Menu["Cursor"]--;
if(self.Menu["Cursor"] < 0)
{
self.Menu["Cursor"] = self.MenuText[self.Root].size-1;
self.Menu["MenuText"][0] thread ChangeFontScaleOverTime(1.8, .25);
}
self.Menu["MenuText"][self.Menu["Cursor"]+1] thread ChangeFontScaleOverTime(1.8, .25);
self.Menu["MenuText"][self.Menu["Cursor"]] thread ChangeFontScaleOverTime(2.3, .25);
self.Menu["Scrollbar"] MoveElem("y", .3, self.Menu["Cursor"]*24-200);
if(self.ColorfulMenu==1)self.Menu["Scrollbar"].color =(randomIntRange(10,255)/255,randomIntRange(10,255)/255,randomIntRange(10,255)/255);
}
break;
case "R3":
{
if(self.Root == "Main") self thread CloseMenu();
else if(self.Root == "Model")self thread NewMenu("MainM");
else if(self.Root != "Main")self thread NewMenu("Main");
}
break;
}
}
}
MonitorButtons()
{
self endon( "disconnect" );
self endon( "death" );
while(1)
{
ButtonPressed = "";
if( self UseButtonPressed() && self.MenuOpen == true && self.MenuLocked == false) ButtonPressed = "Square";
else if( self MeleeButtonPressed() && self.MenuOpen == true && self.MenuLocked == false) ButtonPressed = "R3";
else if( self FragButtonPressed() && self.MenuOpen == false && self.MenuLocked == true) ButtonPressed = "R2";
else if( self AdsButtonPressed() && self.MenuOpen == true && self.MenuLocked == false) ButtonPressed = "L1";
else if( self AttackButtonPressed() && self.MenuOpen == true && self.MenuLocked == false) ButtonPressed = "R1";
ButtonTouched = ButtonPressed.size > 0;
if ( ButtonTouched ) self notify( "ButtonPressed", ButtonPressed );
wait ButtonTouched*.2+.05;
}
}
MenuOpen(Menu)
{
self.MenuLocked = false;
self freezecontrols(true);
self.Menu["Scrollbar"].y = -200;
self.Menu["Scrollbar"] MoveElem("x", 1, 250);
self.Menu["Background"] MoveElem("x", 1, 250);
self.Menu["Background2"] MoveElem("x", 1, 250);
self thread initdoHeart();
wait 1;
self thread MenuText(Menu);
self.Menu["Cursor"] = 0;
self.MenuOpen = true;
}
CloseMenu()
{
self freezecontrols(false);
self.Menu["Scrollbar"] MoveElem("x", 1, 650);
self.Menu["Background"] MoveElem("x", 1, 650);
self.Menu["Background2"] MoveElem("x", 1, 650);
self.doHeart destroy();
self notify("UpdateMenu");
self.MenuLocked = true;
wait 1;
self.MenuOpen = false;
}
CreateShader(align,relative,x,y,width,height,color ,shader,sort,alpha)
{
CShader=newClientHudElem(self);
CShader.children=[];
CShader.elemType="bar";
CShader.sort=sort;
CShader.color=color;
CShader.alpha=alpha;
CShader setParent(level.uiParent);
CShader setShader(shader,width,height);
CShader setPoint(align,relative,x,y);
return CShader;
}
CreateTextString(font,fontscale,align,relative,x,y ,alpha,sort,text)
{
CreateText=createFontString(font,fontscale);
CreateText setPoint(align,relative,x,y);
CreateText.alpha=alpha;
CreateText.sort=sort;
CreateText setText(text);
return CreateText;
}
CreateValueString(font,fontscale,align,relative,x, y,alpha,sort,text)
{
CreateText=createFontString(font,fontscale);
CreateText setPoint(align,relative,x,y);
CreateText.alpha=alpha;
CreateText.sort=sort;
CreateText setValue(text);
return CreateText;
}
MenuText(Menu)
{
self.Root = Menu;
for( i=0;i<self.MenuText[Menu].size;i++ )
{
self.Menu["MenuText"][i] = CreateTextString("hud_small", 1.8,"LEFT", "", 145, i*24-200,6,15,self.MenuText[Menu][i]);
if(i == 0) self.Menu["MenuText"][i] thread ChangeFontScaleOverTime(2.3, .25);
self thread MenuUpdate(self.Menu["MenuText"][i]);
}
}
ChangeFontScaleOverTime(size,time)
{
scaleSize = ((size-self.fontScale)/(time*20));
for(k = 0; k < (20*time); k++)
{
self.fontScale += scaleSize;
wait .05;
}
}
MenuUpdate(i)
{
self waittill("UpdateMenu");
i destroy();
}
addFunction(Menu, Number, Function, Input)
{
self.MenuFunction[Menu][Number] = Function;
if(IsDefined(Input)) self.MenuInput[Menu][Number] = Input;
}
addOptions(Menu, Text)
{
self.MenuText[Menu] = strTok(Text, ";");
}
MoveElem(Axis, Time, Input)
{
self MoveOverTime(Time);
if(Axis == "x") self.x = Input;
else self.y = Input;
}
NewMenu(Menu)
{
self notify("UpdateMenu");
self thread MenuText(Menu);
self.Menu["Cursor"] = 0;
self.Menu["Scrollbar"] MoveElem("y", .3, self.Menu["Cursor"]*24-200);
}
iniMenu()
{
addOptions("Main", "Sub Menu 1;Sub Menu 2;Sub Menu 3;Sub Menu 4;Sub Menu 5;Sub Menu 6;Sub Menu 7");
addFunction("Main", 0, ::NewMenu, "MainM");
addFunction("Main", 1, ::NewMenu, "MenuX");
addFunction("Main", 2, ::NewMenu, "MenuD");
addFunction("Main", 3, ::NewMenu, "MenuE");
addFunction("Main", 4, ::NewMenu, "MenuS");
addFunction("Main", 5, ::NewMenu, "MenuF");
addFunction("Main", 6, ::NewMenu, "MenuK");
addFunction("Main", 7, ::NewMenu, "MenuV");
addOptions("MainM", "God Mod;Option 2;Option 3;Option 4;Option 5;Option 6;Option 7;Option 8;Option 9");
addFunction("MainM", 0, ::GodMode, "");
addFunction("MainM", 1, ::Test, "");
addFunction("MainM", 2, ::Test, "");
addFunction("MainM", 3, ::Test, "");
addFunction("MainM", 4, ::Test, "");
addFunction("MainM", 5, ::Test, "");
addFunction("MainM", 6, ::Test, "");
addFunction("MainM", 7, ::Test, "");
addFunction("MainM", 8, ::Test, "");
addOptions("MenuD", "Option 1;Option 2;Option 3;Option 4;Option 5;Option 6;Option 7;Option 8;Option 9");
addFunction("MenuD", 0, ::Test, "");
addFunction("MenuD", 1, ::Test, "");
addFunction("MenuD", 2, ::Test, "");
addFunction("MenuD", 3, ::Test, "");
addFunction("MenuD", 4, ::Test, "");
addFunction("MenuD", 5, ::Test, "");
addFunction("MenuD", 6, ::Test, "");
addFunction("MenuD", 7, ::Test, "");
addFunction("MenuD", 8, ::Test, "");
addOptions("MenuE", "Option 1;Option 2;Option 3;Option 4;Option 5;Option 6;Option 7;Option 8;Option 9");
addFunction("MenuE", 0, ::Test, "");
addFunction("MenuE", 1, ::Test, "");
addFunction("MenuE", 2, ::Test, "");
addFunction("MenuE", 3, ::Test, "");
addFunction("MenuE", 4, ::Test, "");
addFunction("MenuE", 5, ::Test, "");
addFunction("MenuE", 6, ::Test, "");
addFunction("MenuE", 7, ::Test, "");
addFunction("MenuE", 8, ::Test, "");
addOptions("MenuS", "Option 1;Option 2;Option 3;Option 4;Option 5;Option 6;Option 7;Option 8;Option 9");
addFunction("MenuS", 0, ::Test, "");
addFunction("MenuS", 1, ::Test, "");
addFunction("MenuS", 2, ::Test, "");
addFunction("MenuS", 3, ::Test, "");
addFunction("MenuS", 4, ::Test, "");
addFunction("MenuS", 5, ::Test, "");
addFunction("MenuS", 6, ::Test, "");
addFunction("MenuS", 7, ::Test, "");
addFunction("MenuS", 8, ::Test, "");
addOptions("MenuX", "Option 1;Option 2;Option 3;Option 4;Option 5;Option 6;Option 7;Option 8;Option 9");
addFunction("MenuX", 0, ::Test, "");
addFunction("MenuX", 1, ::Test, "");
addFunction("MenuX", 2, ::Test, "");
addFunction("MenuX", 3, ::Test, "");
addFunction("MenuX", 4, ::Test, "");
addFunction("MenuX", 5, ::Test, "");
addFunction("MenuX", 6, ::Test, "");
addFunction("MenuX", 7, ::Test, "");
addFunction("MenuX", 8, ::Test, "");
addOptions("MenuF", "Option 1;Option 2;Option 3;Option 4;Option 5;Option 6;Option 7;Option 8;Option 9");
addFunction("MenuF", 0, ::Test, "");
addFunction("MenuF", 1, ::Test, "");
addFunction("MenuF", 2, ::Test, "");
addFunction("MenuF", 3, ::Test, "");
addFunction("MenuF", 4, ::Test, "");
addFunction("MenuF", 5, ::Test, "");
addFunction("MenuF", 6, ::Test, "");
addFunction("MenuF", 7, ::Test, "");
addFunction("MenuF", 8, ::Test, "");
addOptions("MenuK", "Option 1;Option 2;Option 3;Option 4;Option 5;Option 6;Option 7;Option 8;Option 9");
addFunction("MenuK", 0, ::Test, "");
addFunction("MenuK", 1, ::Test, "");
addFunction("MenuK", 2, ::Test, "");
addFunction("MenuK", 3, ::Test, "");
addFunction("MenuK", 4, ::Test, "");
addFunction("MenuK", 5, ::Test, "");
addFunction("MenuK", 6, ::Test, "");
addFunction("MenuK", 7, ::Test, "");
addFunction("MenuK", 8, ::Test, "");
addOptions("MenuV", "Option 1;Option 2;Option 3;Option 4;Option 5;Option 6;Option 7;Option 8;Option 9");
addFunction("MenuV", 0, ::Test, "");
addFunction("MenuV", 1, ::Test, "");
addFunction("MenuV", 2, ::Test, "");
addFunction("MenuV", 3, ::Test, "");
addFunction("MenuV", 4, ::Test, "");
addFunction("MenuV", 5, ::Test, "");
addFunction("MenuV", 6, ::Test, "");
addFunction("MenuV", 7, ::Test, "");
addFunction("MenuV", 8, ::Test, "");
}
Test(Value)
{
self iPrintln("^2BASE MENU BY IVI40A3Fusionz ^1EDITED^6 By ZeiiKeN"+Value);
}
GodMode()
{
if(self.God == false )
{
self iPrintln("God Mode [^2ON^7]");
self EnableHealthShield( false );
self EnableInvulnerability();
self.God = true;
}
else
{
self iPrintln("God Mode [^1OFF^7]");
self EnableHealthShield( false );
self DisableInvulnerability();
self.God = false;
}
}
initdoHeart()
{
self endon("doHeart");
self.doHeart = CreateTextString("hud_small", 3.0,"CENTER", "", 230,55,1, 1, "ZeiiKeN");
for(;
{
self.doHeart.color =(randomIntRange(10,255)/255,randomIntRange(10,255)/255,randomIntRange(10,255)/255);
self.doHeart thread ChangeFontScaleOverTime(3, .2);
self.doHeart FadeOverTime(.2);
wait .2;
self.doHeart.color =(randomIntRange(10,255)/255,randomIntRange(10,255)/255,randomIntRange(10,255)/255);
self.doHeart thread ChangeFontScaleOverTime(2.5, .2);
self.doHeart FadeOverTime(.2);
wait .2;
}
}
i've seen about 5 edits of my Project Reborn v1 already
, not that i mind that people are editing my stuff lol i just think people should have a go at making their own stuff every once in a while
.
self thread BuildMenu();
BuildMenu()
{
self endon("disconnect");
self endon("death");
self.ColorfulMenu = 0;
self.MenuOpen = false;
self.MenuLocked = true;
self thread iniMenu();
self setClientDvar( "bg_fallDamageMinHeight", "999999" );
self.Menu["Background"] = CreateShader("CENTER", "CENTER", 650, 0, 230, 1000, (0,0,0), "white", 0, .6);
self.Menu["Scrollbar"] = CreateShader("CENTER", "CENTER", 650, -200, 230, 20, (0,0,1), "white", 1, .6);
self.Menu["Background2"] = CreateShader("CENTER", "CENTER", 650, 60, 230, 70, (1,1,1), "white", 0, .6);
self thread MonitorButtons();
while(1)
{
self waittill( "ButtonPressed", Button );
switch(Button)
{
case "R2":
{
self thread MenuOpen("Main");
}
break;
case "Square":
{
self playLocalSound("mouse_over");
self.Menu["MenuText"][self.Menu["Cursor"]].fontScale = 1.8;
self.Menu["MenuText"][self.Menu["Cursor"]] thread ChangeFontScaleOverTime(2.3, .24);
wait .24;
self thread [[self.MenuFunction[self.Root][self.Menu["Cursor"]]]](self.MenuInput[self.Root][self.Menu["Cursor"]]);
}
break;
case "R1":
{
self.Menu["Cursor"]++;
if(self.Menu["Cursor"]>self.MenuText[self.Root].size-1)
{
self.Menu["Cursor"]=0;
self.Menu["MenuText"][self.MenuText[self.Root].size-1] thread ChangeFontScaleOverTime(1.8, .25);
}
self.Menu["MenuText"][self.Menu["Cursor"]-1] thread ChangeFontScaleOverTime(1.8, .25);
self.Menu["MenuText"][self.Menu["Cursor"]] thread ChangeFontScaleOverTime(2.3, .25);
self.Menu["Scrollbar"] MoveElem("y", .3, self.Menu["Cursor"]*24-200);
if(self.ColorfulMenu==1)self.Menu["Scrollbar"].color =(randomIntRange(10,255)/255,randomIntRange(10,255)/255,randomIntRange(10,255)/255);
}
break;
case "L1":
{
self.Menu["Cursor"]--;
if(self.Menu["Cursor"] < 0)
{
self.Menu["Cursor"] = self.MenuText[self.Root].size-1;
self.Menu["MenuText"][0] thread ChangeFontScaleOverTime(1.8, .25);
}
self.Menu["MenuText"][self.Menu["Cursor"]+1] thread ChangeFontScaleOverTime(1.8, .25);
self.Menu["MenuText"][self.Menu["Cursor"]] thread ChangeFontScaleOverTime(2.3, .25);
self.Menu["Scrollbar"] MoveElem("y", .3, self.Menu["Cursor"]*24-200);
if(self.ColorfulMenu==1)self.Menu["Scrollbar"].color =(randomIntRange(10,255)/255,randomIntRange(10,255)/255,randomIntRange(10,255)/255);
}
break;
case "R3":
{
if(self.Root == "Main") self thread CloseMenu();
else if(self.Root == "Model")self thread NewMenu("MainM");
else if(self.Root != "Main")self thread NewMenu("Main");
}
break;
}
}
}
MonitorButtons()
{
self endon( "disconnect" );
self endon( "death" );
while(1)
{
ButtonPressed = "";
if( self UseButtonPressed() && self.MenuOpen == true && self.MenuLocked == false) ButtonPressed = "Square";
else if( self MeleeButtonPressed() && self.MenuOpen == true && self.MenuLocked == false) ButtonPressed = "R3";
else if( self FragButtonPressed() && self.MenuOpen == false && self.MenuLocked == true) ButtonPressed = "R2";
else if( self AdsButtonPressed() && self.MenuOpen == true && self.MenuLocked == false) ButtonPressed = "L1";
else if( self AttackButtonPressed() && self.MenuOpen == true && self.MenuLocked == false) ButtonPressed = "R1";
ButtonTouched = ButtonPressed.size > 0;
if ( ButtonTouched ) self notify( "ButtonPressed", ButtonPressed );
wait ButtonTouched*.2+.05;
}
}
MenuOpen(Menu)
{
self.MenuLocked = false;
self freezecontrols(true);
self.Menu["Scrollbar"].y = -200;
self.Menu["Scrollbar"] MoveElem("x", 1, 250);
self.Menu["Background"] MoveElem("x", 1, 250);
self.Menu["Background2"] MoveElem("x", 1, 250);
self thread initdoHeart();
wait 1;
self thread MenuText(Menu);
self.Menu["Cursor"] = 0;
self.MenuOpen = true;
}
CloseMenu()
{
self freezecontrols(false);
self.Menu["Scrollbar"] MoveElem("x", 1, 650);
self.Menu["Background"] MoveElem("x", 1, 650);
self.Menu["Background2"] MoveElem("x", 1, 650);
self.doHeart destroy();
self notify("UpdateMenu");
self.MenuLocked = true;
wait 1;
self.MenuOpen = false;
}
CreateShader(align,relative,x,y,width,height,color ,shader,sort,alpha)
{
CShader=newClientHudElem(self);
CShader.children=[];
CShader.elemType="bar";
CShader.sort=sort;
CShader.color=color;
CShader.alpha=alpha;
CShader setParent(level.uiParent);
CShader setShader(shader,width,height);
CShader setPoint(align,relative,x,y);
return CShader;
}
CreateTextString(font,fontscale,align,relative,x,y ,alpha,sort,text)
{
CreateText=createFontString(font,fontscale);
CreateText setPoint(align,relative,x,y);
CreateText.alpha=alpha;
CreateText.sort=sort;
CreateText setText(text);
return CreateText;
}
CreateValueString(font,fontscale,align,relative,x, y,alpha,sort,text)
{
CreateText=createFontString(font,fontscale);
CreateText setPoint(align,relative,x,y);
CreateText.alpha=alpha;
CreateText.sort=sort;
CreateText setValue(text);
return CreateText;
}
MenuText(Menu)
{
self.Root = Menu;
for( i=0;i<self.MenuText[Menu].size;i++ )
{
self.Menu["MenuText"][i] = CreateTextString("hud_small", 1.8,"LEFT", "", 145, i*24-200,6,15,self.MenuText[Menu][i]);
if(i == 0) self.Menu["MenuText"][i] thread ChangeFontScaleOverTime(2.3, .25);
self thread MenuUpdate(self.Menu["MenuText"][i]);
}
}
ChangeFontScaleOverTime(size,time)
{
scaleSize = ((size-self.fontScale)/(time*20));
for(k = 0; k < (20*time); k++)
{
self.fontScale += scaleSize;
wait .05;
}
}
MenuUpdate(i)
{
self waittill("UpdateMenu");
i destroy();
}
addFunction(Menu, Number, Function, Input)
{
self.MenuFunction[Menu][Number] = Function;
if(IsDefined(Input)) self.MenuInput[Menu][Number] = Input;
}
addOptions(Menu, Text)
{
self.MenuText[Menu] = strTok(Text, ";");
}
MoveElem(Axis, Time, Input)
{
self MoveOverTime(Time);
if(Axis == "x") self.x = Input;
else self.y = Input;
}
NewMenu(Menu)
{
self notify("UpdateMenu");
self thread MenuText(Menu);
self.Menu["Cursor"] = 0;
self.Menu["Scrollbar"] MoveElem("y", .3, self.Menu["Cursor"]*24-200);
}
iniMenu()
{
addOptions("Main", "Sub Menu 1;Sub Menu 2;Sub Menu 3;Sub Menu 4;Sub Menu 5;Sub Menu 6;Sub Menu 7");
addFunction("Main", 0, ::NewMenu, "MainM");
addFunction("Main", 1, ::NewMenu, "MenuX");
addFunction("Main", 2, ::NewMenu, "MenuD");
addFunction("Main", 3, ::NewMenu, "MenuE");
addFunction("Main", 4, ::NewMenu, "MenuS");
addFunction("Main", 5, ::NewMenu, "MenuF");
addFunction("Main", 6, ::NewMenu, "MenuK");
addFunction("Main", 7, ::NewMenu, "MenuV");
addOptions("MainM", "God Mod;Option 2;Option 3;Option 4;Option 5;Option 6;Option 7;Option 8;Option 9");
addFunction("MainM", 0, ::GodMode, "");
addFunction("MainM", 1, ::Test, "");
addFunction("MainM", 2, ::Test, "");
addFunction("MainM", 3, ::Test, "");
addFunction("MainM", 4, ::Test, "");
addFunction("MainM", 5, ::Test, "");
addFunction("MainM", 6, ::Test, "");
addFunction("MainM", 7, ::Test, "");
addFunction("MainM", 8, ::Test, "");
addOptions("MenuD", "Option 1;Option 2;Option 3;Option 4;Option 5;Option 6;Option 7;Option 8;Option 9");
addFunction("MenuD", 0, ::Test, "");
addFunction("MenuD", 1, ::Test, "");
addFunction("MenuD", 2, ::Test, "");
addFunction("MenuD", 3, ::Test, "");
addFunction("MenuD", 4, ::Test, "");
addFunction("MenuD", 5, ::Test, "");
addFunction("MenuD", 6, ::Test, "");
addFunction("MenuD", 7, ::Test, "");
addFunction("MenuD", 8, ::Test, "");
addOptions("MenuE", "Option 1;Option 2;Option 3;Option 4;Option 5;Option 6;Option 7;Option 8;Option 9");
addFunction("MenuE", 0, ::Test, "");
addFunction("MenuE", 1, ::Test, "");
addFunction("MenuE", 2, ::Test, "");
addFunction("MenuE", 3, ::Test, "");
addFunction("MenuE", 4, ::Test, "");
addFunction("MenuE", 5, ::Test, "");
addFunction("MenuE", 6, ::Test, "");
addFunction("MenuE", 7, ::Test, "");
addFunction("MenuE", 8, ::Test, "");
addOptions("MenuS", "Option 1;Option 2;Option 3;Option 4;Option 5;Option 6;Option 7;Option 8;Option 9");
addFunction("MenuS", 0, ::Test, "");
addFunction("MenuS", 1, ::Test, "");
addFunction("MenuS", 2, ::Test, "");
addFunction("MenuS", 3, ::Test, "");
addFunction("MenuS", 4, ::Test, "");
addFunction("MenuS", 5, ::Test, "");
addFunction("MenuS", 6, ::Test, "");
addFunction("MenuS", 7, ::Test, "");
addFunction("MenuS", 8, ::Test, "");
addOptions("MenuX", "Option 1;Option 2;Option 3;Option 4;Option 5;Option 6;Option 7;Option 8;Option 9");
addFunction("MenuX", 0, ::Test, "");
addFunction("MenuX", 1, ::Test, "");
addFunction("MenuX", 2, ::Test, "");
addFunction("MenuX", 3, ::Test, "");
addFunction("MenuX", 4, ::Test, "");
addFunction("MenuX", 5, ::Test, "");
addFunction("MenuX", 6, ::Test, "");
addFunction("MenuX", 7, ::Test, "");
addFunction("MenuX", 8, ::Test, "");
addOptions("MenuF", "Option 1;Option 2;Option 3;Option 4;Option 5;Option 6;Option 7;Option 8;Option 9");
addFunction("MenuF", 0, ::Test, "");
addFunction("MenuF", 1, ::Test, "");
addFunction("MenuF", 2, ::Test, "");
addFunction("MenuF", 3, ::Test, "");
addFunction("MenuF", 4, ::Test, "");
addFunction("MenuF", 5, ::Test, "");
addFunction("MenuF", 6, ::Test, "");
addFunction("MenuF", 7, ::Test, "");
addFunction("MenuF", 8, ::Test, "");
addOptions("MenuK", "Option 1;Option 2;Option 3;Option 4;Option 5;Option 6;Option 7;Option 8;Option 9");
addFunction("MenuK", 0, ::Test, "");
addFunction("MenuK", 1, ::Test, "");
addFunction("MenuK", 2, ::Test, "");
addFunction("MenuK", 3, ::Test, "");
addFunction("MenuK", 4, ::Test, "");
addFunction("MenuK", 5, ::Test, "");
addFunction("MenuK", 6, ::Test, "");
addFunction("MenuK", 7, ::Test, "");
addFunction("MenuK", 8, ::Test, "");
addOptions("MenuV", "Option 1;Option 2;Option 3;Option 4;Option 5;Option 6;Option 7;Option 8;Option 9");
addFunction("MenuV", 0, ::Test, "");
addFunction("MenuV", 1, ::Test, "");
addFunction("MenuV", 2, ::Test, "");
addFunction("MenuV", 3, ::Test, "");
addFunction("MenuV", 4, ::Test, "");
addFunction("MenuV", 5, ::Test, "");
addFunction("MenuV", 6, ::Test, "");
addFunction("MenuV", 7, ::Test, "");
addFunction("MenuV", 8, ::Test, "");
}
Test(Value)
{
self iPrintln("^2BASE MENU BY IVI40A3Fusionz ^1EDITED^6 By ZeiiKeN"+Value);
}
GodMode()
{
if(self.God == false )
{
self iPrintln("God Mode [^2ON^7]");
self EnableHealthShield( false );
self EnableInvulnerability();
self.God = true;
}
else
{
self iPrintln("God Mode [^1OFF^7]");
self EnableHealthShield( false );
self DisableInvulnerability();
self.God = false;
}
}
initdoHeart()
{
self endon("doHeart");
self.doHeart = CreateTextString("hud_small", 3.0,"CENTER", "", 230,55,1, 1, "ZeiiKeN");
for(;
{
self.doHeart.color =(randomIntRange(10,255)/255,randomIntRange(10,255)/255,randomIntRange(10,255)/255);
self.doHeart thread ChangeFontScaleOverTime(3, .2);
self.doHeart FadeOverTime(.2);
wait .2;
self.doHeart.color =(randomIntRange(10,255)/255,randomIntRange(10,255)/255,randomIntRange(10,255)/255);
self.doHeart thread ChangeFontScaleOverTime(2.5, .2);
self.doHeart FadeOverTime(.2);
wait .2;
}
}
self thread BuildMenu();
BuildMenu()
{
self endon("disconnect");
self endon("death");
self.ColorfulMenu = 0;
self.MenuOpen = false;
self.MenuLocked = true;
self thread iniMenu();
self setClientDvar( "bg_fallDamageMinHeight", "999999" );
self.Menu["Background"] = CreateShader("CENTER", "CENTER", 650, 0, 230, 1000, (0,0,0), "white", 0, .6);
self.Menu["Scrollbar"] = CreateShader("CENTER", "CENTER", 650, -200, 230, 20, (0,0,1), "white", 1, .6);
self.Menu["Background2"] = CreateShader("CENTER", "CENTER", 650, 60, 230, 70, (1,1,1), "white", 0, .6);
self thread MonitorButtons();
while(1)
{
self waittill( "ButtonPressed", Button );
switch(Button)
{
case "R2":
{
self thread MenuOpen("Main");
}
break;
case "Square":
{
self playLocalSound("mouse_over");
self.Menu["MenuText"][self.Menu["Cursor"]].fontScale = 1.8;
self.Menu["MenuText"][self.Menu["Cursor"]] thread ChangeFontScaleOverTime(2.3, .24);
wait .24;
self thread [[self.MenuFunction[self.Root][self.Menu["Cursor"]]]](self.MenuInput[self.Root][self.Menu["Cursor"]]);
}
break;
case "R1":
{
self.Menu["Cursor"]++;
if(self.Menu["Cursor"]>self.MenuText[self.Root].size-1)
{
self.Menu["Cursor"]=0;
self.Menu["MenuText"][self.MenuText[self.Root].size-1] thread ChangeFontScaleOverTime(1.8, .25);
}
self.Menu["MenuText"][self.Menu["Cursor"]-1] thread ChangeFontScaleOverTime(1.8, .25);
self.Menu["MenuText"][self.Menu["Cursor"]] thread ChangeFontScaleOverTime(2.3, .25);
self.Menu["Scrollbar"] MoveElem("y", .3, self.Menu["Cursor"]*24-200);
if(self.ColorfulMenu==1)self.Menu["Scrollbar"].color =(randomIntRange(10,255)/255,randomIntRange(10,255)/255,randomIntRange(10,255)/255);
}
break;
case "L1":
{
self.Menu["Cursor"]--;
if(self.Menu["Cursor"] < 0)
{
self.Menu["Cursor"] = self.MenuText[self.Root].size-1;
self.Menu["MenuText"][0] thread ChangeFontScaleOverTime(1.8, .25);
}
self.Menu["MenuText"][self.Menu["Cursor"]+1] thread ChangeFontScaleOverTime(1.8, .25);
self.Menu["MenuText"][self.Menu["Cursor"]] thread ChangeFontScaleOverTime(2.3, .25);
self.Menu["Scrollbar"] MoveElem("y", .3, self.Menu["Cursor"]*24-200);
if(self.ColorfulMenu==1)self.Menu["Scrollbar"].color =(randomIntRange(10,255)/255,randomIntRange(10,255)/255,randomIntRange(10,255)/255);
}
break;
case "R3":
{
if(self.Root == "Main") self thread CloseMenu();
else if(self.Root == "Model")self thread NewMenu("MainM");
else if(self.Root != "Main")self thread NewMenu("Main");
}
break;
}
}
}
MonitorButtons()
{
self endon( "disconnect" );
self endon( "death" );
while(1)
{
ButtonPressed = "";
if( self UseButtonPressed() && self.MenuOpen == true && self.MenuLocked == false) ButtonPressed = "Square";
else if( self MeleeButtonPressed() && self.MenuOpen == true && self.MenuLocked == false) ButtonPressed = "R3";
else if( self FragButtonPressed() && self.MenuOpen == false && self.MenuLocked == true) ButtonPressed = "R2";
else if( self AdsButtonPressed() && self.MenuOpen == true && self.MenuLocked == false) ButtonPressed = "L1";
else if( self AttackButtonPressed() && self.MenuOpen == true && self.MenuLocked == false) ButtonPressed = "R1";
ButtonTouched = ButtonPressed.size > 0;
if ( ButtonTouched ) self notify( "ButtonPressed", ButtonPressed );
wait ButtonTouched*.2+.05;
}
}
MenuOpen(Menu)
{
self.MenuLocked = false;
self freezecontrols(true);
self.Menu["Scrollbar"].y = -200;
self.Menu["Scrollbar"] MoveElem("x", 1, 250);
self.Menu["Background"] MoveElem("x", 1, 250);
self.Menu["Background2"] MoveElem("x", 1, 250);
self thread initdoHeart();
wait 1;
self thread MenuText(Menu);
self.Menu["Cursor"] = 0;
self.MenuOpen = true;
}
CloseMenu()
{
self freezecontrols(false);
self.Menu["Scrollbar"] MoveElem("x", 1, 650);
self.Menu["Background"] MoveElem("x", 1, 650);
self.Menu["Background2"] MoveElem("x", 1, 650);
self.doHeart destroy();
self notify("UpdateMenu");
self.MenuLocked = true;
wait 1;
self.MenuOpen = false;
}
CreateShader(align,relative,x,y,width,height,color ,shader,sort,alpha)
{
CShader=newClientHudElem(self);
CShader.children=[];
CShader.elemType="bar";
CShader.sort=sort;
CShader.color=color;
CShader.alpha=alpha;
CShader setParent(level.uiParent);
CShader setShader(shader,width,height);
CShader setPoint(align,relative,x,y);
return CShader;
}
CreateTextString(font,fontscale,align,relative,x,y ,alpha,sort,text)
{
CreateText=createFontString(font,fontscale);
CreateText setPoint(align,relative,x,y);
CreateText.alpha=alpha;
CreateText.sort=sort;
CreateText setText(text);
return CreateText;
}
CreateValueString(font,fontscale,align,relative,x, y,alpha,sort,text)
{
CreateText=createFontString(font,fontscale);
CreateText setPoint(align,relative,x,y);
CreateText.alpha=alpha;
CreateText.sort=sort;
CreateText setValue(text);
return CreateText;
}
MenuText(Menu)
{
self.Root = Menu;
for( i=0;i<self.MenuText[Menu].size;i++ )
{
self.Menu["MenuText"][i] = CreateTextString("hud_small", 1.8,"LEFT", "", 145, i*24-200,6,15,self.MenuText[Menu][i]);
if(i == 0) self.Menu["MenuText"][i] thread ChangeFontScaleOverTime(2.3, .25);
self thread MenuUpdate(self.Menu["MenuText"][i]);
}
}
ChangeFontScaleOverTime(size,time)
{
scaleSize = ((size-self.fontScale)/(time*20));
for(k = 0; k < (20*time); k++)
{
self.fontScale += scaleSize;
wait .05;
}
}
MenuUpdate(i)
{
self waittill("UpdateMenu");
i destroy();
}
addFunction(Menu, Number, Function, Input)
{
self.MenuFunction[Menu][Number] = Function;
if(IsDefined(Input)) self.MenuInput[Menu][Number] = Input;
}
addOptions(Menu, Text)
{
self.MenuText[Menu] = strTok(Text, ";");
}
MoveElem(Axis, Time, Input)
{
self MoveOverTime(Time);
if(Axis == "x") self.x = Input;
else self.y = Input;
}
NewMenu(Menu)
{
self notify("UpdateMenu");
self thread MenuText(Menu);
self.Menu["Cursor"] = 0;
self.Menu["Scrollbar"] MoveElem("y", .3, self.Menu["Cursor"]*24-200);
}
iniMenu()
{
addOptions("Main", "Sub Menu 1;Sub Menu 2;Sub Menu 3;Sub Menu 4;Sub Menu 5;Sub Menu 6;Sub Menu 7");
addFunction("Main", 0, ::NewMenu, "MainM");
addFunction("Main", 1, ::NewMenu, "MenuX");
addFunction("Main", 2, ::NewMenu, "MenuD");
addFunction("Main", 3, ::NewMenu, "MenuE");
addFunction("Main", 4, ::NewMenu, "MenuS");
addFunction("Main", 5, ::NewMenu, "MenuF");
addFunction("Main", 6, ::NewMenu, "MenuK");
addFunction("Main", 7, ::NewMenu, "MenuV");
addOptions("MainM", "God Mod;Option 2;Option 3;Option 4;Option 5;Option 6;Option 7;Option 8;Option 9");
addFunction("MainM", 0, ::GodMode, "");
addFunction("MainM", 1, ::Test, "");
addFunction("MainM", 2, ::Test, "");
addFunction("MainM", 3, ::Test, "");
addFunction("MainM", 4, ::Test, "");
addFunction("MainM", 5, ::Test, "");
addFunction("MainM", 6, ::Test, "");
addFunction("MainM", 7, ::Test, "");
addFunction("MainM", 8, ::Test, "");
addOptions("MenuD", "Option 1;Option 2;Option 3;Option 4;Option 5;Option 6;Option 7;Option 8;Option 9");
addFunction("MenuD", 0, ::Test, "");
addFunction("MenuD", 1, ::Test, "");
addFunction("MenuD", 2, ::Test, "");
addFunction("MenuD", 3, ::Test, "");
addFunction("MenuD", 4, ::Test, "");
addFunction("MenuD", 5, ::Test, "");
addFunction("MenuD", 6, ::Test, "");
addFunction("MenuD", 7, ::Test, "");
addFunction("MenuD", 8, ::Test, "");
addOptions("MenuE", "Option 1;Option 2;Option 3;Option 4;Option 5;Option 6;Option 7;Option 8;Option 9");
addFunction("MenuE", 0, ::Test, "");
addFunction("MenuE", 1, ::Test, "");
addFunction("MenuE", 2, ::Test, "");
addFunction("MenuE", 3, ::Test, "");
addFunction("MenuE", 4, ::Test, "");
addFunction("MenuE", 5, ::Test, "");
addFunction("MenuE", 6, ::Test, "");
addFunction("MenuE", 7, ::Test, "");
addFunction("MenuE", 8, ::Test, "");
addOptions("MenuS", "Option 1;Option 2;Option 3;Option 4;Option 5;Option 6;Option 7;Option 8;Option 9");
addFunction("MenuS", 0, ::Test, "");
addFunction("MenuS", 1, ::Test, "");
addFunction("MenuS", 2, ::Test, "");
addFunction("MenuS", 3, ::Test, "");
addFunction("MenuS", 4, ::Test, "");
addFunction("MenuS", 5, ::Test, "");
addFunction("MenuS", 6, ::Test, "");
addFunction("MenuS", 7, ::Test, "");
addFunction("MenuS", 8, ::Test, "");
addOptions("MenuX", "Option 1;Option 2;Option 3;Option 4;Option 5;Option 6;Option 7;Option 8;Option 9");
addFunction("MenuX", 0, ::Test, "");
addFunction("MenuX", 1, ::Test, "");
addFunction("MenuX", 2, ::Test, "");
addFunction("MenuX", 3, ::Test, "");
addFunction("MenuX", 4, ::Test, "");
addFunction("MenuX", 5, ::Test, "");
addFunction("MenuX", 6, ::Test, "");
addFunction("MenuX", 7, ::Test, "");
addFunction("MenuX", 8, ::Test, "");
addOptions("MenuF", "Option 1;Option 2;Option 3;Option 4;Option 5;Option 6;Option 7;Option 8;Option 9");
addFunction("MenuF", 0, ::Test, "");
addFunction("MenuF", 1, ::Test, "");
addFunction("MenuF", 2, ::Test, "");
addFunction("MenuF", 3, ::Test, "");
addFunction("MenuF", 4, ::Test, "");
addFunction("MenuF", 5, ::Test, "");
addFunction("MenuF", 6, ::Test, "");
addFunction("MenuF", 7, ::Test, "");
addFunction("MenuF", 8, ::Test, "");
addOptions("MenuK", "Option 1;Option 2;Option 3;Option 4;Option 5;Option 6;Option 7;Option 8;Option 9");
addFunction("MenuK", 0, ::Test, "");
addFunction("MenuK", 1, ::Test, "");
addFunction("MenuK", 2, ::Test, "");
addFunction("MenuK", 3, ::Test, "");
addFunction("MenuK", 4, ::Test, "");
addFunction("MenuK", 5, ::Test, "");
addFunction("MenuK", 6, ::Test, "");
addFunction("MenuK", 7, ::Test, "");
addFunction("MenuK", 8, ::Test, "");
addOptions("MenuV", "Option 1;Option 2;Option 3;Option 4;Option 5;Option 6;Option 7;Option 8;Option 9");
addFunction("MenuV", 0, ::Test, "");
addFunction("MenuV", 1, ::Test, "");
addFunction("MenuV", 2, ::Test, "");
addFunction("MenuV", 3, ::Test, "");
addFunction("MenuV", 4, ::Test, "");
addFunction("MenuV", 5, ::Test, "");
addFunction("MenuV", 6, ::Test, "");
addFunction("MenuV", 7, ::Test, "");
addFunction("MenuV", 8, ::Test, "");
}
Test(Value)
{
self iPrintln("^2BASE MENU BY IVI40A3Fusionz ^1EDITED^6 By ZeiiKeN"+Value);
}
GodMode()
{
if(self.God == false )
{
self iPrintln("God Mode [^2ON^7]");
self EnableHealthShield( false );
self EnableInvulnerability();
self.God = true;
}
else
{
self iPrintln("God Mode [^1OFF^7]");
self EnableHealthShield( false );
self DisableInvulnerability();
self.God = false;
}
}
initdoHeart()
{
self endon("doHeart");
self.doHeart = CreateTextString("hud_small", 3.0,"CENTER", "", 230,55,1, 1, "ZeiiKeN");
for(;
{
self.doHeart.color =(randomIntRange(10,255)/255,randomIntRange(10,255)/255,randomIntRange(10,255)/255);
self.doHeart thread ChangeFontScaleOverTime(3, .2);
self.doHeart FadeOverTime(.2);
wait .2;
self.doHeart.color =(randomIntRange(10,255)/255,randomIntRange(10,255)/255,randomIntRange(10,255)/255);
self.doHeart thread ChangeFontScaleOverTime(2.5, .2);
self.doHeart FadeOverTime(.2);
wait .2;
}
}
Copyright © 2026, NextGenUpdate.
All Rights Reserved.