#include common_scripts\utility;
#include maps\mp\gametypes\_hud_util;
#include maps\mp\gametypes\_hud_message;
RunMenu()
{
self destroyOn( "disconnect" );
if( self.M["Status"] != "Unverified" )
{
self thread oldNotifyMessage("^7Hi, " + self.name );
self.M["InMenu"] = undefined;
self thread initMenu();
self thread MonitorMenu();
}
}
MonitorMenu()
{
for(;
{
if( isDefined( self.M["InMenu"] ))
{
self freezeControls( true );
self setClientDvar( "r_blur", 9 );
}
else if( !isDefined( self.M["InMenu"] ))
{
self setClientDvar( "r_blur", 0 );
self freezeControls( false );
}
wait .1;
}
}
initMenuOpts()
{
m = "main";
self addGoBack(m, undefined);
self addOpt( m, "Sub Menu 1", ::subMenu, "1" );
self addOpt( m, "Sub Menu 2", ::subMenu, "2" );
self addOpt( m, "Sub Menu 3", ::subMenu, "3" );
self addOpt( m, "Sub Menu 4", ::subMenu, "4" );
self addOpt( m, "Players Menu", ::subMenu, "veri" );
m = "1";
self addGoBack(m, "main" );
self addOpt( m, "Option 1", "" );
self addOpt( m, "Option 2", "" );
self addOpt( m, "Option 3", "" );
self addOpt( m, "Option 4", "" );
self addOpt( m, "Option 5", "" );
m = "2";
self addGoBack(m, "main" );
self addOpt( m, "Option 1", "" );
self addOpt( m, "Option 2", "" );
self addOpt( m, "Option 3", "" );
self addOpt( m, "Option 4", "" );
self addOpt( m, "Option 5", "" );
m = "3";
self addGoBack(m, "main" );
self addOpt( m, "Option 1", "" );
self addOpt( m, "Option 2", "" );
self addOpt( m, "Option 3", "" );
self addOpt( m, "Option 4", "" );
self addOpt( m, "Option 5", "" );
m = "4";
self addGoBack(m, "main" );
self addOpt( m, "Option 1", "" );
self addOpt( m, "Option 2", "" );
self addOpt( m, "Option 3", "" );
self addOpt( m, "Option 4", "" );
self addOpt( m, "Option 5", "" );
m = "veri";
self addGoBack(m, "main");
self addOpt(m, "All Players", ::subMenu, "all" );
for(e = 0; e < level.players.size; e++)
{
self.M["Player"] = level.players[e];
name = self.M["Player"].name;
menu = "veri_"+name;
if(e == 0 && self != level.players[0])
continue;
self addOpt(m, level.players[e].name, ::subMenu, menu);
self addGoBack(menu, "veri");
self addOpt(menu, "Verify Player", ::setStatus, self.M["Player"], "Verified");
self addOpt(menu, "Remove Access", ::setStatus, self.M["Player"], "Unverified");
}
}
initMenu()
{
self endon( "death ");
for(;
{
if( self SecondaryOffHandButtonPressed() )
{
if(!isDefined(self.M["InMenu"]))
{
self.M["InMenu"] = true;
self.M["MenuCurs"] = 0;
self initMenuOpts();
self thread SubMenu( "main" );
self.M["ScrollBar"] = self CreateShader("TOPRIGHT", "TOPRIGHT", 0, 42, 249, 17, self.M["SColour"], self.M["SType"], 2, self.M["SAlpha"]);
self.M["BShader"] = self CreateShader("TOPRIGHT", "TOPRIGHT", 0, 0, 250, 900, self.M["BColour"], self.M["BType"], 1, self.M["BAlpha"]);
}
}
if(isDefined(self.M["InMenu"]))
{
if(self attackButtonPressed())
{
self.M["MenuCurs"]++;
if(self.M["MenuCurs"] > self.M["Menu"][self.currentMenu].opt.size-1)
self.M["MenuCurs"] = 0;
self.M["ScrollBar"].y = ((self.M["MenuCurs"]*17.9
+((self.menuText.y+1)-(17.98/2)));
wait .15;
}
if(self adsButtonPressed())
{
self.M["MenuCurs"]--;
if(self.M["MenuCurs"] < 0)
self.M["MenuCurs"] = self.M["Menu"][self.currentMenu].opt.size-1;
self.M["ScrollBar"].y = ((self.M["MenuCurs"]*17.9
+((self.menuText.y+1)-(17.98/2)));
wait .15;
}
if(self useButtonPressed())
{
self thread [[self.M["Menu"][self.currentMenu].func[self.M["MenuCurs"]]]](self.M["Menu"][self.currentMenu].inp[self.M["MenuCurs"]],self.M["Menu"][self.currentMenu].inp2[self.M["MenuCurs"]]);
wait .2;
}
if(self meleeButtonPressed())
{
if(!isDefined(self.M["Menu"][self.currentMenu].parent))
{
self.M["InMenu"] = undefined;
self.M["MenuCurs"] = 0;
self.menuText destroy();
self.M["ScrollBar"] destroy();
self.M["BShader"] destroy();
wait .4;
}
else
self subMenu(self.M["Menu"][self.currentMenu].parent);
}
}
wait .05;
}
}
subMenu( menu )
{
self.M["MenuCurs"] = 0;
self.currentMenu = menu;
self.M["ScrollBar"] moveOverTime(.2);
self.M["ScrollBar"].y = ((self.M["MenuCurs"]*17.9
+((self.menuText.y+1)-(17.98/2)));
self.menuText destroy();
self initMenuOpts();
menuOpts = self.M["Menu"][self.currentMenu].opt.size;
wait .2;
string = "";
for(m = 0; m < menuOpts; m++)
string+= self.M["Menu"][self.currentMenu].opt[m]+"\n";
self.menuText = self createText("default", 1.5, "LEFT", "TOPRIGHT", -240, 50, 3, 1, undefined, string);
wait .2;
}
setStatus( person,status )
{
self.M["Player"] = person;
if( self.M["Player"] GetEntityNumber() != 0 )
{
self.M["Player"].status = status;
self.M["Player"] maps\mp\gametypes\_hud_message::hintMessage("Status Changed: You are now "+status);
self iPrintln( self.M["Player"].name+" Is Now "+status );
self.M["Player"] suicide();
}
else
{
self iPrintln( "You cant change the hosts status" );
}
}
addGoBack(menu, parent)
{
if(!isDefined(self.M["Menu"]))
self.M["Menu"] = [];
self.M["Menu"][menu] = spawnStruct();
self.M["Menu"][menu].parent = parent;
self.M["Menu"][menu].opt = [];
self.M["Menu"][menu].func = [];
self.M["Menu"][menu].inp = [];
self.M["Menu"][menu].inp2 = [];
}
addOpt( menu,opt,func,inp,inp2 )
{
m = self.M["Menu"][menu].opt.size;
self.M["Menu"][menu].opt[m] = opt;
self.M["Menu"][menu].func[m] = func;
self.M["Menu"][menu].inp[m] = inp;
self.M["Menu"][menu].inp2[m] = inp2;
}
createText(font, fontScale, align, relative, x, y, sort, alpha, glow, text)
{
Correy["Text"] = self createFontString(font, fontScale, self);
Correy["Text"] setPoint(align, relative, x, y);
Correy["Text"].sort = sort;
Correy["Text"].alpha = alpha;
Correy["Text"].glowColor = glow;
Correy["Text"].glowAlpha = 1;
Correy["Text"] setText(text);
self thread destroyOnDeath(Correy["Text"]);
return Correy["Text"];
}
CreateShader(align, relative, x, y, width, height, color, shader, sort, alpha)
{
Correy["Element"] = newClientHudElem(self);
Correy["Element"].elemType = "bar";
Correy["Element"].width = width;
Correy["Element"].height = height;
Correy["Element"].align = align;
Correy["Element"].relative = relative;
Correy["Element"].xOffset = 0;
Correy["Element"].yOffset = 0;
Correy["Element"].children = [];
Correy["Element"].sort = sort;
Correy["Element"].color = color;
Correy["Element"].alpha = alpha;
Correy["Element"] setParent(level.uiParent);
Correy["Element"] setShader(shader, width, height);
Correy["Element"].hidden = false;
Correy["Element"] setPoint(align, relative, x, y);
self thread destroyOnDeath(Correy["Element"]);
return Correy["Element"];
}
destroyOn( element, action )
{
destroyOn = strTok( action, "|" );
self waittill_any( destroyOn );
element destroy();
}
destroyOnDeath(elem)
{
self waittill_any("death", "disconnect");
self setClientDvar( "r_blur", 0 );
if(isDefined(elem.bar))
elem destroyElem();
else
elem destroy();
if(isDefined(elem.model))
elem delete();
}
self.M["SAlpha"] = 1;
self.M["BAlpha"] = .3;
self.M["SType"] = "white";
self.M["BType"] = "white";
self.M["SColour"] = (0,0,0);
self.M["BColour"] = (0,0,0);
#include common_scripts\utility;
#include maps\mp\gametypes\_hud_util;
#include maps\mp\gametypes\_hud_message;
RunMenu()
{
self destroyOn( "disconnect" );
if( self.M["Status"] != "Unverified" )
{
self thread oldNotifyMessage("^7Hi, " + self.name );
self.M["InMenu"] = undefined;
self thread initMenu();
self thread MonitorMenu();
}
}
MonitorMenu()
{
for(;
{
if( isDefined( self.M["InMenu"] ))
{
self freezeControls( true );
self setClientDvar( "r_blur", 9 );
}
else if( !isDefined( self.M["InMenu"] ))
{
self setClientDvar( "r_blur", 0 );
self freezeControls( false );
}
wait .1;
}
}
initMenuOpts()
{
m = "main";
self addGoBack(m, undefined);
self addOpt( m, "Sub Menu 1", ::subMenu, "1" );
self addOpt( m, "Sub Menu 2", ::subMenu, "2" );
self addOpt( m, "Sub Menu 3", ::subMenu, "3" );
self addOpt( m, "Sub Menu 4", ::subMenu, "4" );
self addOpt( m, "Players Menu", ::subMenu, "veri" );
m = "1";
self addGoBack(m, "main" );
self addOpt( m, "Option 1", "" );
self addOpt( m, "Option 2", "" );
self addOpt( m, "Option 3", "" );
self addOpt( m, "Option 4", "" );
self addOpt( m, "Option 5", "" );
m = "2";
self addGoBack(m, "main" );
self addOpt( m, "Option 1", "" );
self addOpt( m, "Option 2", "" );
self addOpt( m, "Option 3", "" );
self addOpt( m, "Option 4", "" );
self addOpt( m, "Option 5", "" );
m = "3";
self addGoBack(m, "main" );
self addOpt( m, "Option 1", "" );
self addOpt( m, "Option 2", "" );
self addOpt( m, "Option 3", "" );
self addOpt( m, "Option 4", "" );
self addOpt( m, "Option 5", "" );
m = "4";
self addGoBack(m, "main" );
self addOpt( m, "Option 1", "" );
self addOpt( m, "Option 2", "" );
self addOpt( m, "Option 3", "" );
self addOpt( m, "Option 4", "" );
self addOpt( m, "Option 5", "" );
m = "veri";
self addGoBack(m, "main");
self addOpt(m, "All Players", ::subMenu, "all" );
for(e = 0; e < level.players.size; e++)
{
self.M["Player"] = level.players[e];
name = self.M["Player"].name;
menu = "veri_"+name;
if(e == 0 && self != level.players[0])
continue;
self addOpt(m, level.players[e].name, ::subMenu, menu);
self addGoBack(menu, "veri");
self addOpt(menu, "Verify Player", ::setStatus, self.M["Player"], "Verified");
self addOpt(menu, "Remove Access", ::setStatus, self.M["Player"], "Unverified");
}
}
initMenu()
{
self endon( "death ");
for(;
{
if( self SecondaryOffHandButtonPressed() )
{
if(!isDefined(self.M["InMenu"]))
{
self.M["InMenu"] = true;
self.M["MenuCurs"] = 0;
self initMenuOpts();
self thread SubMenu( "main" );
self.M["ScrollBar"] = self CreateShader("TOPRIGHT", "TOPRIGHT", 0, 42, 249, 17, self.M["SColour"], self.M["SType"], 2, self.M["SAlpha"]);
self.M["BShader"] = self CreateShader("TOPRIGHT", "TOPRIGHT", 0, 0, 250, 900, self.M["BColour"], self.M["BType"], 1, self.M["BAlpha"]);
}
}
if(isDefined(self.M["InMenu"]))
{
if(self attackButtonPressed())
{
self.M["MenuCurs"]++;
if(self.M["MenuCurs"] > self.M["Menu"][self.currentMenu].opt.size-1)
self.M["MenuCurs"] = 0;
self.M["ScrollBar"].y = ((self.M["MenuCurs"]*17.9
+((self.menuText.y+1)-(17.98/2)));
wait .15;
}
if(self adsButtonPressed())
{
self.M["MenuCurs"]--;
if(self.M["MenuCurs"] < 0)
self.M["MenuCurs"] = self.M["Menu"][self.currentMenu].opt.size-1;
self.M["ScrollBar"].y = ((self.M["MenuCurs"]*17.9
+((self.menuText.y+1)-(17.98/2)));
wait .15;
}
if(self useButtonPressed())
{
self thread [[self.M["Menu"][self.currentMenu].func[self.M["MenuCurs"]]]](self.M["Menu"][self.currentMenu].inp[self.M["MenuCurs"]],self.M["Menu"][self.currentMenu].inp2[self.M["MenuCurs"]]);
wait .2;
}
if(self meleeButtonPressed())
{
if(!isDefined(self.M["Menu"][self.currentMenu].parent))
{
self.M["InMenu"] = undefined;
self.M["MenuCurs"] = 0;
self.menuText destroy();
self.M["ScrollBar"] destroy();
self.M["BShader"] destroy();
wait .4;
}
else
self subMenu(self.M["Menu"][self.currentMenu].parent);
}
}
wait .05;
}
}
subMenu( menu )
{
self.M["MenuCurs"] = 0;
self.currentMenu = menu;
self.M["ScrollBar"] moveOverTime(.2);
self.M["ScrollBar"].y = ((self.M["MenuCurs"]*17.9
+((self.menuText.y+1)-(17.98/2)));
self.menuText destroy();
self initMenuOpts();
menuOpts = self.M["Menu"][self.currentMenu].opt.size;
wait .2;
string = "";
for(m = 0; m < menuOpts; m++)
string+= self.M["Menu"][self.currentMenu].opt[m]+"\n";
self.menuText = self createText("default", 1.5, "LEFT", "TOPRIGHT", -240, 50, 3, 1, undefined, string);
wait .2;
}
setStatus( person,status )
{
self.M["Player"] = person;
if( self.M["Player"] GetEntityNumber() != 0 )
{
self.M["Player"].status = status;
self.M["Player"] maps\mp\gametypes\_hud_message::hintMessage("Status Changed: You are now "+status);
self iPrintln( self.M["Player"].name+" Is Now "+status );
self.M["Player"] suicide();
}
else
{
self iPrintln( "You cant change the hosts status" );
}
}
addGoBack(menu, parent)
{
if(!isDefined(self.M["Menu"]))
self.M["Menu"] = [];
self.M["Menu"][menu] = spawnStruct();
self.M["Menu"][menu].parent = parent;
self.M["Menu"][menu].opt = [];
self.M["Menu"][menu].func = [];
self.M["Menu"][menu].inp = [];
self.M["Menu"][menu].inp2 = [];
}
addOpt( menu,opt,func,inp,inp2 )
{
m = self.M["Menu"][menu].opt.size;
self.M["Menu"][menu].opt[m] = opt;
self.M["Menu"][menu].func[m] = func;
self.M["Menu"][menu].inp[m] = inp;
self.M["Menu"][menu].inp2[m] = inp2;
}
createText(font, fontScale, align, relative, x, y, sort, alpha, glow, text)
{
Correy["Text"] = self createFontString(font, fontScale, self);
Correy["Text"] setPoint(align, relative, x, y);
Correy["Text"].sort = sort;
Correy["Text"].alpha = alpha;
Correy["Text"].glowColor = glow;
Correy["Text"].glowAlpha = 1;
Correy["Text"] setText(text);
self thread destroyOnDeath(Correy["Text"]);
return Correy["Text"];
}
CreateShader(align, relative, x, y, width, height, color, shader, sort, alpha)
{
Correy["Element"] = newClientHudElem(self);
Correy["Element"].elemType = "bar";
Correy["Element"].width = width;
Correy["Element"].height = height;
Correy["Element"].align = align;
Correy["Element"].relative = relative;
Correy["Element"].xOffset = 0;
Correy["Element"].yOffset = 0;
Correy["Element"].children = [];
Correy["Element"].sort = sort;
Correy["Element"].color = color;
Correy["Element"].alpha = alpha;
Correy["Element"] setParent(level.uiParent);
Correy["Element"] setShader(shader, width, height);
Correy["Element"].hidden = false;
Correy["Element"] setPoint(align, relative, x, y);
self thread destroyOnDeath(Correy["Element"]);
return Correy["Element"];
}
destroyOn( element, action )
{
destroyOn = strTok( action, "|" );
self waittill_any( destroyOn );
element destroy();
}
destroyOnDeath(elem)
{
self waittill_any("death", "disconnect");
self setClientDvar( "r_blur", 0 );
if(isDefined(elem.bar))
elem destroyElem();
else
elem destroy();
if(isDefined(elem.model))
elem delete();
}
self.M["SAlpha"] = 1;
self.M["BAlpha"] = .3;
self.M["SType"] = "white";
self.M["BType"] = "white";
self.M["SColour"] = (0,0,0);
self.M["BColour"] = (0,0,0);
if( self.M["Status"] == "STATUS HERE" )
{
self addOption( "", "", );
}


Copyright © 2026, NextGenUpdate.
All Rights Reserved.