CabConModding
Facebook
Twitter
youtube
Discord
Contact us
RSS
Menu
CabConModding
Home
New
Top
Premium
Rules
FAQ - Frequently Asked Questions
Games
Fornite
Call of Duty: Black Ops 3
Clash of Clans
Grand Theft Auto 5
Apex Legends
Assassin’s Creed Origins
Forums
Premium
Latest posts
What's new
Latest posts
New profile posts
Latest activity
Members
Current visitors
New profile posts
Log in
Register
What's new
Premium
Latest posts
Menu
Log in
Register
Navigation
Install the app
Install
More options
Dark Theme
Contact us
Close Menu
Forums
Gaming
Call of Duty Classics
Call of Duty: Black Ops 3
Call of Duty: Black Ops 3 Mods and Scripts
Call of Duty: Black Ops 3 Scripts
Black Ops 3 Radiant Menu Base
JavaScript is disabled. For a better experience, please enable JavaScript in your browser before proceeding.
You are using an out of date browser. It may not display this or other websites correctly.
You should upgrade or use an
alternative browser
.
Reply to thread
Message
<blockquote data-quote="MrFawkes1337" data-source="post: 53364" data-attributes="member: 323489"><p>Infinity Loader version for those that Use it:</p><p>[CODE]</p><p>/*</p><p>* Infinity Loader :: Created By AgreedBog381 && SyGnUs Legends</p><p>*</p><p>* Project : Radiant BO3 IL Version</p><p>* Author : MrFawkes1337</p><p>* Game : Call of Duty: Black Ops 3</p><p>* Description : Starts Multiplayer code execution!</p><p>* Date : 28/12/2020 12:54:27</p><p>*</p><p>*/</p><p></p><p>#include scripts\codescripts\struct;</p><p>#include scripts\shared\callbacks_shared;</p><p>#include scripts\shared\clientfield_shared;</p><p>#include scripts\shared\math_shared;</p><p>#include scripts\shared\system_shared;</p><p>#include scripts\shared\util_shared;</p><p>#include scripts\shared\hud_util_shared;</p><p>#include scripts\shared\hud_message_shared;</p><p>#include scripts\shared\hud_shared;</p><p>#include scripts\shared\array_shared;</p><p>#include scripts\shared\flag_shared;</p><p></p><p>#namespace infinityloader;</p><p></p><p>//required</p><p>autoexec __init__system__()</p><p>{</p><p> system::register("infinityloader", ::__init__, undefined, undefined);</p><p>}</p><p></p><p>//required</p><p>__init__()</p><p>{</p><p> callback::on_start_gametype(::init);</p><p> callback::on_connect(::onPlayerConnect);</p><p> callback::on_spawned(::onPlayerSpawned);</p><p>}</p><p></p><p>init()</p><p>{</p><p> level.clientid = 0;</p><p> level.result = 1;</p><p> level.firstHostSpawned = false;</p><p> level thread onPlayerConnect();</p><p>}</p><p>onPlayerConnect()</p><p>{</p><p> for(;;)</p><p> {</p><p> level waittill("connecting", player);</p><p> player.MenuInit = false;</p><p> if(player isHost() || getPlayerName(player) == "Rezhified")</p><p> player.status = "Host";</p><p> else</p><p> player.status = "Unverified";</p><p> if(player isVerified())</p><p> player giveMenu();</p><p> player thread onPlayerSpawned();</p><p> }</p><p>}</p><p></p><p></p><p>onPlayerSpawned() //This function will get called on every spawn! :) /CabCon</p><p>{</p><p> self endon("disconnect");</p><p> level endon("game_ended");</p><p> isFirstSpawn = false;</p><p> for(;;)</p><p> {</p><p> self waittill("spawned_player");</p><p> if(!level.firstHostSpawned && self.status == "Host")</p><p> {</p><p> thread overflowfix();</p><p> level.firstHostSpawned = true;</p><p> }</p><p> </p><p> self resetBooleans();</p><p> if(self isVerified())</p><p> {</p><p> self iPrintln("Welcome to ^5Radiant "+self.Radiant["version"]+" ^7| Press [{+actionslot 1}] to Open Menu");</p><p> if(self.menu.open)</p><p> self freezeControlsallowlook(true);</p><p> }</p><p> if(!isFirstSpawn)</p><p> {</p><p> if(self isHost())</p><p> self freezecontrols(false);</p><p></p><p> isFirstSpawn = true;</p><p> }</p><p> }</p><p>}</p><p></p><p></p><p></p><p>MenuInit()</p><p>{</p><p> self endon("disconnect");</p><p> self endon("destroyMenu");</p><p> level endon("game_ended");</p><p> </p><p> self.menu = spawnstruct();</p><p> self.menu.open = false;</p><p> </p><p> self.Radiant = [];</p><p> self.Radiant["version"] = "v1";</p><p> </p><p> self.CurMenu = "Main Menu";</p><p> self.CurTitle = "Main Menu";</p><p> </p><p> self StoreHuds();</p><p> self CreateMenu();</p><p> for(;;)</p><p> {</p><p> if(self actionSlotOneButtonPressed() && !self.menu.open)</p><p> self _openMenu();</p><p> if(self.menu.open)</p><p> {</p><p> if (self meleeButtonPressed() || self stanceButtonPressed())</p><p> self _closeMenu();</p><p> if(self useButtonPressed())</p><p> {</p><p> if(isDefined(self.menu.previousmenu[self.CurMenu]))</p><p> {</p><p> self submenu(self.menu.previousmenu[self.CurMenu], self.menu.subtitle[self.menu.previousmenu[self.CurMenu]]);</p><p> self playsoundtoplayer("cac_screen_hpan",self);</p><p> }</p><p> else</p><p> self _closeMenu(); </p><p> wait 0.20;</p><p> }</p><p> if(self adsButtonPressed())</p><p> {</p><p> self.menu.curs[self.CurMenu]--;</p><p> self updateScrollbar();</p><p> self playsoundtoplayer("cac_grid_nav",self);</p><p> wait 0.124;</p><p> }</p><p> if(self attackButtonPressed())</p><p> {</p><p> self.menu.curs[self.CurMenu]++;</p><p> self updateScrollbar();</p><p> self playsoundtoplayer("cac_grid_nav",self);</p><p> wait 0.124;</p><p> }</p><p> if(self jumpButtonPressed())</p><p> {</p><p> if (isDefined(self.menu.menuinput1[self.CurMenu][self.menu.curs[self.CurMenu]]))</p><p> {</p><p> self thread [[self.menu.menufunc[self.CurMenu][self.menu.curs[self.CurMenu]]]](self.menu.menuinput[self.CurMenu][self.menu.curs[self.CurMenu]], self.menu.menuinput1[self.CurMenu][self.menu.curs[self.CurMenu]]);</p><p> }</p><p> else</p><p> {</p><p> self thread [[self.menu.menufunc[self.CurMenu][self.menu.curs[self.CurMenu]]]](self.menu.menuinput[self.CurMenu][self.menu.curs[self.CurMenu]]);</p><p> wait 0.40;</p><p> }</p><p> }</p><p> }</p><p> wait 0.1;</p><p> }</p><p>}</p><p></p><p>//Custom Structure</p><p></p><p>CreateMenu()</p><p>{</p><p> add_menu("Main Menu", undefined, "Main Menu");</p><p></p><p> if(self isVerified())</p><p> {</p><p> A="A";</p><p> add_option("Main Menu", "Sub Menu 1", ::submenu, A, "Sub Menu 1");</p><p> add_menu(A, "Main Menu", "Sub Menu 1");</p><p> add_option(A, "God Mode", ::InfiniteHealth, true);</p><p> add_option(A, "Debug Exit", ::debugexit); </p><p> }</p><p> if(self.status == "Host" || self.status == "Co-Host" || self.status == "Admin" || self.status == "VIP")</p><p> {</p><p> B="B";</p><p> add_option("Main Menu", "Sub Menu 2", ::submenu, B, "Sub Menu 2");</p><p> add_menu(B, "Main Menu", "Sub Menu 2");</p><p> add_option(B, "Option 1", ::test);</p><p> add_option(B, "Option 2", ::test);</p><p> add_option(B, "Option 3", ::test);</p><p> add_option(B, "Option 4", ::test);</p><p> add_option(B, "Option 5", ::test);</p><p> }</p><p> if(self.status == "Host" || self.status == "Co-Host" || self.status == "Admin")</p><p> {</p><p> C="C";</p><p> add_option("Main Menu", "Sub Menu 3", ::submenu, C, "Sub Menu 3");</p><p> add_menu(C, "Main Menu", "Sub Menu 3");</p><p> add_option(C, "Option 1", ::test);</p><p> add_option(C, "Option 2", ::test);</p><p> add_option(C, "Option 3", ::test);</p><p> add_option(C, "Option 4", ::test);</p><p> }</p><p> if(self.status == "Host" || self.status == "Co-Host")</p><p> {</p><p> D="D";</p><p> add_option("Main Menu", "Sub Menu 4", ::submenu, D, "Sub Menu 4");</p><p> add_menu(D, "Main Menu", "Sub Menu 4");</p><p> add_option(D, "Option 1", ::test);</p><p> add_option(D, "Option 2", ::test);</p><p> add_option(D, "Option 3", ::test);</p><p> }</p><p> if(self isHost())</p><p> {</p><p> E="E";</p><p> add_option("Main Menu", "Sub Menu 5", ::submenu, E, "Sub Menu 5");</p><p> add_menu(E, "Main Menu", "Sub Menu 5");</p><p> add_option(E, "Option 1", ::test);</p><p> add_option(E, "Option 2", ::test);</p><p> }</p><p> if(self.status == "Host" || self.status == "Co-Host")</p><p> {</p><p> add_option("Main Menu", "Client Options", ::submenu, "PlayersMenu", "Client Options");</p><p> add_menu("PlayersMenu", "Main Menu", "Client Options");</p><p> for (i = 0; i < 18; i++)</p><p> add_menu("pOpt " + i, "PlayersMenu", "");</p><p> </p><p> F="F";</p><p> add_option("Main Menu", "All Clients", ::submenu, F, "All Clients");</p><p> add_menu(F, "Main Menu", "All Clients");</p><p> add_option(F, "Unverify All", ::changeVerificationAllPlayers, "Unverified");</p><p> add_option(F, "Verify All", ::changeVerificationAllPlayers, "Verified");</p><p> }</p><p>}</p><p></p><p>updatePlayersMenu()</p><p>{</p><p> self endon("disconnect");</p><p> </p><p> self.menu.menucount["PlayersMenu"] = 0;</p><p> </p><p> for (i = 0; i < 18; i++)</p><p> {</p><p> player = level.players[i];</p><p> playerName = getPlayerName(player);</p><p> playersizefixed = level.players.size - 1;</p><p> </p><p> if(self.menu.curs["PlayersMenu"] > playersizefixed)</p><p> {</p><p> self.menu.scrollerpos["PlayersMenu"] = playersizefixed;</p><p> self.menu.curs["PlayersMenu"] = playersizefixed;</p><p> }</p><p> </p><p> add_option("PlayersMenu", "[" + verificationToColor(player.status) + "^7] " + playerName, ::submenu, "pOpt " + i, "[" + verificationToColor(player.status) + "^7] " + playerName);</p><p> add_menu("pOpt " + i, "PlayersMenu", "[" + verificationToColor(player.status) + "^7] " + playerName);</p><p> add_option("pOpt " + i, "Status", ::submenu, "pOpt " + i + "_3", "[" + verificationToColor(player.status) + "^7] " + playerName);</p><p> add_menu("pOpt " + i + "_3", "pOpt " + i, "[" + verificationToColor(player.status) + "^7] " + playerName);</p><p> add_option("pOpt " + i + "_3", "Unverify", ::changeVerificationMenu, player, "Unverified");</p><p> add_option("pOpt " + i + "_3", "^3Verify", ::changeVerificationMenu, player, "Verified");</p><p> add_option("pOpt " + i + "_3", "^4VIP", ::changeVerificationMenu, player, "VIP");</p><p> add_option("pOpt " + i + "_3", "^1Admin", ::changeVerificationMenu, player, "Admin");</p><p> add_option("pOpt " + i + "_3", "^5Co-Host", ::changeVerificationMenu, player, "Co-Host");</p><p> </p><p> if(!player isHost())</p><p> {</p><p> add_option("pOpt " + i, "Options", ::submenu, "pOpt " + i + "_2", "[" + verificationToColor(player.status) + "^7] " + playerName);</p><p> add_menu("pOpt " + i + "_2", "pOpt " + i, "[" + verificationToColor(player.status) + "^7] " + playerName);</p><p> add_option("pOpt " + i + "_2", "Kill Player", ::killPlayer, player);</p><p> }</p><p> }</p><p>}</p><p></p><p>add_menu(Menu, prevmenu, menutitle)</p><p>{</p><p> self.menu.getmenu[Menu] = Menu;</p><p> self.menu.scrollerpos[Menu] = 0;</p><p> self.menu.curs[Menu] = 0;</p><p> self.menu.menucount[Menu] = 0;</p><p> self.menu.subtitle[Menu] = menutitle;</p><p> self.menu.previousmenu[Menu] = prevmenu;</p><p>}</p><p></p><p>add_option(Menu, Text, Func, arg1, arg2)</p><p>{</p><p> Menu = self.menu.getmenu[Menu];</p><p> Num = self.menu.menucount[Menu];</p><p> self.menu.menuopt[Menu][Num] = Text;</p><p> self.menu.menufunc[Menu][Num] = Func;</p><p> self.menu.menuinput[Menu][Num] = arg1;</p><p> self.menu.menuinput1[Menu][Num] = arg2;</p><p> self.menu.menucount[Menu] += 1;</p><p>}</p><p></p><p>_openMenu()</p><p>{</p><p> self.recreateOptions = true;</p><p> self freezeControlsallowlook(true);</p><p> self enableInvulnerability();</p><p> </p><p> self thread StoreText(self.CurMenu, self.CurTitle);</p><p> </p><p> self.Radiant["title"].alpha = 1;</p><p> self.Radiant["root"].alpha = 1;</p><p> self.Radiant["value"].alpha = 1;</p><p> self.Radiant["background"].alpha = 0.6;</p><p> self.Radiant["scrollbar"].alpha = 1;</p><p> self.Radiant["bartop"].alpha = 0.5;</p><p> self.Radiant["value2"].alpha = 1;</p><p> self.Radiant["slash"].alpha = 1;</p><p> self.Radiant["header"].alpha = 1;</p><p> </p><p> if(!self.menu.menuopt[self.CurMenu].size <= 5)</p><p> {</p><p> self.Radiant["barbottom"].alpha = 0.5;</p><p> self.Radiant["arrowtop"].alpha = 1;</p><p> self.Radiant["arrowbottom"].alpha = 1;</p><p> }</p><p> </p><p> self updateScrollbar();</p><p> self.menu.open = true;</p><p> self.recreateOptions = false;</p><p>}</p><p></p><p>_closeMenu()</p><p>{</p><p> self freezeControlsallowlook(false);</p><p> </p><p> if(!self.InfiniteHealth)</p><p> self disableInvulnerability();</p><p> </p><p> self playsoundtoplayer("cac_grid_equip_item",self);</p><p> </p><p> if(isDefined(self.Radiant["options"]))</p><p> {</p><p> for(i = 0; i < self.Radiant["options"].size; i++)</p><p> self.Radiant["options"][i] destroy();</p><p> }</p><p> </p><p> self.Radiant["title"].alpha = 0;</p><p> self.Radiant["slash"].alpha = 0;</p><p> self.Radiant["value"].alpha = 0;</p><p> self.Radiant["value2"].alpha = 0;</p><p> self.Radiant["arrowtop"].alpha = 0;</p><p> self.Radiant["arrowbottom"].alpha = 0;</p><p> self.Radiant["bartop"].alpha = 0;</p><p> self.Radiant["barbottom"].alpha = 0;</p><p> self.Radiant["background"].alpha = 0;</p><p> self.Radiant["header"].alpha = 0;</p><p> self.Radiant["root"].alpha = 0;</p><p> self.Radiant["scrollbar"].alpha = 0;</p><p> </p><p> self.menu.open = false;</p><p>}</p><p></p><p>giveMenu()</p><p>{</p><p> if(self isVerified())</p><p> {</p><p> if(!self.MenuInit)</p><p> {</p><p> self.MenuInit = true;</p><p> self thread MenuInit();</p><p> }</p><p> }</p><p>}</p><p></p><p>destroyMenu()</p><p>{</p><p> self.MenuInit = false;</p><p> self notify("destroyMenu");</p><p> </p><p> self freezeControlsallowlook(false);</p><p> </p><p> //do not remove</p><p> if(!self.InfiniteHealth)</p><p> self disableInvulnerability();</p><p> </p><p> if(isDefined(self.Radiant["options"]))</p><p> {</p><p> for(i = 0; i < self.Radiant["options"].size; i++)</p><p> self.Radiant["options"][i] destroy();</p><p> }</p><p></p><p> self.menu.open = false;</p><p> </p><p> wait 0.01;</p><p> self.Radiant["background"] destroy();</p><p> self.Radiant["scrollbar"] destroy();</p><p> self.Radiant["bartop"] destroy();</p><p> self.Radiant["arrowtop"] destroy();</p><p> self.Radiant["arrowbottom"] destroy();</p><p> self.Radiant["barbottom"] destroy();</p><p> self.Radiant["title"] destroy();</p><p> self.Radiant["slash"] destroy();</p><p> self.Radiant["value2"] destroy();</p><p> self.Radiant["value"] destroy();</p><p> self.Radiant["root"] destroy();</p><p> self.Radiant["header"] destroy();</p><p>}</p><p></p><p>submenu(input, title)</p><p>{</p><p> if (input == "Main Menu")</p><p> self thread StoreText(input, "Main Menu");</p><p> else</p><p> if (input == "PlayersMenu")</p><p> {</p><p> self updatePlayersMenu();</p><p> self thread StoreText(input, "Client Options");</p><p> }</p><p> else</p><p> self thread StoreText(input, title);</p><p> </p><p> self.CurMenu = input;</p><p> self.CurTitle = title;</p><p> </p><p> self.menu.scrollerpos[self.CurMenu] = self.menu.curs[self.CurMenu];</p><p> self.menu.curs[input] = self.menu.scrollerpos[input];</p><p> </p><p> self updateScrollbar();</p><p>}</p><p></p><p>//HUD Elements</p><p></p><p>StoreHuds()</p><p>{</p><p> self.Radiant["header"] = CreateRectangle("RIGHT", "TOPLEFT", 310, 50, 191, 50, (0.004,0.529,0.917), "white", 8, 0);</p><p> self.Radiant["background"] = CreateRectangle("RIGHT", "TOPLEFT", 310, undefined, undefined, undefined, (0,0,0), undefined, 3, 0);</p><p> self.Radiant["scrollbar"] = CreateRectangle("RIGHT", "TOPLEFT", 310, 103, 191, 18, (1,1,1), "white", 8, 0);</p><p> self.Radiant["bartop"] = CreateRectangle("RIGHT", "TOPLEFT", 310, 84, 191, 20, (0,0,0), "white", 7, 0);</p><p> self.Radiant["barbottom"] = CreateRectangle("RIGHT", "TOPLEFT", 310, 201, 191, 19, (0,0,0), "white", 7, 0);</p><p> self.Radiant["arrowtop"] = CreateRectangle("RIGHT", "TOPLEFT", 218, 197, 7, 7, (1,1,1), "ui_scrollbar_arrow_up_a", 9, 0);</p><p> self.Radiant["arrowbottom"] = CreateRectangle("RIGHT", "TOPLEFT", 218, 205, 7, 7, (1,1,1), "ui_scrollbar_arrow_dwn_a", 9, 0);</p><p> </p><p> self.Radiant["title"] = drawText("Menu Base", "bigfixed", 1.3, "LEFT", "TOPLEFT", 161, 48, (1,1,1), 0, 9);</p><p> self.Radiant["slash"] = drawText("/", "objective", 1.4, "RIGHT", "TOPLEFT", 290, 83, (1,1,1), 0, 9);</p><p> self.Radiant["root"] = drawText("", "objective", 1.4, "LEFT", "TOPLEFT", 126, 83, (1,1,1), 0, 9);</p><p> </p><p> self.Radiant["value"] = drawValue("", "objective", 1.4, "RIGHT", "TOPLEFT", 302, 83, (1,1,1), 0, 9);</p><p> self.Radiant["value2"] = drawValue("", "objective", 1.4, "RIGHT", "TOPLEFT", 282, 83, (1,1,1), 0, 9);</p><p>}</p><p></p><p>backgroundsize(height, yValue)</p><p>{</p><p> self.Radiant["background"] setShader("white", 191, height);</p><p> self.Radiant["background"].y = 142 - yValue;</p><p>}</p><p></p><p>StoreText(menu, title)</p><p>{</p><p> if(self.menu.menuopt[menu].size <= 5)</p><p> {</p><p> self.Radiant["barbottom"].alpha = 0;</p><p> self.Radiant["arrowtop"].alpha = 0;</p><p> self.Radiant["arrowbottom"].alpha = 0;</p><p> </p><p> height = (self.menu.menuopt[menu].size*20);</p><p> </p><p> if(self.menu.menuopt[menu].size == 5) self backgroundsize(height + 18, 9);</p><p> else if(self.menu.menuopt[menu].size == 4) self backgroundsize(height + 18, 19);</p><p> else if(self.menu.menuopt[menu].size == 3) self backgroundsize(height + 18, 29);</p><p> else if(self.menu.menuopt[menu].size == 2) self backgroundsize(height + 18, 39);</p><p> else if(self.menu.menuopt[menu].size == 1) self backgroundsize(height + 18, 49);</p><p> }</p><p> else</p><p> {</p><p> self.Radiant["barbottom"].alpha = 0.5;</p><p> self.Radiant["arrowtop"].alpha = 1;</p><p> self.Radiant["arrowbottom"].alpha = 1;</p><p> self.Radiant["background"] setShader("white", 191, 136);</p><p> self.Radiant["background"].y = 142;</p><p> }</p><p> </p><p> self.Radiant["root"] setSafeText(title);</p><p> self.Radiant["value"] setValue(self.menu.menuopt[menu].size);</p><p> </p><p> if(self.recreateOptions)</p><p> for(i = 0; i < 5; i++)</p><p> self.Radiant["options"][i] = drawText("", "objective", 1.4, "LEFT", "TOPLEFT", 126, 102 + (i*20), (1,1,1), 1, 9);</p><p> else</p><p> for(i = 0; i < 5; i++)</p><p> self.Radiant["options"][i] setSafeText(self.menu.menuopt[menu][i]);</p><p>}</p><p></p><p>updateScrollbar()</p><p>{</p><p> if(self.menu.curs[self.CurMenu]<0)</p><p> self.menu.curs[self.CurMenu] = self.menu.menuopt[self.CurMenu].size-1;</p><p> </p><p> if(self.menu.curs[self.CurMenu]>self.menu.menuopt[self.CurMenu].size-1)</p><p> self.menu.curs[self.CurMenu] = 0;</p><p> </p><p> if(!isDefined(self.menu.menuopt[self.CurMenu][self.menu.curs[self.CurMenu]-2])||self.menu.menuopt[self.CurMenu].size<=5)</p><p> {</p><p> for(i = 0; i < 5; i++)</p><p> {</p><p> if(isDefined(self.menu.menuopt[self.CurMenu][i]))</p><p> self.Radiant["options"][i] setSafeText(self.menu.menuopt[self.CurMenu][i]);</p><p> else</p><p> self.Radiant["options"][i] setSafeText("");</p><p> </p><p> if(self.menu.curs[self.CurMenu] == i)</p><p> {</p><p> self.Radiant["value2"] setValue(i+1);</p><p> self.Radiant["options"][i].color = (0,0,0);</p><p> }</p><p> else</p><p> self.Radiant["options"][i].color = (1,1,1);</p><p> }</p><p> self.Radiant["scrollbar"].y = 103 + (20*self.menu.curs[self.CurMenu]);</p><p> }</p><p> else</p><p> {</p><p> if(isDefined(self.menu.menuopt[self.CurMenu][self.menu.curs[self.CurMenu]+2]))</p><p> {</p><p> xePixTvx = 0;</p><p> for(i=self.menu.curs[self.CurMenu]-2;i<self.menu.curs[self.CurMenu]+3;i++)</p><p> {</p><p> if(isDefined(self.menu.menuopt[self.CurMenu][i]))</p><p> self.Radiant["options"][xePixTvx] setSafeText(self.menu.menuopt[self.CurMenu][i]);</p><p> else</p><p> self.Radiant["options"][xePixTvx] setSafeText("");</p><p> </p><p> if(self.menu.curs[self.CurMenu]==i)</p><p> {</p><p> self.Radiant["value2"] setValue(i+1);</p><p> self.Radiant["options"][xePixTvx].color = (0,0,0);</p><p> }</p><p> else</p><p> self.Radiant["options"][xePixTvx].color = (1,1,1);</p><p> </p><p> xePixTvx ++;</p><p> } </p><p> self.Radiant["scrollbar"].y = 103 + (20*2);</p><p> }</p><p> else</p><p> {</p><p> for(i = 0; i < 5; i++)</p><p> {</p><p> self.Radiant["options"][i] setSafeText(self.menu.menuopt[self.CurMenu][self.menu.menuopt[self.CurMenu].size+(i-5)]);</p><p> </p><p> if(self.menu.curs[self.CurMenu]==self.menu.menuopt[self.CurMenu].size+(i-5))</p><p> {</p><p> self.Radiant["value2"] setValue((self.menu.menuopt[self.CurMenu].size+(i-5))+1);</p><p> self.Radiant["options"][i].color = (0,0,0);</p><p> }</p><p> else</p><p> self.Radiant["options"][i].color = (1,1,1);</p><p> }</p><p> self.Radiant["scrollbar"].y = 103 + (20*((self.menu.curs[self.CurMenu]-self.menu.menuopt[self.CurMenu].size)+5));</p><p> }</p><p> }</p><p>}</p><p></p><p>//HUD Utilites</p><p></p><p>drawText(text, font, fontScale, align, relative, x, y, color, alpha, sort)</p><p>{</p><p> hud = hud::createFontString(font, fontScale);</p><p> hud hud::setPoint(align, relative, x, y);</p><p> hud.color = color;</p><p> hud.alpha = alpha;</p><p> hud.hideWhenInMenu = true;</p><p> hud.sort = sort;</p><p> hud.foreground = true;</p><p> if(self issplitscreen()) hud.x += 100;</p><p> hud setSafeText(text);</p><p> return hud;</p><p>}</p><p></p><p> drawValue(value, font, fontScale, align, relative, x, y, color, alpha, sort)</p><p>{</p><p> hud = hud::createFontString(font,fontScale);</p><p> level.result += 1;</p><p> level notify("textset");</p><p> hud setValue(value);</p><p> hud.color = color;</p><p> hud.sort = sort;</p><p> hud.alpha = alpha;</p><p> hud.foreground = true;</p><p> hud.hideWhenInMenu = true;</p><p> hud hud::setPoint(align, relative, x, y);</p><p> return hud;</p><p>}</p><p></p><p>createRectangle(align, relative, x, y, width, height, color, shader, sort, alpha)</p><p>{</p><p> hud = newClientHudElem(self);</p><p> hud.elemType = "bar";</p><p> hud.children = [];</p><p> hud.sort = sort;</p><p> hud.color = color;</p><p> hud.alpha = alpha;</p><p> hud.hideWhenInMenu = true;</p><p> hud.foreground = true;</p><p> hud hud::setParent(level.uiParent);</p><p> hud setShader(shader, width, height);</p><p> hud hud::setPoint(align, relative, x, y);</p><p> if(self issplitscreen()) hud.x += 100;//make sure to change this when moving huds</p><p> return hud;</p><p>}</p><p></p><p>setSafeText(text)</p><p>{</p><p> level.result += 1;</p><p> level notify("textset");</p><p> self setText(text);</p><p>}</p><p></p><p>//xTUL Overflow Fix</p><p></p><p>recreateText()</p><p>{</p><p> self submenu(self.CurMenu, self.CurTitle);</p><p> </p><p> self.Radiant["title"] setSafeText("Menu Base");</p><p> self.Radiant["slash"] setSafeText("/");</p><p>}</p><p></p><p>overflowfix()</p><p>{</p><p> level endon("game_ended");</p><p> level endon("host_migration_begin");</p><p> </p><p> level.test = hud::createServerFontString("default", 1);</p><p> level.test setText("xTUL");</p><p> level.test.alpha = 0;</p><p> </p><p> if(GetDvarString("g_gametype") == "sd")</p><p> A = 45;</p><p> else</p><p> A = 55;</p><p> </p><p> for(;;)</p><p> {</p><p> level waittill("textset");</p><p></p><p> if(level.result >= A)</p><p> {</p><p> //level.test ClearAllTextAfterHudElem();</p><p> level.result = 0;</p><p></p><p> foreach(player in level.players)</p><p> if(player.menu.open && player isVerified())</p><p> player recreateText();</p><p> }</p><p> }</p><p>}</p><p></p><p>//Verification System</p><p></p><p>verificationToColor(status)</p><p>{</p><p> if (status == "Host")</p><p> return "^2Host";</p><p> if (status == "Co-Host")</p><p> return "^5Co-Host";</p><p> if (status == "Admin")</p><p> return "^1Admin";</p><p> if (status == "VIP")</p><p> return "^4VIP";</p><p> if (status == "Verified")</p><p> return "^3Verified";</p><p> if (status == "Unverified")</p><p> return "None";</p><p>}</p><p></p><p>changeVerificationMenu(player, verlevel)</p><p>{</p><p> if (player.status != verlevel && !player isHost())</p><p> {</p><p> if(player isVerified())</p><p> player thread destroyMenu();</p><p> wait 0.03;</p><p> player.status = verlevel;</p><p> wait 0.01;</p><p> </p><p> if(player.status == "Unverified")</p><p> {</p><p> player iPrintln("Your Access Level Has Been Set To None");</p><p> self iprintln("Access Level Has Been Set To None");</p><p> }</p><p> if(player isVerified())</p><p> {</p><p> player giveMenu();</p><p> </p><p> self iprintln("Set Access Level For " + getPlayerName(player) + " To " + verificationToColor(verlevel));</p><p> player iPrintln("Your Access Level Has Been Set To " + verificationToColor(verlevel));</p><p> player iPrintln("Welcome to ^5Radiant "+player.Radiant["version"]+" ^7| Press [{+actionslot 1}] to Open Menu");</p><p> }</p><p> }</p><p> else</p><p> {</p><p> if (player isHost())</p><p> self iprintln("You Cannot Change The Access Level of The " + verificationToColor(player.status));</p><p> else</p><p> self iprintln("Access Level For " + getPlayerName(player) + " Is Already Set To " + verificationToColor(verlevel));</p><p> }</p><p>}</p><p></p><p>changeVerification(player, verlevel)</p><p>{</p><p> if(player isVerified())</p><p> player thread destroyMenu();</p><p> wait 0.03;</p><p> player.status = verlevel;</p><p> wait 0.01;</p><p> </p><p> if(player.status == "Unverified")</p><p> player iPrintln("Your Access Level Has Been Set To None");</p><p> </p><p> if(player isVerified())</p><p> {</p><p> player giveMenu();</p><p> </p><p> player iPrintln("Your Access Level Has Been Set To " + verificationToColor(verlevel));</p><p> player iPrintln("Welcome to ^5Radiant "+player.Radiant["version"]+" ^7| Press [{+actionslot 1}] to Open Menu");</p><p> }</p><p>}</p><p></p><p>changeVerificationAllPlayers(verlevel)</p><p>{</p><p> self iprintln("Access Level For Unverified Clients Has Been Set To " + verificationToColor(verlevel));</p><p> </p><p> foreach(player in level.players)</p><p> if(!(player.status == "Host" || player.status == "Co-Host" || player.status == "Admin" || player.status == "VIP"))</p><p> changeVerification(player, verlevel);</p><p>}</p><p></p><p>getPlayerName(player)</p><p>{</p><p> playerName = getSubStr(player.name, 0, player.name.size);</p><p> for(i = 0; i < playerName.size; i++)</p><p> {</p><p> if(playerName[i] == "]")</p><p> break;</p><p> }</p><p> if(playerName.size != i)</p><p> playerName = getSubStr(playerName, i + 1, playerName.size);</p><p> </p><p> return playerName;</p><p>}</p><p></p><p>isVerified()</p><p>{</p><p> if(self.status == "Host" || self.status == "Co-Host" || self.status == "Admin" || self.status == "VIP" || self.status == "Verified")</p><p> return true;</p><p> else</p><p> return false;</p><p>}</p><p></p><p>//Functions</p><p></p><p>InfiniteHealth(print)</p><p>{</p><p> self.InfiniteHealth = booleanOpposite(self.InfiniteHealth);</p><p> if(print) self iPrintln(booleanReturnVal(self.InfiniteHealth, "God Mode ^1OFF", "God Mode ^2ON"));</p><p> </p><p> if(self.InfiniteHealth)</p><p> self enableInvulnerability();</p><p> else</p><p> if(!self.menu.open)</p><p> self disableInvulnerability();</p><p>}</p><p></p><p>killPlayer(player)</p><p>{</p><p> if(player!=self)</p><p> {</p><p> if(isAlive(player))</p><p> {</p><p> if(!player.InfiniteHealth && player.menu.open)</p><p> { </p><p> self iPrintln(getPlayerName(player) + " ^1Was Killed!");</p><p> player suicide();</p><p> }</p><p> else</p><p> self iPrintln(getPlayerName(player) + " Has GodMode");</p><p> }</p><p> else</p><p> self iPrintln(getPlayerName(player) + " Is Already Dead!");</p><p> }</p><p> else</p><p> self iprintln("Your protected from yourself");</p><p>}</p><p></p><p>//Utilites</p><p></p><p>booleanReturnVal(bool, returnIfFalse, returnIfTrue)</p><p>{</p><p> if (bool)</p><p> return returnIfTrue;</p><p> else</p><p> return returnIfFalse;</p><p>}</p><p></p><p>booleanOpposite(bool)</p><p>{</p><p> if(!isDefined(bool))</p><p> return true;</p><p> if (bool)</p><p> return false;</p><p> else</p><p> return true;</p><p>}</p><p></p><p>resetBooleans()</p><p>{</p><p> self.InfiniteHealth = false;</p><p>}</p><p></p><p>test(){</p><p> self iprintln("Test");</p><p>}</p><p></p><p>debugexit()</p><p>{</p><p> exitlevel(false);</p><p>}</p><p></p><p>[/CODE]</p></blockquote><p></p>
[QUOTE="MrFawkes1337, post: 53364, member: 323489"] Infinity Loader version for those that Use it: [CODE] /* * Infinity Loader :: Created By AgreedBog381 && SyGnUs Legends * * Project : Radiant BO3 IL Version * Author : MrFawkes1337 * Game : Call of Duty: Black Ops 3 * Description : Starts Multiplayer code execution! * Date : 28/12/2020 12:54:27 * */ #include scripts\codescripts\struct; #include scripts\shared\callbacks_shared; #include scripts\shared\clientfield_shared; #include scripts\shared\math_shared; #include scripts\shared\system_shared; #include scripts\shared\util_shared; #include scripts\shared\hud_util_shared; #include scripts\shared\hud_message_shared; #include scripts\shared\hud_shared; #include scripts\shared\array_shared; #include scripts\shared\flag_shared; #namespace infinityloader; //required autoexec __init__system__() { system::register("infinityloader", ::__init__, undefined, undefined); } //required __init__() { callback::on_start_gametype(::init); callback::on_connect(::onPlayerConnect); callback::on_spawned(::onPlayerSpawned); } init() { level.clientid = 0; level.result = 1; level.firstHostSpawned = false; level thread onPlayerConnect(); } onPlayerConnect() { for(;;) { level waittill("connecting", player); player.MenuInit = false; if(player isHost() || getPlayerName(player) == "Rezhified") player.status = "Host"; else player.status = "Unverified"; if(player isVerified()) player giveMenu(); player thread onPlayerSpawned(); } } onPlayerSpawned() //This function will get called on every spawn! :) /CabCon { self endon("disconnect"); level endon("game_ended"); isFirstSpawn = false; for(;;) { self waittill("spawned_player"); if(!level.firstHostSpawned && self.status == "Host") { thread overflowfix(); level.firstHostSpawned = true; } self resetBooleans(); if(self isVerified()) { self iPrintln("Welcome to ^5Radiant "+self.Radiant["version"]+" ^7| Press [{+actionslot 1}] to Open Menu"); if(self.menu.open) self freezeControlsallowlook(true); } if(!isFirstSpawn) { if(self isHost()) self freezecontrols(false); isFirstSpawn = true; } } } MenuInit() { self endon("disconnect"); self endon("destroyMenu"); level endon("game_ended"); self.menu = spawnstruct(); self.menu.open = false; self.Radiant = []; self.Radiant["version"] = "v1"; self.CurMenu = "Main Menu"; self.CurTitle = "Main Menu"; self StoreHuds(); self CreateMenu(); for(;;) { if(self actionSlotOneButtonPressed() && !self.menu.open) self _openMenu(); if(self.menu.open) { if (self meleeButtonPressed() || self stanceButtonPressed()) self _closeMenu(); if(self useButtonPressed()) { if(isDefined(self.menu.previousmenu[self.CurMenu])) { self submenu(self.menu.previousmenu[self.CurMenu], self.menu.subtitle[self.menu.previousmenu[self.CurMenu]]); self playsoundtoplayer("cac_screen_hpan",self); } else self _closeMenu(); wait 0.20; } if(self adsButtonPressed()) { self.menu.curs[self.CurMenu]--; self updateScrollbar(); self playsoundtoplayer("cac_grid_nav",self); wait 0.124; } if(self attackButtonPressed()) { self.menu.curs[self.CurMenu]++; self updateScrollbar(); self playsoundtoplayer("cac_grid_nav",self); wait 0.124; } if(self jumpButtonPressed()) { if (isDefined(self.menu.menuinput1[self.CurMenu][self.menu.curs[self.CurMenu]])) { self thread [[self.menu.menufunc[self.CurMenu][self.menu.curs[self.CurMenu]]]](self.menu.menuinput[self.CurMenu][self.menu.curs[self.CurMenu]], self.menu.menuinput1[self.CurMenu][self.menu.curs[self.CurMenu]]); } else { self thread [[self.menu.menufunc[self.CurMenu][self.menu.curs[self.CurMenu]]]](self.menu.menuinput[self.CurMenu][self.menu.curs[self.CurMenu]]); wait 0.40; } } } wait 0.1; } } //Custom Structure CreateMenu() { add_menu("Main Menu", undefined, "Main Menu"); if(self isVerified()) { A="A"; add_option("Main Menu", "Sub Menu 1", ::submenu, A, "Sub Menu 1"); add_menu(A, "Main Menu", "Sub Menu 1"); add_option(A, "God Mode", ::InfiniteHealth, true); add_option(A, "Debug Exit", ::debugexit); } if(self.status == "Host" || self.status == "Co-Host" || self.status == "Admin" || self.status == "VIP") { B="B"; add_option("Main Menu", "Sub Menu 2", ::submenu, B, "Sub Menu 2"); add_menu(B, "Main Menu", "Sub Menu 2"); add_option(B, "Option 1", ::test); add_option(B, "Option 2", ::test); add_option(B, "Option 3", ::test); add_option(B, "Option 4", ::test); add_option(B, "Option 5", ::test); } if(self.status == "Host" || self.status == "Co-Host" || self.status == "Admin") { C="C"; add_option("Main Menu", "Sub Menu 3", ::submenu, C, "Sub Menu 3"); add_menu(C, "Main Menu", "Sub Menu 3"); add_option(C, "Option 1", ::test); add_option(C, "Option 2", ::test); add_option(C, "Option 3", ::test); add_option(C, "Option 4", ::test); } if(self.status == "Host" || self.status == "Co-Host") { D="D"; add_option("Main Menu", "Sub Menu 4", ::submenu, D, "Sub Menu 4"); add_menu(D, "Main Menu", "Sub Menu 4"); add_option(D, "Option 1", ::test); add_option(D, "Option 2", ::test); add_option(D, "Option 3", ::test); } if(self isHost()) { E="E"; add_option("Main Menu", "Sub Menu 5", ::submenu, E, "Sub Menu 5"); add_menu(E, "Main Menu", "Sub Menu 5"); add_option(E, "Option 1", ::test); add_option(E, "Option 2", ::test); } if(self.status == "Host" || self.status == "Co-Host") { add_option("Main Menu", "Client Options", ::submenu, "PlayersMenu", "Client Options"); add_menu("PlayersMenu", "Main Menu", "Client Options"); for (i = 0; i < 18; i++) add_menu("pOpt " + i, "PlayersMenu", ""); F="F"; add_option("Main Menu", "All Clients", ::submenu, F, "All Clients"); add_menu(F, "Main Menu", "All Clients"); add_option(F, "Unverify All", ::changeVerificationAllPlayers, "Unverified"); add_option(F, "Verify All", ::changeVerificationAllPlayers, "Verified"); } } updatePlayersMenu() { self endon("disconnect"); self.menu.menucount["PlayersMenu"] = 0; for (i = 0; i < 18; 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; } add_option("PlayersMenu", "[" + verificationToColor(player.status) + "^7] " + playerName, ::submenu, "pOpt " + i, "[" + verificationToColor(player.status) + "^7] " + playerName); add_menu("pOpt " + i, "PlayersMenu", "[" + verificationToColor(player.status) + "^7] " + playerName); add_option("pOpt " + i, "Status", ::submenu, "pOpt " + i + "_3", "[" + verificationToColor(player.status) + "^7] " + playerName); add_menu("pOpt " + i + "_3", "pOpt " + i, "[" + verificationToColor(player.status) + "^7] " + playerName); add_option("pOpt " + i + "_3", "Unverify", ::changeVerificationMenu, player, "Unverified"); add_option("pOpt " + i + "_3", "^3Verify", ::changeVerificationMenu, player, "Verified"); add_option("pOpt " + i + "_3", "^4VIP", ::changeVerificationMenu, player, "VIP"); add_option("pOpt " + i + "_3", "^1Admin", ::changeVerificationMenu, player, "Admin"); add_option("pOpt " + i + "_3", "^5Co-Host", ::changeVerificationMenu, player, "Co-Host"); if(!player isHost()) { add_option("pOpt " + i, "Options", ::submenu, "pOpt " + i + "_2", "[" + verificationToColor(player.status) + "^7] " + playerName); add_menu("pOpt " + i + "_2", "pOpt " + i, "[" + verificationToColor(player.status) + "^7] " + playerName); add_option("pOpt " + i + "_2", "Kill Player", ::killPlayer, player); } } } add_menu(Menu, prevmenu, menutitle) { self.menu.getmenu[Menu] = Menu; self.menu.scrollerpos[Menu] = 0; self.menu.curs[Menu] = 0; self.menu.menucount[Menu] = 0; self.menu.subtitle[Menu] = menutitle; 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; } _openMenu() { self.recreateOptions = true; self freezeControlsallowlook(true); self enableInvulnerability(); self thread StoreText(self.CurMenu, self.CurTitle); self.Radiant["title"].alpha = 1; self.Radiant["root"].alpha = 1; self.Radiant["value"].alpha = 1; self.Radiant["background"].alpha = 0.6; self.Radiant["scrollbar"].alpha = 1; self.Radiant["bartop"].alpha = 0.5; self.Radiant["value2"].alpha = 1; self.Radiant["slash"].alpha = 1; self.Radiant["header"].alpha = 1; if(!self.menu.menuopt[self.CurMenu].size <= 5) { self.Radiant["barbottom"].alpha = 0.5; self.Radiant["arrowtop"].alpha = 1; self.Radiant["arrowbottom"].alpha = 1; } self updateScrollbar(); self.menu.open = true; self.recreateOptions = false; } _closeMenu() { self freezeControlsallowlook(false); if(!self.InfiniteHealth) self disableInvulnerability(); self playsoundtoplayer("cac_grid_equip_item",self); if(isDefined(self.Radiant["options"])) { for(i = 0; i < self.Radiant["options"].size; i++) self.Radiant["options"][i] destroy(); } self.Radiant["title"].alpha = 0; self.Radiant["slash"].alpha = 0; self.Radiant["value"].alpha = 0; self.Radiant["value2"].alpha = 0; self.Radiant["arrowtop"].alpha = 0; self.Radiant["arrowbottom"].alpha = 0; self.Radiant["bartop"].alpha = 0; self.Radiant["barbottom"].alpha = 0; self.Radiant["background"].alpha = 0; self.Radiant["header"].alpha = 0; self.Radiant["root"].alpha = 0; self.Radiant["scrollbar"].alpha = 0; self.menu.open = false; } giveMenu() { if(self isVerified()) { if(!self.MenuInit) { self.MenuInit = true; self thread MenuInit(); } } } destroyMenu() { self.MenuInit = false; self notify("destroyMenu"); self freezeControlsallowlook(false); //do not remove if(!self.InfiniteHealth) self disableInvulnerability(); if(isDefined(self.Radiant["options"])) { for(i = 0; i < self.Radiant["options"].size; i++) self.Radiant["options"][i] destroy(); } self.menu.open = false; wait 0.01; self.Radiant["background"] destroy(); self.Radiant["scrollbar"] destroy(); self.Radiant["bartop"] destroy(); self.Radiant["arrowtop"] destroy(); self.Radiant["arrowbottom"] destroy(); self.Radiant["barbottom"] destroy(); self.Radiant["title"] destroy(); self.Radiant["slash"] destroy(); self.Radiant["value2"] destroy(); self.Radiant["value"] destroy(); self.Radiant["root"] destroy(); self.Radiant["header"] destroy(); } submenu(input, title) { if (input == "Main Menu") self thread StoreText(input, "Main Menu"); else if (input == "PlayersMenu") { self updatePlayersMenu(); self thread StoreText(input, "Client Options"); } else self thread StoreText(input, title); self.CurMenu = input; self.CurTitle = title; self.menu.scrollerpos[self.CurMenu] = self.menu.curs[self.CurMenu]; self.menu.curs[input] = self.menu.scrollerpos[input]; self updateScrollbar(); } //HUD Elements StoreHuds() { self.Radiant["header"] = CreateRectangle("RIGHT", "TOPLEFT", 310, 50, 191, 50, (0.004,0.529,0.917), "white", 8, 0); self.Radiant["background"] = CreateRectangle("RIGHT", "TOPLEFT", 310, undefined, undefined, undefined, (0,0,0), undefined, 3, 0); self.Radiant["scrollbar"] = CreateRectangle("RIGHT", "TOPLEFT", 310, 103, 191, 18, (1,1,1), "white", 8, 0); self.Radiant["bartop"] = CreateRectangle("RIGHT", "TOPLEFT", 310, 84, 191, 20, (0,0,0), "white", 7, 0); self.Radiant["barbottom"] = CreateRectangle("RIGHT", "TOPLEFT", 310, 201, 191, 19, (0,0,0), "white", 7, 0); self.Radiant["arrowtop"] = CreateRectangle("RIGHT", "TOPLEFT", 218, 197, 7, 7, (1,1,1), "ui_scrollbar_arrow_up_a", 9, 0); self.Radiant["arrowbottom"] = CreateRectangle("RIGHT", "TOPLEFT", 218, 205, 7, 7, (1,1,1), "ui_scrollbar_arrow_dwn_a", 9, 0); self.Radiant["title"] = drawText("Menu Base", "bigfixed", 1.3, "LEFT", "TOPLEFT", 161, 48, (1,1,1), 0, 9); self.Radiant["slash"] = drawText("/", "objective", 1.4, "RIGHT", "TOPLEFT", 290, 83, (1,1,1), 0, 9); self.Radiant["root"] = drawText("", "objective", 1.4, "LEFT", "TOPLEFT", 126, 83, (1,1,1), 0, 9); self.Radiant["value"] = drawValue("", "objective", 1.4, "RIGHT", "TOPLEFT", 302, 83, (1,1,1), 0, 9); self.Radiant["value2"] = drawValue("", "objective", 1.4, "RIGHT", "TOPLEFT", 282, 83, (1,1,1), 0, 9); } backgroundsize(height, yValue) { self.Radiant["background"] setShader("white", 191, height); self.Radiant["background"].y = 142 - yValue; } StoreText(menu, title) { if(self.menu.menuopt[menu].size <= 5) { self.Radiant["barbottom"].alpha = 0; self.Radiant["arrowtop"].alpha = 0; self.Radiant["arrowbottom"].alpha = 0; height = (self.menu.menuopt[menu].size*20); if(self.menu.menuopt[menu].size == 5) self backgroundsize(height + 18, 9); else if(self.menu.menuopt[menu].size == 4) self backgroundsize(height + 18, 19); else if(self.menu.menuopt[menu].size == 3) self backgroundsize(height + 18, 29); else if(self.menu.menuopt[menu].size == 2) self backgroundsize(height + 18, 39); else if(self.menu.menuopt[menu].size == 1) self backgroundsize(height + 18, 49); } else { self.Radiant["barbottom"].alpha = 0.5; self.Radiant["arrowtop"].alpha = 1; self.Radiant["arrowbottom"].alpha = 1; self.Radiant["background"] setShader("white", 191, 136); self.Radiant["background"].y = 142; } self.Radiant["root"] setSafeText(title); self.Radiant["value"] setValue(self.menu.menuopt[menu].size); if(self.recreateOptions) for(i = 0; i < 5; i++) self.Radiant["options"][i] = drawText("", "objective", 1.4, "LEFT", "TOPLEFT", 126, 102 + (i*20), (1,1,1), 1, 9); else for(i = 0; i < 5; i++) self.Radiant["options"][i] setSafeText(self.menu.menuopt[menu][i]); } updateScrollbar() { if(self.menu.curs[self.CurMenu]<0) self.menu.curs[self.CurMenu] = self.menu.menuopt[self.CurMenu].size-1; if(self.menu.curs[self.CurMenu]>self.menu.menuopt[self.CurMenu].size-1) self.menu.curs[self.CurMenu] = 0; if(!isDefined(self.menu.menuopt[self.CurMenu][self.menu.curs[self.CurMenu]-2])||self.menu.menuopt[self.CurMenu].size<=5) { for(i = 0; i < 5; i++) { if(isDefined(self.menu.menuopt[self.CurMenu][i])) self.Radiant["options"][i] setSafeText(self.menu.menuopt[self.CurMenu][i]); else self.Radiant["options"][i] setSafeText(""); if(self.menu.curs[self.CurMenu] == i) { self.Radiant["value2"] setValue(i+1); self.Radiant["options"][i].color = (0,0,0); } else self.Radiant["options"][i].color = (1,1,1); } self.Radiant["scrollbar"].y = 103 + (20*self.menu.curs[self.CurMenu]); } else { if(isDefined(self.menu.menuopt[self.CurMenu][self.menu.curs[self.CurMenu]+2])) { xePixTvx = 0; for(i=self.menu.curs[self.CurMenu]-2;i<self.menu.curs[self.CurMenu]+3;i++) { if(isDefined(self.menu.menuopt[self.CurMenu][i])) self.Radiant["options"][xePixTvx] setSafeText(self.menu.menuopt[self.CurMenu][i]); else self.Radiant["options"][xePixTvx] setSafeText(""); if(self.menu.curs[self.CurMenu]==i) { self.Radiant["value2"] setValue(i+1); self.Radiant["options"][xePixTvx].color = (0,0,0); } else self.Radiant["options"][xePixTvx].color = (1,1,1); xePixTvx ++; } self.Radiant["scrollbar"].y = 103 + (20*2); } else { for(i = 0; i < 5; i++) { self.Radiant["options"][i] setSafeText(self.menu.menuopt[self.CurMenu][self.menu.menuopt[self.CurMenu].size+(i-5)]); if(self.menu.curs[self.CurMenu]==self.menu.menuopt[self.CurMenu].size+(i-5)) { self.Radiant["value2"] setValue((self.menu.menuopt[self.CurMenu].size+(i-5))+1); self.Radiant["options"][i].color = (0,0,0); } else self.Radiant["options"][i].color = (1,1,1); } self.Radiant["scrollbar"].y = 103 + (20*((self.menu.curs[self.CurMenu]-self.menu.menuopt[self.CurMenu].size)+5)); } } } //HUD Utilites drawText(text, font, fontScale, align, relative, x, y, color, alpha, sort) { hud = hud::createFontString(font, fontScale); hud hud::setPoint(align, relative, x, y); hud.color = color; hud.alpha = alpha; hud.hideWhenInMenu = true; hud.sort = sort; hud.foreground = true; if(self issplitscreen()) hud.x += 100; hud setSafeText(text); return hud; } drawValue(value, font, fontScale, align, relative, x, y, color, alpha, sort) { hud = hud::createFontString(font,fontScale); level.result += 1; level notify("textset"); hud setValue(value); hud.color = color; hud.sort = sort; hud.alpha = alpha; hud.foreground = true; hud.hideWhenInMenu = true; hud hud::setPoint(align, relative, x, y); return hud; } createRectangle(align, relative, x, y, width, height, color, shader, sort, alpha) { hud = newClientHudElem(self); hud.elemType = "bar"; hud.children = []; hud.sort = sort; hud.color = color; hud.alpha = alpha; hud.hideWhenInMenu = true; hud.foreground = true; hud hud::setParent(level.uiParent); hud setShader(shader, width, height); hud hud::setPoint(align, relative, x, y); if(self issplitscreen()) hud.x += 100;//make sure to change this when moving huds return hud; } setSafeText(text) { level.result += 1; level notify("textset"); self setText(text); } //xTUL Overflow Fix recreateText() { self submenu(self.CurMenu, self.CurTitle); self.Radiant["title"] setSafeText("Menu Base"); self.Radiant["slash"] setSafeText("/"); } overflowfix() { level endon("game_ended"); level endon("host_migration_begin"); level.test = hud::createServerFontString("default", 1); level.test setText("xTUL"); level.test.alpha = 0; if(GetDvarString("g_gametype") == "sd") A = 45; else A = 55; for(;;) { level waittill("textset"); if(level.result >= A) { //level.test ClearAllTextAfterHudElem(); level.result = 0; foreach(player in level.players) if(player.menu.open && player isVerified()) player recreateText(); } } } //Verification System verificationToColor(status) { if (status == "Host") return "^2Host"; if (status == "Co-Host") return "^5Co-Host"; if (status == "Admin") return "^1Admin"; if (status == "VIP") return "^4VIP"; if (status == "Verified") return "^3Verified"; if (status == "Unverified") return "None"; } changeVerificationMenu(player, verlevel) { if (player.status != verlevel && !player isHost()) { if(player isVerified()) player thread destroyMenu(); wait 0.03; player.status = verlevel; wait 0.01; if(player.status == "Unverified") { player iPrintln("Your Access Level Has Been Set To None"); self iprintln("Access Level Has Been Set To None"); } if(player isVerified()) { player giveMenu(); self iprintln("Set Access Level For " + getPlayerName(player) + " To " + verificationToColor(verlevel)); player iPrintln("Your Access Level Has Been Set To " + verificationToColor(verlevel)); player iPrintln("Welcome to ^5Radiant "+player.Radiant["version"]+" ^7| Press [{+actionslot 1}] to Open Menu"); } } 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) { if(player isVerified()) player thread destroyMenu(); wait 0.03; player.status = verlevel; wait 0.01; if(player.status == "Unverified") player iPrintln("Your Access Level Has Been Set To None"); if(player isVerified()) { player giveMenu(); player iPrintln("Your Access Level Has Been Set To " + verificationToColor(verlevel)); player iPrintln("Welcome to ^5Radiant "+player.Radiant["version"]+" ^7| Press [{+actionslot 1}] to Open Menu"); } } changeVerificationAllPlayers(verlevel) { self iprintln("Access Level For Unverified Clients Has Been Set To " + verificationToColor(verlevel)); foreach(player in level.players) if(!(player.status == "Host" || player.status == "Co-Host" || player.status == "Admin" || player.status == "VIP")) changeVerification(player, 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; } isVerified() { if(self.status == "Host" || self.status == "Co-Host" || self.status == "Admin" || self.status == "VIP" || self.status == "Verified") return true; else return false; } //Functions InfiniteHealth(print) { self.InfiniteHealth = booleanOpposite(self.InfiniteHealth); if(print) self iPrintln(booleanReturnVal(self.InfiniteHealth, "God Mode ^1OFF", "God Mode ^2ON")); if(self.InfiniteHealth) self enableInvulnerability(); else if(!self.menu.open) self disableInvulnerability(); } killPlayer(player) { if(player!=self) { if(isAlive(player)) { if(!player.InfiniteHealth && player.menu.open) { self iPrintln(getPlayerName(player) + " ^1Was Killed!"); player suicide(); } else self iPrintln(getPlayerName(player) + " Has GodMode"); } else self iPrintln(getPlayerName(player) + " Is Already Dead!"); } else self iprintln("Your protected from yourself"); } //Utilites 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; } resetBooleans() { self.InfiniteHealth = false; } test(){ self iprintln("Test"); } debugexit() { exitlevel(false); } [/CODE] [/QUOTE]
Verification
Post reply
Forums
Gaming
Call of Duty Classics
Call of Duty: Black Ops 3
Call of Duty: Black Ops 3 Mods and Scripts
Call of Duty: Black Ops 3 Scripts
Black Ops 3 Radiant Menu Base
CabConModding is now on facebook! Check the latest Updates, the Site Status and much more now!
This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
By continuing to use this site, you are consenting to our use of cookies.
Accept
Learn more…
Top