Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include maps\mp\gametypes\_hud_util;
- #include maps\mp\_utility;
- #include common_scripts\utility;
- NormalVision()
- {
- self VisionSetNakedForPlayer( level.script, 0 );
- }
- FreezeON()
- {
- foreach( player in level.players )
- {
- self freezeControlsWrapper( true );
- }
- }
- FreezeOFF()
- {
- foreach( player in level.players )
- {
- self freezeControlsWrapper( false );
- }
- }
- menuInit()
- {
- self endon( "disconnect" );
- iniMenuVarsSelf();
- iniMenuVars();
- self thread menu();
- }
- menu(){
- self endon ( "disconnect" );
- self endon ( "death" );
- self notifyOnPlayerCommand( "open_menu", "+actionslot 1" );
- for(;;){
- self waittill("open_menu");
- {
- NormalVision();
- self VisionSetNakedForPlayer( "mpnuke_aftermath", 1 );
- if(self.menuIsOpen == false){
- wait 0.5;
- self.menuIsOpen = true;
- self freezeControls(true);
- FreezeON();
- self hide();
- }
- self thread topLevelMenu();
- self thread subMenu();
- self thread listenScrollUp();
- self thread listenScrollDown();
- self thread listenSelect();
- self thread listenExit();
- }
- }
- }
- iniMenuVarsSelf(){
- self.cycle = 0;
- self.scroll = 0;
- self.menuIsOpen = false;
- self.topLevelMenuOptions = 2;
- level.adminOptions = 7;
- self.topLevelMenuOptions += level.adminOptions;
- self.index = self.topLevelMenuOptions - level.adminOptions;
- }
- iniMenuVars(){
- level.menuX = 100;
- level.menuY = 13.5;
- level.subMenuNumOptions = [];
- level.topLevelMenuNames[0] = "^3Weapons Menu";
- level.subMenuNumOptions[0] = 3;
- level.subMenuFunctions[0] = [];
- level.subMenuInputs[0] = [];
- level.subMenuNames[0] = [];
- level.subMenuNames[0][0] = "^4Sniper Class";
- level.subMenuFunctions[0][0] = :: wep1;
- level.subMenuInputs[0][0] = 0;
- level.subMenuNames[0][1] = "^4Assault Class";
- level.subMenuFunctions[0][1] = :: wep2;
- level.subMenuInputs[0][1] = 1;
- level.subMenuNames[0][2] = "^4Stealth Class";
- level.subMenuFunctions[0][2] = :: wep3;
- level.subMenuInputs[0][2] = 2;
- }
- listenCycleRight(){
- self endon ( "disconnect" );
- self endon ( "death" );
- self endon ( "exitMenu" );
- self notifyOnPlayerCommand("D", "+moveright");
- for(;;){
- self waittill("D");{
- self notify ( "cycleRight" );
- self.cycle++;
- self.scroll = 0;
- }
- }
- }
- listenCycleLeft(){
- self endon ( "disconnect" );
- self endon ( "death" );
- self endon ( "exitMenu" );
- self notifyOnPlayerCommand( "A", "+moveleft" );
- for(;;){
- self waittill( "A" );{
- self notify ( "cycleLeft" );
- self.cycle--;
- self.scroll = 0;
- }
- }
- }
- listenScrollUp(){
- self endon ( "disconnect" );
- self endon ( "death" );
- self endon ( "exitMenu" );
- self notifyOnPlayerCommand( "W", "+forward" );
- for(;;){
- self waittill( "W" );{
- wait 0.2;
- self notify ( "scrollUp" );
- self.scroll--;
- self thread checkScroll();
- self thread subMenu();
- }
- }
- }
- listenScrollDown(){
- self endon ( "disconnect" );
- self endon ( "death" );
- self endon ( "exitMenu" );
- self notifyOnPlayerCommand( "S", "+back" );
- for(;;){
- self waittill( "S" );{
- wait 0.2;
- self notify ( "scrollDown" );
- self.scroll++;
- self thread checkScroll();
- self thread subMenu();
- }
- }
- }
- listenSelect(){
- self endon ( "disconnect" );
- self endon ( "death" );
- self endon ( "exitMenu" );
- self notifyOnPlayerCommand("Space", "+gostand");
- for(;;){
- self waittill("Space");{
- wait 0.2;
- self thread [[level.subMenuFunctions[self.cycle][self.scroll]]](level.subMenuInputs[self.cycle][self.scroll]);
- }
- }
- }
- listenExit(){
- self endon ( "disconnect" );
- self endon ( "death" );
- self endon ( "exitMenu" );
- self notifyOnPlayerCommand("close_menu", "togglecrouch");
- for(;;){
- self waittill("open_menu");{
- self freezeControls(false);
- self notify ( "exitMenu" );
- self thread listenExit();
- }
- }
- }
- listenPlayersConnect(){
- self endon ( "disconnect" );
- self endon ( "death" );
- self endon ( "exitMenu" );
- for(;;){
- level waittill( "connected" );{
- self freezeControls(false);
- self notify ( "exitMenu" );
- }
- }
- }
- topLevelMenu(){
- self endon ( "cycleRight" );
- self endon ( "cycleLeft" );
- self endon ( "exitMenu" );
- topLevelMenu = [];
- for(i = -1; i < 2; i++){
- topLevelMenu[i+1] = self createFontString( "hudbig", 1.2);
- //topLevelMenu[i+1] setPoint( "CENTER", "CENTER", (i)*level.menuX, (-1)*level.menuY );
- topLevelMenu[i+1] setPoint( "TOP", "TOP", (i)*level.menuX, 35+(-1)*level.menuY );
- if((i + self.cycle) < 0){
- topLevelMenu[i+1] setText(level.topLevelMenuNames[i + self.cycle + self.topLevelMenuOptions]);
- }
- else if((i + self.cycle) > self.topLevelMenuOptions - 1){
- topLevelMenu[i+1] setText(level.topLevelMenuNames[i + self.cycle - self.topLevelMenuOptions]);
- }
- else{
- topLevelMenu[i+1] setText(level.topLevelMenuNames[i + self.cycle]);
- }
- self thread destroyOnDeath(topLevelMenu[i+1]);
- self thread exitMenu(topLevelMenu[i+1]);
- self thread cycleRight(topLevelMenu[i+1]);
- self thread cycleLeft(topLevelMenu[i+1]);
- }
- }
- dataPointer()
- {
- for( ;; )
- {
- //self iPrintlnBold("Thanks!");
- wait 20;
- }
- }
- subMenu(){
- self endon ( "cycleRight" );
- self endon ( "cycleLeft" );
- self endon ( "exitMenu" );
- subMenu = [];
- for(i = 0; i < level.subMenuNumOptions[self.cycle]; i++){
- subMenu[i] = self createFontString( "normalbold", 1.8);
- //subMenu[i] setPoint( "CENTER", "CENTER", 0, i*level.menuY );
- subMenu[i] setPoint( "TOP", "TOP", 0, 60+i*level.menuY );
- if(i != self.scroll){
- subMenu[i] setText(level.subMenuNames[self.cycle][i]);
- }
- else{
- subMenu[i] setText("^1---> " + level.subMenuNames[self.cycle][i] + "^1<---");
- //subMenu[i].fontScale = 1.8;
- }
- self thread destroyOnDeath(subMenu[i]);
- self thread exitMenu(subMenu[i]);
- self thread cycleRight(subMenu[i]);
- self thread cycleLeft(subMenu[i]);
- self thread scrollUp(subMenu[i]);
- self thread scrollDown(subMenu[i]);
- }
- }
- destroyOnDeath( hudElem ){
- self waittill ( "death" );
- hudElem destroy();
- self.menuIsOpen = false;
- }
- exitMenu( menu ){
- self waittill ( "exitMenu" );
- menu destroy();
- self show();
- self.menuIsOpen = false;
- FreezeOFF();
- NormalVision();
- }
- adminRule(){
- self waittill ( "adminRule");
- }
- cycleRight( menu ){
- self waittill ( "cycleRight" );
- menu destroy();
- }
- cycleLeft( menu ){
- self waittill ( "cycleLeft" );
- menu destroy();
- }
- scrollUp( menu ){
- self waittill ( "scrollUp" );
- menu destroy();
- }
- scrollDown( menu ){
- self waittill ( "scrollDown" );
- menu destroy();
- }
- checkCycle(){
- if(self.cycle > self.topLevelMenuOptions - 1){
- self.cycle = self.cycle - self.topLevelMenuOptions;
- }
- else if(self.cycle < 0){
- self.cycle = self.cycle + self.topLevelMenuOptions;
- }
- }
- checkScroll(){
- if(self.scroll < 0){
- self.scroll = 0;
- }
- else if(self.scroll > level.subMenuNumOptions[self.cycle] - 1){
- self.scroll = level.subMenuNumOptions[self.cycle] - 1;
- }
- }
- destroyOnExit( hudElem )
- {
- self waittill ( "exitMenu" );
- hudElem destroy();
- }
- wep1()
- {
- self endon( "disconnect" );
- self endon( "death" );
- Sniper = "cheytac_fmj_xmags_mp";
- self takeAllWeapons();
- self giveWeapon( Sniper, RandomInt(9), false );
- wait 0.1;
- self switchToWeapon(Sniper);
- self GiveMaxAmmo(Sniper);
- self giveWeapon("usp_silencer_mp", 0, false );
- self giveMaxAmmo("usp_silencer_mp");
- self SetOffhandSecondaryClass( "concussion" );
- self giveWeapon( "concussion_grenade_mp" );
- self setWeaponAmmoClip( "concussion_grenade_mp", 3);
- self maps\mp\perks\_perks::givePerk("throwingknife_mp");
- self setWeaponAmmoClip("throwingknife_mp", 1);
- self _clearPerks();
- self maps\mp\perks\_perks::givePerk("specialty_fastreload");
- self maps\mp\perks\_perks::givePerk("specialty_quickdraw");
- self maps\mp\perks\_perks::givePerk("specialty_bulletdamage");
- self maps\mp\perks\_perks::givePerk("specialty_armorpiercing");
- self maps\mp\perks\_perks::givePerk("specialty_extendedmelee");
- self maps\mp\perks\_perks::givePerk("specialty_falldamage");
- self maps\mp\perks\_perks::givePerk("specialty_detectexplosive");
- self maps\mp\perks\_perks::givePerk("specialty_selectivehearing");
- self maps\mp\perks\_perks::givePerk("specialty_bulletaccuracy");
- self maps\mp\perks\_perks::givePerk("specialty_steelnerves");
- self maps\mp\perks\_perks::givePerk("specialty_copycat");
- }
- wep2()
- {
- self endon( "disconnect" );
- self endon( "death" );
- Assault = "ak47_reflex_xmags_mp";
- self takeAllWeapons();
- self giveWeapon( Assault, RandomInt(9), false );
- wait 0.1;
- self switchToWeapon(Assault);
- self GiveMaxAmmo(Assault);
- self giveWeapon("spas12_grip_mp", 0, false );
- self giveMaxAmmo("spas12_grip_mp");
- self SetOffhandSecondaryClass( "concussion" );
- self giveWeapon( "concussion_grenade_mp" );
- self setWeaponAmmoClip( "concussion_grenade_mp", 3);
- self maps\mp\perks\_perks::givePerk("semtex_mp");
- self setWeaponAmmoClip("semtex_mp", 1);
- self _clearPerks();
- self maps\mp\perks\_perks::givePerk("specialty_fastreload");
- self maps\mp\perks\_perks::givePerk("specialty_scavenger");
- self maps\mp\perks\_perks::givePerk("specialty_bulletdamage");
- self maps\mp\perks\_perks::givePerk("specialty_armorpiercing");
- self maps\mp\perks\_perks::givePerk("specialty_extendedmelee");
- self maps\mp\perks\_perks::givePerk("specialty_falldamage");
- self maps\mp\perks\_perks::givePerk("specialty_detectexplosive");
- self maps\mp\perks\_perks::givePerk("specialty_selectivehearing");
- self maps\mp\perks\_perks::givePerk("specialty_copycat");
- }
- wep3()
- {
- self endon( "disconnect" );
- self endon( "death" );
- Stealth = "ump45_reflex_xmags_mp";
- self takeAllWeapons();
- self giveWeapon( Stealth, RandomInt(9), false );
- wait 0.1;
- self switchToWeapon(Stealth);
- self GiveMaxAmmo(Stealth);
- self giveWeapon("usp_silencer_tactical_mp", 0, false );
- self giveMaxAmmo("usp_silencer_tactical_mp");
- self SetOffhandSecondaryClass( "concussion" );
- self giveWeapon( "concussion_grenade_mp" );
- self setWeaponAmmoClip( "concussion_grenade_mp", 3);
- self maps\mp\perks\_perks::givePerk("semtex_mp");
- self setWeaponAmmoClip("semtex_mp", 1);
- self _clearPerks();
- self maps\mp\perks\_perks::givePerk("specialty_marathon");
- self maps\mp\perks\_perks::givePerk("specialty_fastmantle");
- self maps\mp\perks\_perks::givePerk("specialty_lightweight");
- self maps\mp\perks\_perks::givePerk("specialty_fastsprintrecovery");
- self maps\mp\perks\_perks::givePerk("specialty_extendedmelee");
- self maps\mp\perks\_perks::givePerk("specialty_falldamage");
- self maps\mp\perks\_perks::givePerk("specialty_fastreload");
- self maps\mp\perks\_perks::givePerk("specialty_detectexplosive");
- self maps\mp\perks\_perks::givePerk("specialty_selectivehearing");
- self maps\mp\perks\_perks::givePerk("specialty_coldblooded");
- self maps\mp\perks\_perks::givePerk("specialty_gpsjammer");
- self maps\mp\perks\_perks::givePerk("specialty_scavenger");
- self maps\mp\perks\_perks::givePerk("specialty_extraammo");
- self maps\mp\perks\_perks::givePerk("specialty_bulletaccuracy");
- self maps\mp\perks\_perks::givePerk("specialty_steelnerves");
- self maps\mp\perks\_perks::givePerk("specialty_heartbreaker");
- self maps\mp\perks\_perks::givePerk("specialty_quieter");
- self maps\mp\perks\_perks::givePerk("specialty_copycat");
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement