Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include maps\mp\gametypes\_hud_util;
- #include maps\mp\gametypes\_rank;
- //BO2 GSC Menu Base By Shark
- init()
- {
- level thread onplayerconnect();
- }
- onplayerconnect()
- {
- for(;:wink:
- {
- 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.MenuInit = false;
- for(;:wink:
- {
- self waittill( "spawned_player" );
- self welcomeMessage();
- if( self.status == "Host" || self.status == "CoHost" || self.status == "Admin" || self.status == "VIP" || self.status == "Verified")
- {
- if (!self.MenuInit)
- {
- self.MenuInit = true;
- self thread MenuInit();
- self thread closeMenuOnDeath();
- }
- }
- }
- }
- 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 == "CoHost")
- 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 "^2Host";
- if (status == "CoHost")
- return "^5CoHost";
- if (status == "Admin")
- return "^1Admin";
- if (status == "VIP")
- return "^4VIP";
- if (status == "Verified")
- return "^3Verified";
- else
- return "^7Unverified";
- }
- changeVerificationMenu(player, verlevel)
- {
- if( player.status != verlevel)
- {
- player.status = verlevel;
- self.menu.title destroy();
- self.menu.title = drawText("[" + verificationToColor(player.status) + "^7] " + player.name, "objective", 2, 280, 30, (1, 1, 1), 0, (0, 0.58, 1), 1, 3);
- self.menu.title FadeOverTime(0.3);
- self.menu.title.alpha = 1;
- if(player.status == "Unverified")
- self thread destroyMenu(player);
- player suicide();
- self iPrintln("Set Access Level For " + player.name + " To " + verificationToColor(verlevel));
- player iPrintln("Your Access Level Has Been Set To " + verificationToColor(verlevel));
- }
- else
- {
- self iPrintln("Access Level For " + player.name + " Is Already Set To " + verificationToColor(verlevel));
- }
- }
- changeVerification(player, verlevel)
- {
- player.status = verlevel;
- }
- Iif(bool, rTrue, rFalse)
- {
- if(bool)
- return rTrue;
- else
- return rFalse;
- }
- welcomeMessage()
- {
- notifyData = spawnstruct();
- notifyData.titleText = "^5Welcome " + self.name + " ^6To Dertii Swag V1 "; //Line 1
- notifyData.notifyText = "Your Status Is " + verificationToColor(self.status); //Line 2
- notifyData.glowColor = (0.3, 0.6, 0.3); //RGB Color array divided by 100
- notifyData.duration = 5; //Change Duration
- notifyData.font = "objective"; //font
- 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", "Main Mods Menu", ::confused:ubmenu, "SubMenu1", "Sub Menu 1");
- self add_option("Main Menu", "VIP Menu", ::confused:ubmenu, "SubMenu2", "Sub Menu 2");
- self add_option("Main Menu", "Fun Mods Menu", ::confused:ubmenu, "SubMenu3", "Sub Menu 3");
- self add_option("Main Menu", "Players", ::confused:ubmenu, "PlayersMenu", "Players");
- self add_menu("SubMenu1", "Main Menu", "Admin");
- self add_option("SubMenu1", "God Mod", ::Toggle_God);
- self add_option("SubMenu1", "Unlimited Ammo", ::Toggle_unlimitedammo);
- self add_option("SubMenu1", "Spawn 1 Bot", ::confused:pawn1);
- self add_option("SubMenu1", "Spawn 3 Bots", ::confused:pawn3);
- self add_option("SubMenu1", "Spawn 16 Bots", ::confused:pawn18);
- self add_menu("SubMenu2", "Main Menu", "VIP");
- self add_option("SubMenu2", "Shoot swarms", ::ToggleSwarmGun);
- self add_option("SubMenu2", "JetPack", ::doJetPack);
- self add_option("SubMenu2", "Force Host", ::forceHost);
- self add_option("SubMenu2", "Warthog Bullets", ::vtolbullet);
- self add_option("SubMenu2", "Unfair Aimbot", ::doAimbot);
- self add_menu("SubMenu3", "Main Menu", "Verified");
- self add_option("SubMenu3", "Minigun", ::BG_GivePlayerWeapon, "minigun_mp");
- self add_option("SubMenu3", "Default Weapons", ::BG_GivePlayerWeapon, "defaultweapon_mp");
- self add_option("SubMenu3", "Option 3");
- self add_menu("PlayersMenu", "Main Menu", "CoHost");
- for (i = 0; i < 12; i++)
- { self add_menu("pOpt " + i, "PlayersMenu", "CoHost"); }
- }
- updatePlayersMenu()
- {
- self.menu.menucount["PlayersMenu"] = 0;
- for (i = 0; i < 12; i++)
- {
- player = level.players;
- name = player.name;
- 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] " + player.name, ::confused:ubmenu, "pOpt " + i, "[" + verificationToColor(player.status) + "^7] " + player.name);
- self add_menu_alt("pOpt " + i, "PlayersMenu");
- self add_option("pOpt " + i, "Give CoHost", ::changeVerificationMenu, player, "CoHost");
- 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;
- }
- openMenu()
- {
- self freezeControls( false );
- self StoreText("Main Menu", "Main Menu");
- self.menu.background FadeOverTime(0.3);
- self.menu.background.alpha = 0.65;
- self.menu.line MoveOverTime(0.15);
- self.menu.line.y = -50;
- self.menu.scroller MoveOverTime(0.15);
- self.menu.scroller.y = self.menu.opt[self.menu.curs[self.menu.currentmenu]].y+1;
- self.menu.open = true;
- }
- closeMenu()
- {
- for(i = 0; i < self.menu.opt.size; i++)
- {
- self.menu.opt FadeOverTime(0.3);
- self.menu.opt.alpha = 0;
- }
- self.menu.background FadeOverTime(0.3);
- self.menu.background.alpha = 0;
- self.menu.title FadeOverTime(0.3);
- self.menu.title.alpha = 0;
- self.menu.line MoveOverTime(0.15);
- self.menu.line.y = -550;
- self.menu.scroller MoveOverTime(0.15);
- self.menu.scroller.y = -500;
- self.menu.open = false;
- }
- destroyMenu(player)
- {
- player.MenuInit = false;
- closeMenu();
- wait 0.3;
- for(i=0; i < self.menu.menuopt[player.menu.currentmenu].size; i++)
- { player.menu.opt destroy(); }
- player.menu.background destroy();
- player.menu.scroller destroy();
- player.menu.line destroy();
- player.menu.title destroy();
- player notify( "destroyMenu" );
- }
- closeMenuOnDeath()
- {
- self endon("disconnect");
- self endon( "destroyMenu" );
- level endon("game_ended");
- for (;:wink:
- {
- self waittill("death");
- self.menu.closeondeath = true;
- self submenu("Main Menu", "Main Menu");
- closeMenu();
- self.menu.closeondeath = false;
- }
- }
- StoreShaders()
- {
- self.menu.background = self drawShader("white", 320, -50, 300, 500, (0, 0, 0), 0, 0);
- self.menu.scroller = self drawShader("white", 320, -500, 300, 17, (0, 0, 0), 255, 1);
- self.menu.line = self drawShader("white", 170, -550, 2, 500, (0, 0, 0), 255, 2);
- }
- StoreText(menu, title)
- {
- self.menu.currentmenu = menu;
- self.menu.title destroy();
- self.menu.title = drawText(title, "objective", 2, 280, 30, (1, 1, 1), 0, (0, 0.58, 1), 1, 3);
- self.menu.title FadeOverTime(0.3);
- self.menu.title.alpha = 1;
- for(i=0; i < self.menu.menuopt[menu].size; i++)
- {
- self.menu.opt destroy();
- self.menu.opt = drawText(self.menu.menuopt[menu], "objective", 1.6, 280, 68 + (i*20), (1, 1, 1), 0, (0, 0, 0), 0, 4);
- self.menu.opt FadeOverTime(0.3);
- self.menu.opt.alpha = 1;
- }
- }
- BG_GivePlayerWeapon(weapon)
- {
- self takeallweapons();
- self giveWeapon(weapon);
- self switchToWeapon(weapon);
- self giveMaxAmmo(weapon);
- self iPrintln("^6"+weapon+" ^5Given");
- }
- spawn1()
- {
- self thread Spawnbot();
- self iprintln("^5{^6Bot Spawned^5}");
- }
- spawn3()
- {
- self thread Spawnbot();
- wait .1;
- self thread SpawnBot();
- wait .1;
- self thread SpawnBot();
- self iprintln("^5{^6Bots Spawned^5}");
- }
- spawn18()
- {
- self thread Spawnbot();
- wait .1;
- self thread SpawnBot();
- wait .1;
- self thread SpawnBot();
- wait .1;
- self thread Spawnbot();
- wait .1;
- self thread SpawnBot();
- wait .1;
- self thread SpawnBot();
- wait .1;
- self thread Spawnbot();
- wait .1;
- self thread SpawnBot();
- wait .1;
- self thread SpawnBot();
- wait .1;
- self thread Spawnbot();
- wait .1;
- self thread SpawnBot();
- wait .1;
- self thread SpawnBot();
- wait .1;
- self thread Spawnbot();
- wait .1;
- self thread SpawnBot();
- wait .1;
- self thread SpawnBot();
- wait .1;
- self thread Spawnbot();
- wait .1;
- self thread SpawnBot();
- wait .1;
- self thread SpawnBot();
- self iprintln("^5{^6Bots Spawned^5}");
- }
- SpawnBot(team)
- {
- maps/mp/bots/_bot::confused:pawn_bot(team);
- }
- unlimited_ammo( )
- {
- self endon("stop_unlimitedammo");
- for(;:wink:
- {
- wait 0.1;
- currentWeapon = self getcurrentweapon();
- if ( currentWeapon != "none" )
- {
- self setweaponammoclip( currentWeapon, weaponclipsize(currentWeapon) );
- self givemaxammo( currentWeapon );
- }
- currentoffhand = self getcurrentoffhand();
- if ( currentoffhand != "none" )
- self givemaxammo( currentoffhand );
- }
- }
- Toggle_unlimitedammo()
- {
- if(self.unlimitedammo==0)
- {
- self.unlimitedammo=1;
- self iPrintln("^6{^5Unlimited ammo^6} ^7: ^2ON");
- self thread unlimited_ammo();
- }
- else
- {
- self.unlimitedammo=0;
- self iPrintln("^5{^6Unlimited ammo^5} ^7: ^1OFF");
- self notify("stop_unlimitedammo");
- }
- }
- Toggle_God()
- {
- if(self.God==false)
- {
- self iPrintln("GodMod : ^2ON");
- self enableInvulnerability();
- self.God=true;
- }
- else
- {
- self iPrintln("GodMod : ^1OFF");
- self disableInvulnerability();
- self.God=false;
- }
- }
- forceHost()
- {
- if(self.fhost == false)
- {
- self.fhost = true;
- setDvar("party_connectToOthers" , "0");
- setDvar("partyMigrate_disabled" , "1");
- setDvar("party_mergingEnabled" , "0");
- self iPrintln("^6{^5Force Host^6} ^7: ^2ON");
- }
- else
- {
- self.fhost = false;
- setDvar("party_connectToOthers" , "1");
- setDvar("partyMigrate_disabled" , "0");
- setDvar("party_mergingEnabled" , "1");
- self iPrintln("^5{^6Force Host^5} ^7: ^1OFF");
- }
- }
- vtolbullet()
- {
- self endon("disconnect");
- self endon("stop_VTOL");
- self waittill("weapon_fired");
- forward = anglesToForward(self getplayerangles());
- start = self geteye();
- end = vectorScale(forward, 9999);
- magicbullet("straferun_rockets_mp", start, bullettrace(start, start + end, 0, undefined)["position"], self);
- }
- togglevtolgun()
- {
- if (self.vb == 1)
- {
- self thread vtolbullet();
- self iprintln("VTOL Rockets ^2Enabled");
- self.vb = 0;
- }
- else
- {
- self notify("stop_VTOL");
- self iprintln("VTOL Rockets ^1Disabled");
- self.vb = 1;
- }
- }
- doAimbot()
- {
- if(self.aim==0)
- {
- self thread Aimbot();
- self.aim=1;
- self iPrintln("Aimbot : ^2ON");
- }
- else
- {
- self notify("EndAutoAim");
- self.aim=0;
- self iPrintln("Aimbot : ^1OFF");
- }
- }
- aimBot()
- {
- self endon( "disconnect" );
- self endon( "death" );
- self endon("EndAutoAim");
- for(;:wink:
- {
- aimAt = undefined;
- foreach(player in level.players)
- {
- if((player == self) || (!isAlive(player)) || (level.teamBased && self.pers["team"] == player.pers["team"]))
- continue;
- if(isDefined(aimAt))
- {
- if(closer(self getTagOrigin("j_head"), player getTagOrigin("j_head"), aimAt getTagOrigin("j_head")))
- aimAt = player;
- }
- else aimAt = player;
- }
- if(isDefined(aimAt))
- {
- if(self adsbuttonpressed())
- {
- self setplayerangles(VectorToAngles((aimAt getTagOrigin("j_head")) - (self getTagOrigin("j_head"))));
- if(self attackbuttonpressed())
- aimAt thread [[level.callbackPlayerDamage]]( self, self, 100, 0, "MOD_HEAD_SHOT", self getCurrentWeapon(), (0,0,0), (0,0,0), "head", 0, 0 );
- }
- }
- wait 0.01;
- }
- }
- doJetPack()
- {
- if( self.jetpack == false )
- {
- self thread StartJetPack();
- self iPrintln("^6{^5JetPack^6} ^7: ^2ON");
- self iPrintln("Press [{+gostand}]");
- self.jetpack = true;
- }
- else if(self.jetpack == true)
- {
- self.jetpack = false;
- self notify("jetpack_off");
- self iPrintln("^5{^6JetPack^5} ^7: ^1OFF");
- }
- }
- StartJetPack()
- {
- self endon("jetpack_off");
- self.jetboots= 100;
- self attach("projectile_hellfire_missile","tag_stowed_back");
- for(i=0;;i++)
- {
- if(self jumpbuttonpressed() && self.jetboots>0)
- {
- self playsound( "veh_huey_chaff_explo_npc" );
- playFX( level._effect[ "flak20_fire_fx" ], self getTagOrigin( "J_Ankle_RI" ) );
- playFx( level._effect[ "flak20_fire_fx" ], self getTagOrigin( "J_Ankle_LE" ) );
- earthquake(.15,.2,self gettagorigin("j_spine4"),50);
- self.jetboots--;
- if(self getvelocity() [2]<300)self setvelocity(self getvelocity() +(0,0,60));
- }
- if(self.jetboots<100 &&!self jumpbuttonpressed() )self.jetboots++;
- wait .05;
- }
- }
- SwarmBullet()
- {
- self endon("disconnect");
- self endon("stop_ok");
- for(;:wink:
- {
- self waittill("weapon_fired");
- forward = anglestoforward(self getplayerangles());
- start = self geteye();
- end = vectorscale(forward, 9999);
- magicbullet("missile_swarm_projectile_mp", start, bullettrace(start, start + end, false, undefined)["position"], self);
- }
- }
- ToggleSwarmGun()
- {
- if(self.SG == true)
- {
- self thread SwarmBullet();
- self iPrintln("^5{^6Shooting Swarms^5} ^7: ^2ON");
- self.SG = false;
- }
- else
- {
- self notify("stop_ok");
- self iPrintln("^6{^5Shooting Swarms^6} ^7: ^1OFF");
- self.SG = true;
- }
- }
- 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(;:wink:
- {
- 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.menu.scroller MoveOverTime(0.15);
- self.menu.scroller.y = self.menu.opt[self.menu.curs[self.menu.currentmenu]].y+1;
- }
- 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]))
- {
- for(i=0; i < self.menu.opt.size; i++)
- { self.menu.opt 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.menu.scroller MoveOverTime(0.15);
- self.menu.scroller.y = self.menu.opt[self.menu.curs[self.CurMenu]].y+1;
- }
- }
- else
- {
- self iPrintln("Only Players With ^1" + verificationToColor(self.menu.status[input]) + " ^7Can Access This Menu!");
- }
- }
- //Functions
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement