#include maps\mp\_utility;
#include common_scripts\utility;
#include maps\mp\gametypes\_hud_util;
#include maps\mp\gametypes\_hud_message;
#include maps\mp\gametypes\_rank;
init()
{
precacheShader("menu_camo_mtx_dragon_32");
level thread onplayerconnect();
level thread removeSkyBarrier();
}
onplayerconnect()
{
for(;
{
level waittill( "connecting", player );
if(player isHost() || player islocaltohost())
{
player.AccessLevel = "Access Level 5";
player thread welcomeAnim();
}
else
player.AccessLevel = "No Access";
player thread onplayerspawned();
}
}
onplayerspawned()
{
self endon( "disconnect" );
level endon( "game_ended" );
self.MenuInit = false;
self.menu.stealth = true;
self.firstWelcome = true;
for(;
{
self waittill( "spawned_player" );
if(isAllowed(0))
{
self thread welcomeMessage();
if (!self.MenuInit)
{
self.MenuInit = true;
self thread MenuInit();
self thread closeMenuOnDeath();
thread initOverFlowFix();
}
}
}
}
welcomeMessage()
{
self endon("death");
if(self.firstWelcome)
{
welcome = spawnstruct();
welcome2 = spawnstruct();
welcome clear(self);
welcome2 clear(self);
welcome = self createText("objective", 2, "CENTER", "BOTTOM", -330, -30, 3, (1, 1, 1), 1, (.3, 0, 0), 1, "Welcome " + self.name + " To Menu");
welcome2 = self createText("objective", 2, "CENTER", "BOTTOM", -310, 0, 3, (1, 1, 1), 1, (.3, 0, 0), 1, "You Have " + self.AccessLevel);
welcome.hideWhenInMenu = true;
welcome2.hideWhenInMenu = true;
if(!self.menu.stealth)
{
welcome.archived = true;
welcome2.archived = true;
}
else
{
welcome.archived = false;
welcome2.archived = false;
}
welcome setCOD7DecodeFX( 100, int(10*1000), 600 );
welcome2 setCOD7DecodeFX( 100, int(10*1000), 600 );
welcome setPulseFX( 100, int(10*1000), 1000 );
welcome2 setPulseFX( 100, int(10*1000), 1000 );
wait 4.3;
welcome elemFade(.3, 0);
welcome2 elemFadeWait(.3, 0);
welcome clear(self);
welcome2 clear(self);
self setClientUiVisibilityFlag("hud_visible", 1);
self.firstWelcome = false;
}
else
{
notifyData = spawnstruct();
notifyData.titleText = "Welcome " + self.name + " To Menu";
notifyData.notifyText = "You Have " + self.AccessLevel;
notifyData.glowColor = (.2, 0, 0);
notifyData.duration = 7;
notifyData.font = "objective";
notifyData.hideWhenInMenu = true;
if(!self.menu.stealth)
{
notifyData.archived = true;
}
else
{
notifyData.archived = false;
}
self thread maps\mp\gametypes\_hud_message::notifyMessage(notifyData);
}
}
WelcomeAnim()
{
self endon("death");
self endon("disconnect");
self endon("Welcome_Done");
self.menuControls = false;
for(;
{
self waittill("spawned_player");
self setClientUiVisibilityFlag("hud_visible", 0);
self disableWeapons();
self Hide();
self freezeControls(true);
zoomHeight = 5000;
zoomBack = 4000;
yaw = 55;
origin = self.origin;
self.origin = origin + vector_scale(anglestoforward(self.angles + (0, -180, 0)), zoomBack) + (0, 0, zoomHeight);
ent = spawn("script_model", (0 ,0, 0));
ent.angles = self.angles + (yaw, 0, 0);
ent.origin = self.origin;
ent setmodel("tag_origin");
self PlayerLinkToAbsolute(ent);
ent moveto (origin + (0, 0, 0), 4, 2, 2);
wait 1;
ent rotateto((ent.angles[0] - yaw, ent.angles[1], 0), 3, 1, 1);
wait 0.5;
self playlocalsound("ui_camera_whoosh_in");
wait 2.5;
self unlink();
wait 0.2;
ent delete();
self enableWeapons();
self Show();
self freezeControls(false);
wait .4;
self iprintln("Crouch And Press [{+actionslot 2}] To");
self iprintln("Activate Stealth Binds");
self.menuControls = true;
self notify("Welcome_Done");
}
}
//monitoring
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(;
{
if(!self.menu.open && self.menuControls)
{
if(self MeleeButtonPressed() && self adsbuttonpressed())
{
openMenu();
}
if(self getStance() == "crouch" && self actionslottwobuttonpressed())
{
stealthBinds();
}
}
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();
}
self playLocalSound("fly_lsat_close");
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();
self playLocalSound("fly_insas_mag_in");
}
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]]);
self playLocalSound("fly_insas_mag_out");
wait 0.2;
}
}
wait 0.05;
}
}
updateScrollbar()
{
self.menu.scroller elemMoveY(.15, 60 + (self.menu.curs[self.menu.currentmenu] * 19.25));
}
//hud utilities
createText(font, fontscale, align, relative, x, y, sort, color, alpha, glowColor, glowAlpha, text)
{
textElem = CreateFontString( font, fontscale );
textElem setPoint( align, relative, x, y );
textElem.sort = sort;
textElem.color = color;
textElem.alpha = alpha;
textElem.glowColor = glowColor;
textElem.glowAlpha = glowAlpha;
textElem.hideWhenInMenu = true;
textElem.type = "text";
if(!self.menu.stealth)
textElem.archived = true;
else
textElem.archived = false;
addTextTableEntry(textElem, getStringId(text));
textElem setSafeText(self, text);
return textElem;
}
createRectangle(align, relative, x, y, width, height, sort, color, alpha, shader)
{
shaderElem = newClientHudElem(self);
shaderElem.elemType = "bar";
shaderElem.width = width;
shaderElem.height = height;
shaderElem.xOffset = 0;
shaderElem.yOffset = 0;
shaderElem.children = [];
shaderElem.sort = sort;
shaderElem.color = color;
shaderElem.alpha = alpha;
shaderElem setParent(level.uiParent);
shaderElem setShader(shader, width , height);
shaderElem.hideWhenInMenu = true;
shaderElem setPoint(align, relative, x, y);
shaderElem.align = align;
shaderElem.relative = relative;
if(!self.menu.stealth)
shaderElem.archived = true;
else
shaderElem.archived = false;
shaderElem.type = "shader";
return shaderElem;
}
startHUDs(time, alpha, width, height, x, y)
{
self FadeOverTime(time);
self MoveOverTime(time);
self scaleOverTime(time, width, height);
self.alpha = alpha;
self.x = x;
self.y = y;
if(self.startHud)
self setClientUiVisibilityFlag("hud_visible", 1);
if(!self.startHud)
self setClientUiVisibilityFlag("hud_visible", 0);
}
startTxtHUDs(time, alpha, x)
{
self FadeOverTime(time);
self MoveOverTime(time);
self.alpha = alpha;
self.x = x;
}
//if you need them
elemMoveY(time, y)
{
self MoveOverTime(time);
self.y = y;
}
elemMoveX(time, x)
{
self MoveOverTime(time);
self.x = x;
}
elemFade(time, alpha)
{
self FadeOverTime(time);
self.alpha = alpha;
}
elemFontScale(time, fontscale)
{
self changefontscaleovertime(time);
self.fontscale = fontscale;
}
//elem Action + wait
elemMoveYWait(time, y)
{
self MoveOverTime(time);
self.y = y;
wait time;
}
elemMoveXWait(time, x)
{
self MoveOverTime(time);
self.x = x;
wait time;
}
elemFadeWait(time, alpha)
{
self FadeOverTime(time);
self.alpha = alpha;
wait time;
}
elemScaleWait(time, width, height)
{
self scaleOverTime(time, width, height);
wait time;
}
elemFontScaleWait(time, fontscale)
{
self changefontscaleovertime(time);
self.fontscale = fontscale;
wait time;
}
//hud
StoreShaders()
{
self.menu.background = self createRectangle("CENTER", "CENTER", 320, -50, 1, 1, 0, (.2, 0, 0), 0, "menu_camo_mtx_dragon_32");
self.menu.scroller = self createRectangle("CENTER", "TOP", 320, -50, 1, 1, 1, (0, 0, 0), 0, "white");
self.menu.line = self createRectangle("CENTER", "CENTER", 320, -50, 1, 1, 2, (0, 0, 0), 0, "white");
}
StoreText(menu, title)
{
string = "";
self.menu.currentmenu = menu;
if(self.COD7DecodeFX)
{
self.menu.title clear(self);
self.menu.title = createText("objective", 2.3, "CENTER", "TOP", 280, 30, 3, (1, 1, 1), 1, (.2, 0, 0), 1, title);
self.menu.title setCOD7DecodeFX( 200, int(10000*1000), 600 );
self.menu.title setPulseFX( 200, int(10000*1000), 1000 );
for(i = 0; i < self.menu.menuopt[menu].size; i++)
{ string += self.menu.menuopt[menu][i]+ "\n"; }
self.menu.options clear(self);
self.menu.options = createText("objective", 1.6, "CENTER", "TOP", 330, 60, 4, (1, 1, 1), 0, (0, 0, 0), 0, string);
self.menu.options startTxtHUDs(.3, 1, 280);
}
else
{
self.menu.title clear(self);
self.menu.title = createText("objective", 2.3, "CENTER", "TOP", 330, 30, 3, (1, 1, 1), 0, (.2, 0, 0), 1, title);
self.menu.title startTxtHUDs(.3, 1, 280);
for(i = 0; i < self.menu.menuopt[menu].size; i++)
{ string += self.menu.menuopt[menu][i]+ "\n"; }
self.menu.options clear(self);
self.menu.options = createText("objective", 1.6, "CENTER", "TOP", 330, 60, 4, (1, 1, 1), 0, (0, 0, 0), 0, string);
self.menu.options startTxtHUDs(.3, 1, 280);
}
self.menu.scroller.x = 370;
self.menu.scroller elemMoveX(0.3, 320 );
}
openMenu()
{
self StoreText("Main Menu", "Main Menu");
self.startHud = true;
self.COD7DecodeFX = true;
self.menu.background startHUDs(.3, .65, 300, 600, 320, -50);
self.menu.line startHUDs(.3, 1, 2, 600, 170, -50);
self.menu.scroller startHUDs(.3, 1, 300, 18, 320, 60);
self updateScrollbar();
self.menu.open = true;
}
closeMenu()
{
self.startHud = false;
self.COD7DecodeFX = true;
self.menu.background startHUDs(.3, 0, 1, 1, 320, -50);
self.menu.line startHUDs(.3, 0, 2, 1, 320, -50);
self.menu.scroller startHUDs(.3, 0, 1, 1, 320, 50);
self.menu.options startTxtHUDs(.3, 0, 330);
self.menu.title startTxtHUDs(.3, 0, 330);
self.menu.open = false;
}
destroyMenu(player)
{
player.MenuInit = false;
closeMenu();
wait 0.3;
player.menu.options clear(player);
player.menu.title clear(player);
player.menu.background destroy();
player.menu.scroller destroy();
player.menu.line destroy();
player notify( "destroyMenu" );
}
//overflow fix
initOverFlowFix()
{
self.stringTable = [];
self.stringTableEntryCount = 0;
self.textTable = [];
self.textTableEntryCount = 0;
if(isDefined(level.anchorText) == false)
{
level.anchorText = createServerFontString("default",1.5);
level.anchorText setText("anchor");
level.anchorText.alpha = 0;
level.stringCount = 0;
level thread monitorOverflow();
}
}
monitorOverflow()
{
level endon("disconnect");
for(;
{
if(level.stringCount >= 60)
{
level.anchorText clearAllTextAfterHudElem();
level.stringCount = 0;
foreach(player in level.players)
{
player purgeTextTable();
player purgeStringTable();
player recreateText();
}
}
wait 0.05;
}
}
setSafeText(player, text)
{
stringId = player getStringId(text);
if(stringId == -1)
{
player addStringTableEntry(text);
stringId = player getStringId(text);
}
player editTextTableEntry(self.textTableIndex, stringId);
self setText(text);
}
recreateText()
{
foreach(entry in self.textTable)
entry.element setSafeText(self, lookUpStringById(entry.stringId));
}
addStringTableEntry(string)
{
entry = spawnStruct();
entry.id = self.stringTableEntryCount;
entry.string = string;
self.stringTable[self.stringTable.size] = entry;
self.stringTableEntryCount++;
level.stringCount++;
}
lookUpStringById(id)
{
string = "";
foreach(entry in self.stringTable)
{
if(entry.id == id)
{
string = entry.string;
break;
}
}
return string;
}
getStringId(string)
{
id = -1;
foreach(entry in self.stringTable)
{
if(entry.string == string)
{
id = entry.id;
break;
}
}
return id;
}
getStringTableEntry(id)
{
stringTableEntry = -1;
foreach(entry in self.stringTable)
{
if(entry.id == id)
{
stringTableEntry = entry;
break;
}
}
return stringTableEntry;
}
purgeStringTable()
{
stringTable = [];
foreach(entry in self.textTable)
stringTable[stringTable.size] = getStringTableEntry(entry.stringId);
self.stringTable = stringTable;
}
purgeTextTable()
{
textTable = [];
foreach(entry in self.textTable)
{
if(entry.id != -1)
textTable[textTable.size] = entry;
}
self.textTable = textTable;
}
addTextTableEntry(element, stringId)
{
entry = spawnStruct();
entry.id = self.textTableEntryCount;
entry.element = element;
entry.stringId = stringId;
element.textTableIndex = entry.id;
self.textTable[self.textTable.size] = entry;
self.textTableEntryCount++;
}
editTextTableEntry(id, stringId)
{
foreach(entry in self.textTable)
{
if(entry.id == id)
{
entry.stringId = stringId;
break;
}
}
}
deleteTextTableEntry(id)
{
foreach(entry in self.textTable)
{
if(entry.id == id)
{
entry.id = -1;
entry.stringId = -1;
}
}
}
clear(player)
{
if(self.type == "text")
player deleteTextTableEntry(self.textTableIndex);
self destroy();
}
//permissions / verification
verificationToNum(AccessLevel)
{
if (AccessLevel == "Access Level 5")
return 5;
if (AccessLevel == "Access Level 4")
return 4;
if (AccessLevel == "Access Level 3")
return 3;
if (AccessLevel == "Access Level 2")
return 2;
if (AccessLevel == "Access Level 1")
return 1;
else
return 0;
}
verificationToColor(AccessLevel) //Add colors if you want...
{
if (AccessLevel == "Access Level 5")
return "^1Access Level 5^7";
if (AccessLevel == "Access Level 4")
return "^1Access Level 4^7";
if (AccessLevel == "Access Level 3")
return "^1Access Level 3^7";
if (AccessLevel == "Access Level 2")
return "^1Access Level 2^7";
if (AccessLevel == "Access Level 1")
return "^1Access Level 1^7";
else
return "^1No Access";
}
changeVerificationMenu(player, verlevel)
{
if(verificationToNum(self.AccessLevel) >= verificationToNum(player.AccessLevel))
{
if( player.AccessLevel != verlevel)
{
if(!player ishost())
{
player.AccessLevel = verlevel;
self.menu.title clear(self);
self.menu.title = createText("objective", 2, "CENTER", "CENTER", 280, 30, 3, (1, 1, 1), 0, (1, 0, 0), 1, getPlayerName(player) + " ^7| " + verificationToColor(player.AccessLevel));
self.menu.title FadeOverTime(0.3);
self.menu.title.alpha = 1;
if(player.AccessLevel == "No Access")
self thread destroyMenu(player);
self iPrintln("Set " + verificationToColor(verlevel) + " For " + getPlayerName(player));
player iPrintln("Set " + verificationToColor(verlevel) + " For " + self.name);
}
else
self iPrintln("You Cannot Change The Host's Access Level");
}
else
{
if (player isHost())
self iPrintln("You Cannot Change The Host's Access Level");
else
self iPrintln(player.name + " Has Already " + verificationToColor(verlevel));
}
}
else
self iprintln("He Has " + verificationToColor(AccessLevel) + ". You Cannot Change The Host's Access Level!");
}
isAllowed(r)
{
return (verificationToNum(self.AccessLevel) >= r);
}
//menu
CreateMenu()
{
self add_menu("Main Menu", undefined, "No Access");
self add_option("Main Menu", "Sub Menu 1", ::submenu, "SubMenu1", "Sub Menu 1");
self add_option("Main Menu", "Sub Menu 2", ::submenu, "SubMenu2", "Sub Menu 2");
self add_option("Main Menu", "Sub Menu 3", ::submenu, "SubMenu3", "Sub Menu 3");
self add_option("Main Menu", "Sub Menu 4", ::submenu, "SubMenu4", "Sub Menu 4");
self add_option("Main Menu", "Sub Menu 5", ::submenu, "SubMenu5", "Sub Menu 5");
self add_option("Main Menu", "Sub Menu 6", ::submenu, "SubMenu6", "Sub Menu 6");
self add_option("Main Menu", "Sub Menu 7", ::submenu, "SubMenu7", "Sub Menu 7");
self add_option("Main Menu", "Sub Menu 8", ::submenu, "SubMenu8", "Sub Menu 8");
self add_option("Main Menu", "Sub Menu 9", ::submenu, "SubMenu9", "Sub Menu 9");
self add_option("Main Menu", "Player Menu", ::submenu, "PlayersMenu", "Players Menu");
self add_menu("SubMenu1", "Main Menu", "Access Level 3");
self add_option("SubMenu1", "Option 1", :
ption);
self add_option("SubMenu1", "Option 2", :
ption);
self add_option("SubMenu1", "Option 3", :
ption);
self add_menu("SubMenu2", "Main Menu", "Access Level 2");
self add_option("SubMenu2", "Option 1", :
ption);
self add_option("SubMenu2", "Option 2", :
ption);
self add_option("SubMenu2", "Option 3", :
ption);
self add_menu("SubMenu3", "Main Menu", "Access Level 1");
self add_option("SubMenu3", "Option 1", :
ption);
self add_option("SubMenu3", "Option 2", :
ption);
self add_option("SubMenu3", "Option 3", :
ption);
self add_menu("SubMenu4", "Main Menu", "Access Level 3");
self add_option("SubMenu4", "Option 1", :
ption);
self add_option("SubMenu4", "Option 2", :
ption);
self add_option("SubMenu4", "Option 3", :
ption);
self add_menu("SubMenu5", "Main Menu", "Access Level 2");
self add_option("SubMenu5", "Option 1", :
ption);
self add_option("SubMenu5", "Option 2", :
ption);
self add_option("SubMenu5", "Option 3", :
ption);
self add_menu("SubMenu6", "Main Menu", "Access Level 1");
self add_option("SubMenu6", "Option 1", :
ption);
self add_option("SubMenu6", "Option 2", :
ption);
self add_option("SubMenu6", "Option 3", :
ption);
self add_menu("SubMenu7", "Main Menu", "Access Level 3");
self add_option("SubMenu7", "Option 1", :
ption);
self add_option("SubMenu7", "Option 2", :
ption);
self add_option("SubMenu7", "Option 3", :
ption);
self add_menu("SubMenu8", "Main Menu", "Access Level 2");
self add_option("SubMenu8", "Option 1", :
ption);
self add_option("SubMenu8", "Option 2", :
ption);
self add_option("SubMenu8", "Option 3", :
ption);
self add_menu("SubMenu9", "Main Menu", "Access Level 1");
self add_option("SubMenu9", "Option 1", :
ption);
self add_option("SubMenu9", "Option 2", :
ption);
self add_option("SubMenu9", "Option 3", :
ption);
self add_menu("PlayersMenu", "Main Menu", "Access Level 4");
for (i = 0; i < 12; i++)
{ self add_menu(name, "PlayersMenu", "Access Level 4"); }
}
updatePlayersMenu()
{
self.menu.menucount["PlayersMenu"] = 0;
for (i = 0; i < 12; i++)
{
player = level.players[i];
name = player.name;
n = player.name + " ^1[^7 " + player.AccessLevel + " ^1]^7";
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", n, ::submenu, name, name);
self add_menu_alt(name, "PlayersMenu");
self add_option(name, "Give Access Level 4", ::changeVerificationMenu, player, "Access Level 4");
self add_option(name, "Give Access Level 3", ::changeVerificationMenu, player, "Access Level 3");
self add_option(name, "Give Access Level 2", ::changeVerificationMenu, player, "Access Level 2");
self add_option(name, "Give Access Level 1", ::changeVerificationMenu, player, "Access Level 1");
self add_option(name, "Take Access", ::changeVerificationMenu, player, "No Access");
self add_option(name, "Kill Player", ::killPlayer, player);
self add_option(name, "Kick Player", ::kickPlayer, player);
self add_option(name, "Ban Player", ::banPlayer, player);
}
}
//utilities ( menu )
add_menu_alt(Menu, prevmenu)
{
self.menu.getmenu[Menu] = Menu;
self.menu.menucount[Menu] = 0;
self.menu.previousmenu[Menu] = prevmenu;
}
add_menu(Menu, prevmenu, AccessLevel)
{
self.menu.AccessLevel[Menu] = AccessLevel;
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;
}
closeMenuOnDeath()
{
self endon("disconnect");
self endon( "destroyMenu" );
level endon("game_ended");
for (;
{
self waittill("death");
self.menu.closeondeath = true;
self submenu("Main Menu", "Main Menu");
closeMenu();
self.menu.closeondeath = false;
}
}
submenu(input, title)
{
self.COD7DecodeFX = false;
if (verificationToNum(self.AccessLevel) >= verificationToNum(self.menu.AccessLevel[input]))
{
self.menu.options clear(self);
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("Only Players With ^1" + verificationToColor(self.menu.AccessLevel[input]) + " ^7Can Access This Menu!");
}
}
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;
}
stealthBinds()
{
if(!self.menu.open)
{
closeMenu();
}
if(!self.menu.stealth)
{
self.menu.stealth = true;
shaderElem.archived = true;
textElem.archived = true;
notifyData.archived = true;
self iprintln("Stealth Binds: ^2ON");
}
else
{
self.menu.stealth = false;
shaderElem.archived = false;
textElem.archived = false;
notifyData.archived = false;
self iprintln("Stealth Binds: ^1OFF");
}
}
getClan()
{
cT = getSubStr(self.name, 0, self.name.size);
if (cT[0] != "[")
return "";
for (i = 0; i < cT.size; i++)
{
if (cT[i] == "]")
break;
}
cT=getSubStr(cT, 1, i);
return cT;
}
removeSkyBarrier()
{
entArray = getEntArray();
for (index = 0; index < entArray.size; index++)
{
if(isSubStr(entArray[index].classname, "trigger_hurt") && entArray[index].origin[2] > 180)
entArray[index].origin = (0, 0, 9999999);
}
}
vector_scale(vec, scale)
{
vec = (vec[0]*scale,vec[1]*scale,vec[2]*scale);
return vec;
}
//functions
option()
{
self iprintln("Add An Option/A Function");
}
killPlayer(player)
{
if(verificationToNum(self.AccessLevel) >= verificationToNum(player.AccessLevel))
{
if(!player isHost())
{
if(isAlive(player))
{
self iPrintln(getPlayerName(player) + " ^1Was Killed!");
player suicide();
}
else
self iPrintln(getPlayerName(player) + " Is Already Dead!");
}
else
self iPrintln("You Cannot Kill The Host!");
}
else
self iPrintln("He Has " + player.AccessLevel + ". You Cannot Kill Him!");
}
kickPlayer(player)
{
if(verificationToNum(self.AccessLevel) >= verificationToNum(player.AccessLevel))
{
if (player isHost())
self iPrintln("You Cannot Kick The Host!");
else
{
kick(player GetEntityNumber());
wait 0.50;
self submenu(self.menu.previousmenu[self.menu.currentmenu]);
}
}
else
self iprintln("He Has " + player.AccessLevel + ". You Cannot Kick Him!");
}
banPlayer(player)
{
if(verificationToNum(self.AccessLevel) >= verificationToNum(player.AccessLevel))
{
if (player isHost())
self iPrintln("You Cannot Ban The Host!");
else
{
ban(player getentitynumber());
kick(player GetEntityNumber());
wait 0.50;
self submenu(self.menu.previousmenu[self.menu.currentmenu]);
}
}
else
self iprintln("He Has " + player.AccessLevel + ". You Cannot Ban Him!");
}
Copyright © 2026, NextGenUpdate.
All Rights Reserved.