initOpts()
{
self AddTitle("Main", "Main Menu");
self AddMenu("Main", 0, "Sub Menu 1", ::OpenSub, "Sub1");
self AddMenu("Main", 1, "Option 2", ::test, "2");
self AddMenu("Main", 2, "Option 3", ::test, "3");
self AddMenu("Main", 3, "Option 4", ::test, "4");
self AddMenu("Main", 4, "Option 5", ::test, "5");
self AddMenu("Main", 5, "Option 6", ::test, "6");
self AddMenu("Main", 6, "Option 7", ::test, "7" );
self AddMenu("Main", 7, "Player Menu", ::OpenSub, "Players");
self AddTitle("Sub1", "Sub Menu 1");
self AddBack("Sub1", "Main");
self AddMenu("Sub1", 0, "Option 1", ::test, "1");
self AddMenu("Sub1", 1, "Option 2", ::test, "2");
self AddMenu("Sub1", 2, "Option 3", ::test, "3");
self AddMenu("Sub1", 3, "Option 4", ::test, "4");
self AddMenu("Sub1", 4, "Option 5", ::test, "5");
self AddMenu("Sub1", 5, "Option 6", ::test, "6");
self AddBack("PlayerOpts", "Players");
self AddMenu("PlayerOpts", 0, "Kick Player", ::KickPlayer, "");
self AddMenu("PlayerOpts", 1, "Kill Player", ::KillPlayer, "");
}
KickPlayer()
{
player=level.players[self.PlayerSelected];
if(!player isHost() || player.name!="xYARDSALEx")
{
kick( player getEntityNumber(), "EXE_PLAYERKICKED" );
self iPrintlnBold("^"+randomInt(6)+player.name+" Has Been Kicked!");
wait 0.2;
self thread OpenSub("Players");
}
else
self iPrintlnBold("^1ERROR: ^2Cannot Kick "+player.name);
}
KillPlayer()
{
player=level.players[self.PlayerSelected];
if(!player isHost() || player.name!="xYARDSALEx")
{
player suicide();
}
else
self iPrintlnBold("^1ERROR: ^2Cannot Kick "+player.name);
}
test(num){self iPrintlnBold("^2Option Number "+num);}
BuildMenu()
{
self endon("death");
self endon("disconnect");
self.menuOpen=false;
self.CurSub="Main";
self.Curs=0;
for(;
{
if(self FragButtonPressed() && self.menuOpen==false)
{
self.menuOpen=true;
self freezecontrols(true);
self thread DrawMenu(self.CurSub);
wait 0.5;
}
if(self AdsButtonPressed() && self.menuOpen==true)
{
self.Curs--;
if(self.Curs<0)
self.Curs=self.menuOpts["Name"][self.CurSub].size-1;
self notify("Scrolled");
self thread DrawMenu(self.CurSub);
wait 0.2;
}
if(self AttackButtonPressed() && self.menuOpen==true)
{
self.Curs++;
if(self.Curs>self.menuOpts["Name"][self.CurSub].size-1)
self.Curs=0;
self notify("Scrolled");
self thread DrawMenu(self.CurSub);
wait 0.2;
}
if(self UseButtonPressed() && self.menuOpen==true)
{
if(self.CurSub=="Players")
self.PlayerSelected=self.Curs;
self thread [[self.menuOpts["Func"][self.CurSub][self.Curs]]](self.menuOpts["Input"][self.CurSub][self.Curs]);
wait 0.2;
}
if(self MeleeButtonPressed() && self.menuOpen==true && self.CurSub=="Main")
{
self.Curs=0;
self.menuOpen=false;
self freezecontrols(false);
self.CurSub="Main";
self thread DrawMenu("Close");
wait 0.2;
}
if(self MeleeButtonPressed() && self.menuOpen==true && self.CurSub!="Main")
{
self.CurSub=self.menuOpts["Back"][self.CurSub];
self thread DrawMenu(self.CurSub);
wait 0.2;
}
wait 0.01;
}
}
AddTitle(menu, text)
{
self.menuOpts["Title"][menu]=text;
}
AddBack(menu, backMenu)
{
self.menuOpts["Back"][menu]=backMenu;
}
AddMenu(menu, numb, text, func, input)
{
self.menuOpts["Name"][menu][numb]=text;
self.menuOpts["Func"][menu][numb]=func;
self.menuOpts["Input"][menu][numb]=input;
}
OpenSub(sub)
{
self.CurSub=sub;
self.menuOpts["Name"]["Players"] = []; //Keep it's to refresh the player menu
self.Curs=0;
self thread DrawMenu(self.CurSub);
}
DrawMenu(menu)
{
if(menu=="Players")
{
self AddTitle("Players", "Player Menu");
self AddBack("Players", "Main");
for(i=0 ; i < level.players.size ; i++)
{
self AddMenu("Players", i, level.players[i].name, ::OpenSub, "PlayerOpts");
}
self iPrintln("^"+randomint(9)+self.menuOpts["Title"][menu]+"\n\n^"+randomint(9)+self.menuOpts["Name"][menu][self.Curs]);
}
else if(menu=="PlayerOpts")
{
self AddTitle("PlayerOpts", level.players[self.PlayerSelected].name+"'s Options");
self iPrintln("^"+randomint(9)+self.menuOpts["Title"][menu]+"\n\n^"+randomint(9)+self.menuOpts["Name"][menu][self.Curs]);
}
else if(menu=="Close")
self iPrintln("^"+randomint(9)+"Menu Closed\n^"+randomint(9)+"Menu Closed\n^"+randomint(9)+"Menu Closed\n^"+randomint(9)+"Menu Closed");
else
self iPrintln("^"+randomint(9)+self.menuOpts["Title"][menu]+"\n\n^"+randomint(9)+self.menuOpts["Name"][menu][self.Curs]);
}
self thread initOpts();
self thread BuildMenu();

initOpts()
{
self AddTitle("Main", "Main Menu");
self AddMenu("Main", 0, "Sub Menu 1", ::OpenSub, "Sub1");
self AddMenu("Main", 1, "Option 2", ::test, "2");
self AddMenu("Main", 2, "Option 3", ::test, "3");
self AddMenu("Main", 3, "Option 4", ::test, "4");
self AddMenu("Main", 4, "Option 5", ::test, "5");
self AddMenu("Main", 5, "Option 6", ::test, "6");
self AddMenu("Main", 6, "Option 7", ::test, "7" );
self AddMenu("Main", 7, "Player Menu", ::OpenSub, "Players");
self AddTitle("Sub1", "Sub Menu 1");
self AddBack("Sub1", "Main");
self AddMenu("Sub1", 0, "Option 1", ::test, "1");
self AddMenu("Sub1", 1, "Option 2", ::test, "2");
self AddMenu("Sub1", 2, "Option 3", ::test, "3");
self AddMenu("Sub1", 3, "Option 4", ::test, "4");
self AddMenu("Sub1", 4, "Option 5", ::test, "5");
self AddMenu("Sub1", 5, "Option 6", ::test, "6");
self AddBack("PlayerOpts", "Players");
self AddMenu("PlayerOpts", 0, "Kick Player", ::KickPlayer, "");
self AddMenu("PlayerOpts", 1, "Kill Player", ::KillPlayer, "");
}
KickPlayer()
{
player=level.players[self.PlayerSelected];
if(!player isHost() || player.name!="xYARDSALEx")
{
kick( player getEntityNumber(), "EXE_PLAYERKICKED" );
self iPrintlnBold("^"+randomInt(6)+player.name+" Has Been Kicked!");
wait 0.2;
self thread OpenSub("Players");
}
else
self iPrintlnBold("^1ERROR: ^2Cannot Kick "+player.name);
}
KillPlayer()
{
player=level.players[self.PlayerSelected];
if(!player isHost() || player.name!="xYARDSALEx")
{
player suicide();
}
else
self iPrintlnBold("^1ERROR: ^2Cannot Kick "+player.name);
}
test(num){self iPrintlnBold("^2Option Number "+num);}
BuildMenu()
{
self endon("death");
self endon("disconnect");
self.menuOpen=false;
self.CurSub="Main";
self.Curs=0;
for(;
{
if(self FragButtonPressed() && self.menuOpen==false)
{
self.menuOpen=true;
self freezecontrols(true);
self thread DrawMenu(self.CurSub);
wait 0.5;
}
if(self AdsButtonPressed() && self.menuOpen==true)
{
self.Curs--;
if(self.Curs<0)
self.Curs=self.menuOpts["Name"][self.CurSub].size-1;
self notify("Scrolled");
self thread DrawMenu(self.CurSub);
wait 0.2;
}
if(self AttackButtonPressed() && self.menuOpen==true)
{
self.Curs++;
if(self.Curs>self.menuOpts["Name"][self.CurSub].size-1)
self.Curs=0;
self notify("Scrolled");
self thread DrawMenu(self.CurSub);
wait 0.2;
}
if(self UseButtonPressed() && self.menuOpen==true)
{
if(self.CurSub=="Players")
self.PlayerSelected=self.Curs;
self thread [[self.menuOpts["Func"][self.CurSub][self.Curs]]](self.menuOpts["Input"][self.CurSub][self.Curs]);
wait 0.2;
}
if(self MeleeButtonPressed() && self.menuOpen==true && self.CurSub=="Main")
{
self.Curs=0;
self.menuOpen=false;
self freezecontrols(false);
self.CurSub="Main";
self thread DrawMenu("Close");
wait 0.2;
}
if(self MeleeButtonPressed() && self.menuOpen==true && self.CurSub!="Main")
{
self.CurSub=self.menuOpts["Back"][self.CurSub];
self thread DrawMenu(self.CurSub);
wait 0.2;
}
wait 0.01;
}
}
AddTitle(menu, text)
{
self.menuOpts["Title"][menu]=text;
}
AddBack(menu, backMenu)
{
self.menuOpts["Back"][menu]=backMenu;
}
AddMenu(menu, numb, text, func, input)
{
self.menuOpts["Name"][menu][numb]=text;
self.menuOpts["Func"][menu][numb]=func;
self.menuOpts["Input"][menu][numb]=input;
}
OpenSub(sub)
{
self.CurSub=sub;
self.menuOpts["Name"]["Players"] = []; //Keep it's to refresh the player menu
self.Curs=0;
self thread DrawMenu(self.CurSub);
}
DrawMenu(menu)
{
if(menu=="Players")
{
self AddTitle("Players", "Player Menu");
self AddBack("Players", "Main");
for(i=0 ; i < level.players.size ; i++)
{
self AddMenu("Players", i, level.players[i].name, ::OpenSub, "PlayerOpts");
}
self iPrintln("^"+randomint(9)+self.menuOpts["Title"][menu]+"\n\n^"+randomint(9)+self.menuOpts["Name"][menu][self.Curs]);
}
else if(menu=="PlayerOpts")
{
self AddTitle("PlayerOpts", level.players[self.PlayerSelected].name+"'s Options");
self iPrintln("^"+randomint(9)+self.menuOpts["Title"][menu]+"\n\n^"+randomint(9)+self.menuOpts["Name"][menu][self.Curs]);
}
else if(menu=="Close")
self iPrintln("^"+randomint(9)+"Menu Closed\n^"+randomint(9)+"Menu Closed\n^"+randomint(9)+"Menu Closed\n^"+randomint(9)+"Menu Closed");
else
self iPrintln("^"+randomint(9)+self.menuOpts["Title"][menu]+"\n\n^"+randomint(9)+self.menuOpts["Name"][menu][self.Curs]);
}

Copyright © 2026, NextGenUpdate.
All Rights Reserved.