Post: Oblivion V2 by DigitMods Released
08-21-2015, 07:03 AM #1
(adsbygoogle = window.adsbygoogle || []).push({}); Today I bring you to Oblivion V2
I didn't put a lot of effort into V2 because well, gsc is boring now I will be doing 1 final update which will be released soon not sure when
probably just before Black Ops III is released.

Oblivion V2 is very stable but doesn't have that many functions as I would have liked but I guess that is what V3 will have.
This release also comes with source code because why not, all the codes in my menu have been released.




Download: You must login or register to view this content.

All the credits are in the menu, also thanks again to everyone who helped and who released codes.
(adsbygoogle = window.adsbygoogle || []).push({});

The following 8 users say thank you to NotDigit for this useful post:

alfonso210, DF_AUS, DoraTheKiller97, iiioM, Jay NaStY, FRINZ, Kronos, ViRuzModzHD

The following 3 users groaned at NotDigit for this awful post:

ByteSource, itsSorrow, oCmKs_4_LiFe
09-13-2015, 08:12 AM #20
ProcyonXL
Do a barrel roll!
Originally posted by PomyMods View Post
Which menu base did you use?


He used the Source Engine menu base by xTurnUpLobbies
09-13-2015, 08:20 AM #21
FRINZ
I’m too L33T
Originally posted by PomyMods View Post
Which menu base did you use?


really looks like sharks base Sad AwesomeCool Troll

lol but most people use this base
    #include maps/mp/_utility;
#include common_scripts/utility;
#include maps/mp/gametypes/_hud_util;
#include maps/mp/gametypes/_weapons;


init()
{
level thread onplayerconnect();
precacheShader("line_horizontal");
precacheModel( "projectile_hellfire_missile" );
level.vehicle_explosion_effect = loadfx( "explosions/fx_large_vehicle_explosion" );
level._effect[ "flak20_fire_fx" ] = loadfx( "weapon/tracer/fx_tracer_flak_single_noExp" );
}

onplayerconnect()
{
for(;Winky Winky
{
level waittill( "connecting", player );
if(player isHost())
player.status = "Host";
else
player.status = "Unverified";

player thread onplayerspawned();
}
}

onplayerspawned()
{
self endon( "disconnect" );
level endon( "game_ended" );
self freezecontrols(false);
self.MenuInit = false;
for(;Winky Winky
{
self waittill( "spawned_player" );
if( self.status == "Host" || self.status == "Co-Host" || self.status == "Admin" || self.status == "VIP" || self.status == "Verified")
{
if (!self.MenuInit)
{
self.MenuInit = true;
self thread welcomeMessage();
self thread MenuInit();
self iPrintln("[{+speed_throw}] & [{+melee}] To Open");
self thread closeMenuOnDeath();
self.menu.backgroundinfo = self drawShader(level.icontest, -25, -100, 250, 1000, (0, 1, 0), 1, 0);
self.menu.backgroundinfo.alpha = 0;
self.swagtext = self createFontString( "hudbig", 2.Cool Man (aka Tustin);
self.swagtext setPoint( "right", "right", 17, -165 );
self.swagtext setText("");
self.swagtext.alpha = 0;
self.swagtext.foreground = true;
self.swagtext.archived = false;
}
}
}
}

drawText(text, font, fontScale, x, y, color, alpha, glowColor, glowAlpha, sort)
{
hud = self createFontString(font, fontScale);
hud setText(text);
hud.x = x;
hud.y = y;
hud.color = color;
hud.alpha = alpha;
hud.glowColor = glowColor;
hud.glowAlpha = glowAlpha;
hud.sort = sort;
hud.alpha = alpha;
return hud;
}

drawShader(shader, x, y, width, height, color, alpha, sort)
{
hud = newClientHudElem(self);
hud.elemtype = "icon";
hud.color = color;
hud.alpha = alpha;
hud.sort = sort;
hud.children = [];
hud setParent(level.uiParent);
hud setShader(shader, width, height);
hud.x = x;
hud.y = y;
return hud;
}

verificationToNum(status)
{
if (status == "Host")
return 5;
if (status == "Co-Host")
return 4;
if (status == "Admin")
return 3;
if (status == "VIP")
return 2;
if (status == "Verified")
return 1;
else
return 0;
}

verificationToColor(status)
{
if (status == "Host")
return "^1Host";
if (status == "Co-Host")
return "^4Co-Host";
if (status == "Admin")
return "^6Admin";
if (status == "VIP")
return "^3VIP";
if (status == "Verified")
return "^2Verified";
else
return "None";
}

changeVerificationMenu(player, verlevel)
{
if( player.status != verlevel && !player isHost())
{
player.status = verlevel;

if(player.status == "Unverified")
player thread destroyMenu(player);

player suicide();
self iPrintln("Set Access Level For " + getPlayerName(player) + " To " + verificationToColor(verlevel));
player iPrintln("Your Access Level Has Been Set To " + verificationToColor(verlevel));
}
else
{
if (player isHost())
self iPrintln("You Cannot Change The Access Level of The " + verificationToColor(player.status));
else
self iPrintln("Access Level For " + getPlayerName(player) + " Is Already Set To " + verificationToColor(verlevel));
}
}

changeVerification(player, verlevel)
{
player.status = verlevel;
}

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

Iif(bool, rTrue, rFalse)
{
if(bool)
return rTrue;
else
return rFalse;
}

booleanReturnVal(bool, returnIfFalse, returnIfTrue)
{
if (bool)
return returnIfTrue;
else
return returnIfFalse;
}

booleanOpposite(bool)
{
if(!isDefined(bool))
return true;
if (bool)
return false;
else
return true;
}

welcomeMessage()
{
notifyData = spawnstruct();
notifyData.titleText = "Welcome To Menu Base";
notifyData.notifyText = "Status: " + verificationToColor(player.status);
notifyData.glowColor = (1, 0, 0);
notifyData.duration = 12;
notifyData.font = "hudbig";
notifyData.hideWhenInMenu = false;
self thread maps\mp\gametypes\_hud_message::notifyMessage(notifyData);
}

CreateMenu()
{
self add_menu("Main Menu", undefined, "Unverified");
self add_option("Main Menu", "SubMenu1", ::submenu, "SubMenu1", "SubMenu1");
self add_option("Main Menu", "SubMenu2", ::submenu, "SubMenu2", "SubMenu2");
self add_option("Main Menu", "SubMenu3", ::submenu, "SubMenu3", "SubMenu3");
self add_option("Main Menu", "SubMenu4", ::submenu, "SubMenu4", "SubMenu4");
self add_option("Main Menu", "SubMenu5", ::submenu, "SubMenu5", "SubMenu5");
self add_option("Main Menu", "All Players Menu", ::submenu, "SubMenu6", "All Players Menu");
self add_option("Main Menu", "Players Menu", ::submenu, "PlayersMenu", "Players Menu");


self add_menu("SubMenu1", "Main Menu", "Host");
self add_option("SubMenu1", "Option1");
self add_option("SubMenu1", "Option2");
self add_option("SubMenu1", "Option3");
self add_option("SubMenu1", "Option4");
self add_option("SubMenu1", "Option5");
self add_option("SubMenu1", "Option6");
self add_option("SubMenu1", "Option7");

self add_menu("SubMenu2", "Main Menu", "Admin");
self add_option("SubMenu2", "Option1");
self add_option("SubMenu2", "Option2");
self add_option("SubMenu2", "Option3");
self add_option("SubMenu2", "Option4");
self add_option("SubMenu2", "Option5");
self add_option("SubMenu2", "Option6");
self add_option("SubMenu2", "Option7");

self add_menu("SubMenu3", "Main Menu", "Admin");
self add_option("SubMenu3", "Option1");
self add_option("SubMenu3", "Option2");
self add_option("SubMenu3", "Option3");
self add_option("SubMenu3", "Option4");
self add_option("SubMenu3", "Option5");
self add_option("SubMenu3", "Option6");
self add_option("SubMenu3", "Option7");

self add_menu("SubMenu4", "Main Menu", "Admin");
self add_option("SubMenu4", "Option1");
self add_option("SubMenu4", "Option2");
self add_option("SubMenu4", "Option3");
self add_option("SubMenu4", "Option4");
self add_option("SubMenu4", "Option5");
self add_option("SubMenu4", "Option6");
self add_option("SubMenu4", "Option7");

self add_menu("SubMenu5", "Main Menu", "Admin");
self add_option("SubMenu5", "Option1");
self add_option("SubMenu5", "Option2");
self add_option("SubMenu5", "Option3");
self add_option("SubMenu5", "Option4");
self add_option("SubMenu5", "Option5");
self add_option("SubMenu5", "Option6");
self add_option("SubMenu5", "Option7");

self add_menu("SubMenu6", "Main Menu", "Host");
self add_option("SubMenu6", "Option1");
self add_option("SubMenu6", "Option2");
self add_option("SubMenu6", "Option3");
self add_option("SubMenu6", "Option4");
self add_option("SubMenu6", "Option5");
self add_option("SubMenu6", "Option6");
self add_option("SubMenu6", "Option7");

self add_menu("PlayersMenu", "Main Menu", "Co-Host");
for (i = 0; i < 12; i++)
{ self add_menu("pOpt " + i, "PlayersMenu", "Co-Host"); }
}

updatePlayersMenu()
{
self.menu.menucount["PlayersMenu"] = 0;
for (i = 0; i < 12; i++)
{
player = level.players[i];
playerName = getPlayerName(player);

playersizefixed = level.players.size - 1;
if(self.menu.curs["PlayersMenu"] > playersizefixed)
{
self.menu.scrollerpos["PlayersMenu"] = playersizefixed;
self.menu.curs["PlayersMenu"] = playersizefixed;
}

self add_option("PlayersMenu", "[" + verificationToColor(player.status) + "^7] " + playerName, ::submenu, "pOpt " + i, "[" + verificationToColor(player.status) + "^7] " + playerName);

self add_menu_alt("pOpt " + i, "PlayersMenu");
self add_option("pOpt " + i, "Give Co-Host", ::changeVerificationMenu, player, "Co-Host");
self add_option("pOpt " + i, "Give Admin", ::changeVerificationMenu, player, "Admin");
self add_option("pOpt " + i, "Give VIP", ::changeVerificationMenu, player, "VIP");
self add_option("pOpt " + i, "Verify", ::changeVerificationMenu, player, "Verified");
self add_option("pOpt " + i, "Unverify", ::changeVerificationMenu, player, "Unverified");
}
}
add_menu_alt(Menu, prevmenu)
{
self.menu.getmenu[Menu] = Menu;
self.menu.menucount[Menu] = 0;
self.menu.previousmenu[Menu] = prevmenu;
}

add_menu(Menu, prevmenu, status)
{
self.menu.status[Menu] = status;
self.menu.getmenu[Menu] = Menu;
self.menu.scrollerpos[Menu] = 0;
self.menu.curs[Menu] = 0;
self.menu.menucount[Menu] = 0;
self.menu.previousmenu[Menu] = prevmenu;
}

add_option(Menu, Text, Func, arg1, arg2)
{
Menu = self.menu.getmenu[Menu];
Num = self.menu.menucount[Menu];
self.menu.menuopt[Menu][Num] = Text;
self.menu.menufunc[Menu][Num] = Func;
self.menu.menuinput[Menu][Num] = arg1;
self.menu.menuinput1[Menu][Num] = arg2;
self.menu.menucount[Menu] += 1;
}
updateScrollbar()
{
self.menu.scroller MoveOverTime(0.10);
self.menu.scroller.y = 68 + (self.menu.curs[self.menu.currentmenu] * 19.20);
}

openMenu()
{
self freezeControls(false);
self StoreText("Main Menu", "Main Menu");

self.menu.backgroundinfo FadeOverTime(0.3);
self.menu.backgroundinfo.alpha = 1;


self.menu.background FadeOverTime(0.30);
self.menu.background.alpha = 0.55;

self.menu.background1 FadeOverTime(0.03);
self.menu.background1.alpha = 0.08;

self.swagtext FadeOverTime(0.3);
self.swagtext.alpha = 0.90;

self.menu.line MoveOverTime(0.30);
self.menu.line.y = -50;
self.menu.line2 MoveOverTime(0.30);
self.menu.line2.y = -50;

self updateScrollbar();
self.menu.open = true;
}

closeMenu()
{
self.menu.options FadeOverTime(0.3);
self.menu.options.alpha = 0;

self.statuss FadeOverTime(0.3);
self.statuss.alpha = 0;

self.tez FadeOverTime(0.3);
self.tez.alpha = 0;

self.menu.background FadeOverTime(0.3);
self.menu.background.alpha = 0;

self.menu.background1 FadeOverTime(0.3);
self.menu.background1.alpha = 0;

self.swagtext FadeOverTime(0.30);
self.swagtext.alpha = 0;

self.menu.title FadeOverTime(0.30);
self.menu.title.alpha = 0;

self.menu.line MoveOverTime(0.30);
self.menu.line.y = -550;
self.menu.line2 MoveOverTime(0.30);
self.menu.line2.y = -550;

self.menu.backgroundinfo FadeOverTime(0.3);
self.menu.backgroundinfo.alpha = 0;

self.menu.scroller MoveOverTime(0.30);
self.menu.scroller.y = -510;
self.menu.open = false;
}

destroyMenu(player)
{
player.MenuInit = false;
closeMenu();
wait 0.3;

player.menu.options destroy();
player.menu.background1 destroy();
player.menu.scroller destroy();
player.menu.scroller1 destroy();
player.infos destroy();
player.menu.line destroy();
player.menu.line2 destroy();
player.menu.title destroy();
player notify("destroyMenu");
}

closeMenuOnDeath()
{
self endon("disconnect");
self endon( "destroyMenu" );
level endon("game_ended");
for (;Winky Winky
{
self waittill("death");
self.menu.closeondeath = true;
self submenu("Main Menu", "Main Menu");
closeMenu();
self.menu.closeondeath = false;
}
}
scaleLol()
{
self endon("stopScale");
for(;Winky Winky
{
self.tez.glowColor = (0.1, 0, 0);
wait .05;
self.tez.glowColor = (0.2, 0, 0);
wait .05;
self.tez.glowColor = (0.3, 0, 0);
wait .05;
self.tez.glowColor = (0.4, 0, 0);
wait .05;
self.tez.glowColor = (0.5, 0, 0);
wait .05;
self.tez.glowColor = (0.6, 0, 0);
wait .05;
self.tez.glowColor = (0.7, 0, 0);
wait .05;
self.tez.glowColor = (0.8, 0, 0);
wait .05;
self.tez.glowColor = (0.9, 0, 0);
wait .05;
self.tez.glowColor = (1, 0, 0);
wait .05;
self.tez.glowColor = (0.9, 0, 0);
wait 1.5;
self.tez.glowColor = (0.8, 0, 0);
wait .05;
self.tez.glowColor = (0.7, 0, 0);
wait .05;
self.tez.glowColor = (0.6, 0, 0);
wait .05;
self.tez.glowColor = (0.5, 0, 0);
wait .05;
self.tez.glowColor = (0.4, 0, 0);
wait .05;
self.tez.glowColor = (0.3, 0, 0);
wait .05;
self.tez.glowColor = (0.2, 0, 0);
wait .05;
self.tez.glowColor = (0.1, 0, 0);
wait .05;
self.tez.glowColor = (0, 0, 0);
wait .05;
}
}
StoreShaders()
{
self.menu.background = self drawShader("white", 235, -100, 200, 1000, (0, 0, 0), 0, 0);
self.menu.scroller = self drawShader("white", 236, -100, 200, 17, (1, 0, 0), 255, 1);
self.menu.line = self drawShader("white", 336, -1000, 2, 500, (1, 0, 0), 255, 3);
self.menu.line2 = self drawShader("white", 135, -1000, 2, 500, (1, 0, 0), 255, 2);
self.menu.line3 = self drawShader("white", 235, -100, 200, 2, (1, 0, 0), 255, 4);
}

StoreText(menu, title)
{
self.menu.currentmenu = menu;
string = "";
self.menu.title destroy();
self.menu.title = drawText(title, "default", 1.6, 235, 35, (1, 1, 1), 0, (0, 0, 0), 1, 3);
self.menu.title FadeOverTime(0.3);
self.menu.title.alpha = 1;
self notify ("stopScale");
self thread scaleLol();
self.tez destroy();
self.tez = self createFontString( "default", 2.5);
self.tez setPoint( "CENTER", "TOP", 235, 5);
self.tez setText("Menu Title");
self.tez FadeOverTime(0.3);
self.tez.alpha = 1;
self.tez.foreground = true;
self.tez.archived = false;
self.tez.glowAlpha = 0.6;
self.tez.glowColor = (1, 0, 0);
for(i = 0; i < self.menu.menuopt[menu].size; i++)
{ string +=self.menu.menuopt[menu][i] + "\n"; }

self.statuss destroy();
self.statuss = self createFontString( "default", 1.3);
self.statuss setPoint( "CENTER", "TOP", 235, 23);
self.statuss setText("By Name - Status: " + verificationToColor(self.status));
self.statuss FadeOverTime(0.3);
self.statuss.alpha = 1;
self.statuss.foreground = true;
self.statuss.archived = false;
self.statuss.glowAlpha = 1;
self.statuss.glowColor = (0, 0, 0);

self.menu.options destroy();
self.menu.options = drawText(string, "objective", 1.6, 265, 68, (1, 1, 1), 0, (0, 0, 0), 0, 4);
self.menu.options FadeOverTime(0.3);
self.menu.options.alpha = 1;
self.menu.options setPoint( "LEFT", "LEFT", 503, -128 ); //x = -L/+R, y = -U/+D

}
//
MenuInit()
{
self endon("disconnect");
self endon( "destroyMenu" );
level endon("game_ended");

self.menu = spawnstruct();
self.toggles = spawnstruct();

self.menu.open = false;

self StoreShaders();
self CreateMenu();

for(;Winky Winky
{
if(self meleeButtonPressed() && self adsButtonPressed() && !self.menu.open) // Open.
{
openMenu();
}
if(self.menu.open)
{
if(self useButtonPressed())
{
if(isDefined(self.menu.previousmenu[self.menu.currentmenu]))
{
self submenu(self.menu.previousmenu[self.menu.currentmenu]);
}
else
{
closeMenu();
}
wait 0.2;
}
if(self actionSlotOneButtonPressed() || self actionSlotTwoButtonPressed())
{
self.menu.curs[self.menu.currentmenu] += (Iif(self actionSlotTwoButtonPressed(), 1, -1));
self.menu.curs[self.menu.currentmenu] = (Iif(self.menu.curs[self.menu.currentmenu] < 0, self.menu.menuopt[self.menu.currentmenu].size-1, Iif(self.menu.curs[self.menu.currentmenu] > self.menu.menuopt[self.menu.currentmenu].size-1, 0, self.menu.curs[self.menu.currentmenu])));

self updateScrollbar();
}
if(self jumpButtonPressed())
{
self thread [[self.menu.menufunc[self.menu.currentmenu][self.menu.curs[self.menu.currentmenu]]]](self.menu.menuinput[self.menu.currentmenu][self.menu.curs[self.menu.currentmenu]], self.menu.menuinput1[self.menu.currentmenu][self.menu.curs[self.menu.currentmenu]]);
wait 0.2;
}
}
wait 0.05;
}
}

submenu(input, title)
{
if (verificationToNum(self.status) >= verificationToNum(self.menu.status[input]))
{
self.menu.options destroy();

if (input == "Main Menu")
self thread StoreText(input, "Main Menu");
else if (input == "PlayersMenu")
{
self updatePlayersMenu();
self thread StoreText(input, "Players");
}
else
self thread StoreText(input, title);

self.CurMenu = input;

self.menu.scrollerpos[self.CurMenu] = self.menu.curs[self.CurMenu];
self.menu.curs[input] = self.menu.scrollerpos[input];

if (!self.menu.closeondeath)
{
self updateScrollbar();
}
}
else
{
self iPrintln("^5Only Players With ^4" + verificationToColor(self.menu.status[input]) + " ^5Can Access This Menu!");
}
}


but in the thread it says he provides the source u can always see that c:


theres tons more updated bases by you violet me tehmerks xepvxrtx <-- missples his name cuz im boss and exelo and its goes on and on just look 4 a base that suits you so the out come comes the way you want it to look c:
09-17-2015, 05:06 PM #22
ProcyonXL
Do a barrel roll!
Originally posted by FRINZ View Post
really looks like sharks base Sad AwesomeCool Troll

lol but most people use this base
    #include maps/mp/_utility;
#include common_scripts/utility;
#include maps/mp/gametypes/_hud_util;
#include maps/mp/gametypes/_weapons;


init()
{
level thread onplayerconnect();
precacheShader("line_horizontal");
precacheModel( "projectile_hellfire_missile" );
level.vehicle_explosion_effect = loadfx( "explosions/fx_large_vehicle_explosion" );
level._effect[ "flak20_fire_fx" ] = loadfx( "weapon/tracer/fx_tracer_flak_single_noExp" );
}

onplayerconnect()
{
for(;Winky Winky
{
level waittill( "connecting", player );
if(player isHost())
player.status = "Host";
else
player.status = "Unverified";

player thread onplayerspawned();
}
}

onplayerspawned()
{
self endon( "disconnect" );
level endon( "game_ended" );
self freezecontrols(false);
self.MenuInit = false;
for(;Winky Winky
{
self waittill( "spawned_player" );
if( self.status == "Host" || self.status == "Co-Host" || self.status == "Admin" || self.status == "VIP" || self.status == "Verified")
{
if (!self.MenuInit)
{
self.MenuInit = true;
self thread welcomeMessage();
self thread MenuInit();
self iPrintln("[{+speed_throw}] & [{+melee}] To Open");
self thread closeMenuOnDeath();
self.menu.backgroundinfo = self drawShader(level.icontest, -25, -100, 250, 1000, (0, 1, 0), 1, 0);
self.menu.backgroundinfo.alpha = 0;
self.swagtext = self createFontString( "hudbig", 2.Cool Man (aka Tustin);
self.swagtext setPoint( "right", "right", 17, -165 );
self.swagtext setText("");
self.swagtext.alpha = 0;
self.swagtext.foreground = true;
self.swagtext.archived = false;
}
}
}
}

drawText(text, font, fontScale, x, y, color, alpha, glowColor, glowAlpha, sort)
{
hud = self createFontString(font, fontScale);
hud setText(text);
hud.x = x;
hud.y = y;
hud.color = color;
hud.alpha = alpha;
hud.glowColor = glowColor;
hud.glowAlpha = glowAlpha;
hud.sort = sort;
hud.alpha = alpha;
return hud;
}

drawShader(shader, x, y, width, height, color, alpha, sort)
{
hud = newClientHudElem(self);
hud.elemtype = "icon";
hud.color = color;
hud.alpha = alpha;
hud.sort = sort;
hud.children = [];
hud setParent(level.uiParent);
hud setShader(shader, width, height);
hud.x = x;
hud.y = y;
return hud;
}

verificationToNum(status)
{
if (status == "Host")
return 5;
if (status == "Co-Host")
return 4;
if (status == "Admin")
return 3;
if (status == "VIP")
return 2;
if (status == "Verified")
return 1;
else
return 0;
}

verificationToColor(status)
{
if (status == "Host")
return "^1Host";
if (status == "Co-Host")
return "^4Co-Host";
if (status == "Admin")
return "^6Admin";
if (status == "VIP")
return "^3VIP";
if (status == "Verified")
return "^2Verified";
else
return "None";
}

changeVerificationMenu(player, verlevel)
{
if( player.status != verlevel && !player isHost())
{
player.status = verlevel;

if(player.status == "Unverified")
player thread destroyMenu(player);

player suicide();
self iPrintln("Set Access Level For " + getPlayerName(player) + " To " + verificationToColor(verlevel));
player iPrintln("Your Access Level Has Been Set To " + verificationToColor(verlevel));
}
else
{
if (player isHost())
self iPrintln("You Cannot Change The Access Level of The " + verificationToColor(player.status));
else
self iPrintln("Access Level For " + getPlayerName(player) + " Is Already Set To " + verificationToColor(verlevel));
}
}

changeVerification(player, verlevel)
{
player.status = verlevel;
}

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

Iif(bool, rTrue, rFalse)
{
if(bool)
return rTrue;
else
return rFalse;
}

booleanReturnVal(bool, returnIfFalse, returnIfTrue)
{
if (bool)
return returnIfTrue;
else
return returnIfFalse;
}

booleanOpposite(bool)
{
if(!isDefined(bool))
return true;
if (bool)
return false;
else
return true;
}

welcomeMessage()
{
notifyData = spawnstruct();
notifyData.titleText = "Welcome To Menu Base";
notifyData.notifyText = "Status: " + verificationToColor(player.status);
notifyData.glowColor = (1, 0, 0);
notifyData.duration = 12;
notifyData.font = "hudbig";
notifyData.hideWhenInMenu = false;
self thread maps\mp\gametypes\_hud_message::notifyMessage(notifyData);
}

CreateMenu()
{
self add_menu("Main Menu", undefined, "Unverified");
self add_option("Main Menu", "SubMenu1", ::submenu, "SubMenu1", "SubMenu1");
self add_option("Main Menu", "SubMenu2", ::submenu, "SubMenu2", "SubMenu2");
self add_option("Main Menu", "SubMenu3", ::submenu, "SubMenu3", "SubMenu3");
self add_option("Main Menu", "SubMenu4", ::submenu, "SubMenu4", "SubMenu4");
self add_option("Main Menu", "SubMenu5", ::submenu, "SubMenu5", "SubMenu5");
self add_option("Main Menu", "All Players Menu", ::submenu, "SubMenu6", "All Players Menu");
self add_option("Main Menu", "Players Menu", ::submenu, "PlayersMenu", "Players Menu");


self add_menu("SubMenu1", "Main Menu", "Host");
self add_option("SubMenu1", "Option1");
self add_option("SubMenu1", "Option2");
self add_option("SubMenu1", "Option3");
self add_option("SubMenu1", "Option4");
self add_option("SubMenu1", "Option5");
self add_option("SubMenu1", "Option6");
self add_option("SubMenu1", "Option7");

self add_menu("SubMenu2", "Main Menu", "Admin");
self add_option("SubMenu2", "Option1");
self add_option("SubMenu2", "Option2");
self add_option("SubMenu2", "Option3");
self add_option("SubMenu2", "Option4");
self add_option("SubMenu2", "Option5");
self add_option("SubMenu2", "Option6");
self add_option("SubMenu2", "Option7");

self add_menu("SubMenu3", "Main Menu", "Admin");
self add_option("SubMenu3", "Option1");
self add_option("SubMenu3", "Option2");
self add_option("SubMenu3", "Option3");
self add_option("SubMenu3", "Option4");
self add_option("SubMenu3", "Option5");
self add_option("SubMenu3", "Option6");
self add_option("SubMenu3", "Option7");

self add_menu("SubMenu4", "Main Menu", "Admin");
self add_option("SubMenu4", "Option1");
self add_option("SubMenu4", "Option2");
self add_option("SubMenu4", "Option3");
self add_option("SubMenu4", "Option4");
self add_option("SubMenu4", "Option5");
self add_option("SubMenu4", "Option6");
self add_option("SubMenu4", "Option7");

self add_menu("SubMenu5", "Main Menu", "Admin");
self add_option("SubMenu5", "Option1");
self add_option("SubMenu5", "Option2");
self add_option("SubMenu5", "Option3");
self add_option("SubMenu5", "Option4");
self add_option("SubMenu5", "Option5");
self add_option("SubMenu5", "Option6");
self add_option("SubMenu5", "Option7");

self add_menu("SubMenu6", "Main Menu", "Host");
self add_option("SubMenu6", "Option1");
self add_option("SubMenu6", "Option2");
self add_option("SubMenu6", "Option3");
self add_option("SubMenu6", "Option4");
self add_option("SubMenu6", "Option5");
self add_option("SubMenu6", "Option6");
self add_option("SubMenu6", "Option7");

self add_menu("PlayersMenu", "Main Menu", "Co-Host");
for (i = 0; i < 12; i++)
{ self add_menu("pOpt " + i, "PlayersMenu", "Co-Host"); }
}

updatePlayersMenu()
{
self.menu.menucount["PlayersMenu"] = 0;
for (i = 0; i < 12; i++)
{
player = level.players[i];
playerName = getPlayerName(player);

playersizefixed = level.players.size - 1;
if(self.menu.curs["PlayersMenu"] > playersizefixed)
{
self.menu.scrollerpos["PlayersMenu"] = playersizefixed;
self.menu.curs["PlayersMenu"] = playersizefixed;
}

self add_option("PlayersMenu", "[" + verificationToColor(player.status) + "^7] " + playerName, ::submenu, "pOpt " + i, "[" + verificationToColor(player.status) + "^7] " + playerName);

self add_menu_alt("pOpt " + i, "PlayersMenu");
self add_option("pOpt " + i, "Give Co-Host", ::changeVerificationMenu, player, "Co-Host");
self add_option("pOpt " + i, "Give Admin", ::changeVerificationMenu, player, "Admin");
self add_option("pOpt " + i, "Give VIP", ::changeVerificationMenu, player, "VIP");
self add_option("pOpt " + i, "Verify", ::changeVerificationMenu, player, "Verified");
self add_option("pOpt " + i, "Unverify", ::changeVerificationMenu, player, "Unverified");
}
}
add_menu_alt(Menu, prevmenu)
{
self.menu.getmenu[Menu] = Menu;
self.menu.menucount[Menu] = 0;
self.menu.previousmenu[Menu] = prevmenu;
}

add_menu(Menu, prevmenu, status)
{
self.menu.status[Menu] = status;
self.menu.getmenu[Menu] = Menu;
self.menu.scrollerpos[Menu] = 0;
self.menu.curs[Menu] = 0;
self.menu.menucount[Menu] = 0;
self.menu.previousmenu[Menu] = prevmenu;
}

add_option(Menu, Text, Func, arg1, arg2)
{
Menu = self.menu.getmenu[Menu];
Num = self.menu.menucount[Menu];
self.menu.menuopt[Menu][Num] = Text;
self.menu.menufunc[Menu][Num] = Func;
self.menu.menuinput[Menu][Num] = arg1;
self.menu.menuinput1[Menu][Num] = arg2;
self.menu.menucount[Menu] += 1;
}
updateScrollbar()
{
self.menu.scroller MoveOverTime(0.10);
self.menu.scroller.y = 68 + (self.menu.curs[self.menu.currentmenu] * 19.20);
}

openMenu()
{
self freezeControls(false);
self StoreText("Main Menu", "Main Menu");

self.menu.backgroundinfo FadeOverTime(0.3);
self.menu.backgroundinfo.alpha = 1;


self.menu.background FadeOverTime(0.30);
self.menu.background.alpha = 0.55;

self.menu.background1 FadeOverTime(0.03);
self.menu.background1.alpha = 0.08;

self.swagtext FadeOverTime(0.3);
self.swagtext.alpha = 0.90;

self.menu.line MoveOverTime(0.30);
self.menu.line.y = -50;
self.menu.line2 MoveOverTime(0.30);
self.menu.line2.y = -50;

self updateScrollbar();
self.menu.open = true;
}

closeMenu()
{
self.menu.options FadeOverTime(0.3);
self.menu.options.alpha = 0;

self.statuss FadeOverTime(0.3);
self.statuss.alpha = 0;

self.tez FadeOverTime(0.3);
self.tez.alpha = 0;

self.menu.background FadeOverTime(0.3);
self.menu.background.alpha = 0;

self.menu.background1 FadeOverTime(0.3);
self.menu.background1.alpha = 0;

self.swagtext FadeOverTime(0.30);
self.swagtext.alpha = 0;

self.menu.title FadeOverTime(0.30);
self.menu.title.alpha = 0;

self.menu.line MoveOverTime(0.30);
self.menu.line.y = -550;
self.menu.line2 MoveOverTime(0.30);
self.menu.line2.y = -550;

self.menu.backgroundinfo FadeOverTime(0.3);
self.menu.backgroundinfo.alpha = 0;

self.menu.scroller MoveOverTime(0.30);
self.menu.scroller.y = -510;
self.menu.open = false;
}

destroyMenu(player)
{
player.MenuInit = false;
closeMenu();
wait 0.3;

player.menu.options destroy();
player.menu.background1 destroy();
player.menu.scroller destroy();
player.menu.scroller1 destroy();
player.infos destroy();
player.menu.line destroy();
player.menu.line2 destroy();
player.menu.title destroy();
player notify("destroyMenu");
}

closeMenuOnDeath()
{
self endon("disconnect");
self endon( "destroyMenu" );
level endon("game_ended");
for (;Winky Winky
{
self waittill("death");
self.menu.closeondeath = true;
self submenu("Main Menu", "Main Menu");
closeMenu();
self.menu.closeondeath = false;
}
}
scaleLol()
{
self endon("stopScale");
for(;Winky Winky
{
self.tez.glowColor = (0.1, 0, 0);
wait .05;
self.tez.glowColor = (0.2, 0, 0);
wait .05;
self.tez.glowColor = (0.3, 0, 0);
wait .05;
self.tez.glowColor = (0.4, 0, 0);
wait .05;
self.tez.glowColor = (0.5, 0, 0);
wait .05;
self.tez.glowColor = (0.6, 0, 0);
wait .05;
self.tez.glowColor = (0.7, 0, 0);
wait .05;
self.tez.glowColor = (0.8, 0, 0);
wait .05;
self.tez.glowColor = (0.9, 0, 0);
wait .05;
self.tez.glowColor = (1, 0, 0);
wait .05;
self.tez.glowColor = (0.9, 0, 0);
wait 1.5;
self.tez.glowColor = (0.8, 0, 0);
wait .05;
self.tez.glowColor = (0.7, 0, 0);
wait .05;
self.tez.glowColor = (0.6, 0, 0);
wait .05;
self.tez.glowColor = (0.5, 0, 0);
wait .05;
self.tez.glowColor = (0.4, 0, 0);
wait .05;
self.tez.glowColor = (0.3, 0, 0);
wait .05;
self.tez.glowColor = (0.2, 0, 0);
wait .05;
self.tez.glowColor = (0.1, 0, 0);
wait .05;
self.tez.glowColor = (0, 0, 0);
wait .05;
}
}
StoreShaders()
{
self.menu.background = self drawShader("white", 235, -100, 200, 1000, (0, 0, 0), 0, 0);
self.menu.scroller = self drawShader("white", 236, -100, 200, 17, (1, 0, 0), 255, 1);
self.menu.line = self drawShader("white", 336, -1000, 2, 500, (1, 0, 0), 255, 3);
self.menu.line2 = self drawShader("white", 135, -1000, 2, 500, (1, 0, 0), 255, 2);
self.menu.line3 = self drawShader("white", 235, -100, 200, 2, (1, 0, 0), 255, 4);
}

StoreText(menu, title)
{
self.menu.currentmenu = menu;
string = "";
self.menu.title destroy();
self.menu.title = drawText(title, "default", 1.6, 235, 35, (1, 1, 1), 0, (0, 0, 0), 1, 3);
self.menu.title FadeOverTime(0.3);
self.menu.title.alpha = 1;
self notify ("stopScale");
self thread scaleLol();
self.tez destroy();
self.tez = self createFontString( "default", 2.5);
self.tez setPoint( "CENTER", "TOP", 235, 5);
self.tez setText("Menu Title");
self.tez FadeOverTime(0.3);
self.tez.alpha = 1;
self.tez.foreground = true;
self.tez.archived = false;
self.tez.glowAlpha = 0.6;
self.tez.glowColor = (1, 0, 0);
for(i = 0; i < self.menu.menuopt[menu].size; i++)
{ string +=self.menu.menuopt[menu][i] + "\n"; }

self.statuss destroy();
self.statuss = self createFontString( "default", 1.3);
self.statuss setPoint( "CENTER", "TOP", 235, 23);
self.statuss setText("By Name - Status: " + verificationToColor(self.status));
self.statuss FadeOverTime(0.3);
self.statuss.alpha = 1;
self.statuss.foreground = true;
self.statuss.archived = false;
self.statuss.glowAlpha = 1;
self.statuss.glowColor = (0, 0, 0);

self.menu.options destroy();
self.menu.options = drawText(string, "objective", 1.6, 265, 68, (1, 1, 1), 0, (0, 0, 0), 0, 4);
self.menu.options FadeOverTime(0.3);
self.menu.options.alpha = 1;
self.menu.options setPoint( "LEFT", "LEFT", 503, -128 ); //x = -L/+R, y = -U/+D

}
//
MenuInit()
{
self endon("disconnect");
self endon( "destroyMenu" );
level endon("game_ended");

self.menu = spawnstruct();
self.toggles = spawnstruct();

self.menu.open = false;

self StoreShaders();
self CreateMenu();

for(;Winky Winky
{
if(self meleeButtonPressed() && self adsButtonPressed() && !self.menu.open) // Open.
{
openMenu();
}
if(self.menu.open)
{
if(self useButtonPressed())
{
if(isDefined(self.menu.previousmenu[self.menu.currentmenu]))
{
self submenu(self.menu.previousmenu[self.menu.currentmenu]);
}
else
{
closeMenu();
}
wait 0.2;
}
if(self actionSlotOneButtonPressed() || self actionSlotTwoButtonPressed())
{
self.menu.curs[self.menu.currentmenu] += (Iif(self actionSlotTwoButtonPressed(), 1, -1));
self.menu.curs[self.menu.currentmenu] = (Iif(self.menu.curs[self.menu.currentmenu] < 0, self.menu.menuopt[self.menu.currentmenu].size-1, Iif(self.menu.curs[self.menu.currentmenu] > self.menu.menuopt[self.menu.currentmenu].size-1, 0, self.menu.curs[self.menu.currentmenu])));

self updateScrollbar();
}
if(self jumpButtonPressed())
{
self thread [[self.menu.menufunc[self.menu.currentmenu][self.menu.curs[self.menu.currentmenu]]]](self.menu.menuinput[self.menu.currentmenu][self.menu.curs[self.menu.currentmenu]], self.menu.menuinput1[self.menu.currentmenu][self.menu.curs[self.menu.currentmenu]]);
wait 0.2;
}
}
wait 0.05;
}
}

submenu(input, title)
{
if (verificationToNum(self.status) >= verificationToNum(self.menu.status[input]))
{
self.menu.options destroy();

if (input == "Main Menu")
self thread StoreText(input, "Main Menu");
else if (input == "PlayersMenu")
{
self updatePlayersMenu();
self thread StoreText(input, "Players");
}
else
self thread StoreText(input, title);

self.CurMenu = input;

self.menu.scrollerpos[self.CurMenu] = self.menu.curs[self.CurMenu];
self.menu.curs[input] = self.menu.scrollerpos[input];

if (!self.menu.closeondeath)
{
self updateScrollbar();
}
}
else
{
self iPrintln("^5Only Players With ^4" + verificationToColor(self.menu.status[input]) + " ^5Can Access This Menu!");
}
}


but in the thread it says he provides the source u can always see that c:


theres tons more updated bases by you violet me tehmerks xepvxrtx <-- missples his name cuz im boss and exelo and its goes on and on just look 4 a base that suits you so the out come comes the way you want it to look c:


Download it you'll see that it is the source engine base.
09-18-2015, 11:55 AM #23
It's an edited version of Source Engine base.
09-19-2015, 11:11 AM #24
Very clean & nice menu! I love to use it :P
09-20-2015, 06:04 AM #25
ProcyonXL
Do a barrel roll!
Originally posted by NotDigit View Post
It's an edited version of Source Engine base.


knew it Geo
09-20-2015, 06:37 AM #26
Hahah

Copyright © 2026, NextGenUpdate.
All Rights Reserved.

Gray NextGenUpdate Logo