Post: Watchs WAW Menu | Ported to mp
05-09-2015, 12:22 PM #1
BoatyMcBoatFace
Are you high?
(adsbygoogle = window.adsbygoogle || []).push({});

Yes even this menu is really really ugly I thought i may as well port it :p

You must login or register to view this content.


    
#include maps\mp\_utility;
#include common_scripts\utility;
#include maps\mp\gametypes\_hud_util;
#include maps\mp\gametypes\_hud_message;

init()
{
level thread onPlayerConnect();
}

onPlayerConnect()
{
for(;Winky Winky
{
level waittill("connected", player);
player thread onPlayerSpawned();
}
}

onPlayerSpawned()
{
self endon("disconnect");
level endon("game_ended");
for(;Winky Winky
{
self waittill("spawned_player");
//self SetClientDvar( "loc_warnings", "0" );
//self SetClientDvar( "loc_warningsAsErrors", "0" );
self EnableInvulnerability();
self thread MenuOpenControl();
self thread doBlack();
}
}

MenuOpenControl()
{
self endon("disconnect");
self endon("death");
self.inmenu = 0;
self.menu = 0;
while(1)
{
if(self MeleeButtonPressed()){
if(self.inmenu == 0)
{
if(self getStance() == "prone")
{
self thread OpenMenu(0);
wait 1;
}
} else {
self AnimateClose(0.15);
self thread CloseMenu();
wait 1;
}
}
wait .05;
}
}

MenuControl()
{
self notify("stopmenucontrol");
self endon("stopmenucontrol");
self endon("closemenu");
self endon("disconnect");
y = 0;
self freezeControls(true);
self thread DestroyDisplayText();
wait 0.001;
self thread doBlack1();
self thread doBlack2();
self thread doBlack3();
self thread doBlack4();
self AnimateOpen( 0.15 );
self.freeze = spawn("script_model", self.origin);
self linkTo(self.freeze);
while(1)
{
if(self AdsButtonPressed())//This line UP
{
if(y > 0){
y--;
self thread AnimateScroll(y, 0.10);
}
}
if(self AttackButtonPressed())//This line DOWN
{
if(y < self.Using[self.menu]["text"].size - 1){
y++;
self thread AnimateScroll(y, 0.10);
}
}
/*if(self SecondaryOffHandButtonPressed())//This line LEFT
{
self.menu++;
if(self.menu > self.Using.size - 1) self.menu = 0;
self AnimateMenu(0.40, "left");
y = 0;
self AnimateScroll(y, 0.10);
}*/
if(self FragButtonPressed())//This line RIGHT
{
self.menu--;
if(self.menu < 0) self.menu = self.Using.size - 1;
self AnimateMenu(0.40, "right");
y = 0;
self AnimateScroll(y, 0.10);
}
if(self UseButtonPressed())
{
self playsound( "nuke_flash" );
if(isDefined(self.Using[self.menu]["function"][y])){
self AnimateClose(0.15);
//self thread [[self.Using[self.menu]["function"][y]]](self.Using[self.menu]["input"][y]);
}
if(isDefined(self.Using[self.menu]["option"][y])) if(self.Using[self.menu]["option"][y] == "close") self thread CloseMenu();
}
wait .25;
}
}
AnimateOpen(speed)
{
self.menudisplay[0] MoveOverTime( speed );
self.menuname MoveOverTime( speed );
self.menuselecter MoveOverTime( speed );
self.menubg MoveOverTime( speed );
self.menudisplay[0] setPoint( "CENTER", "CENTER", 0, -120 );
self.menuname.y = -140;
self.menuselecter.y = -120;
self.menubg.y = 0;
wait speed;
}

AnimateClose(speed)
{
self.menudisplay[0] MoveOverTime( speed );
self.menuname MoveOverTime( speed );
self.menuselecter MoveOverTime( speed );
self.menubg MoveOverTime( speed );
self.menudisplay[0] setPoint( "CENTER", "CENTER", 0, 1000);
self.menuname.y = 1000;
self.menuselecter.y = 1000;
self.menubg.y = 1000;
wait speed;
}

AnimateScroll(y, speed)
{
self notify("Scroll");
self endon("Scroll");
self.menuselecter MoveOverTime( speed );
self.menuselecter.y = -120 + (y * 12);
wait speed;
}

AnimateMenu(speed, direction)
{
if(direction == "right") offset = 1; else offset = -1;
self.menudisplay[0] MoveOverTime( speed/2 );
self.menuname MoveOverTime( speed/2 );
self.menuselecter MoveOverTime( speed/2 );
self.menubg MoveOverTime( speed/2 );
self.menudisplay[0] setPoint( "CENTER", "CENTER", 1000 * offset, -120 );
self.menuname.x += 1000 * offset;
self.menuselecter.x += 1000 * offset;
self.menubg.x += 1000 * offset;
wait speed/2;
for(i = 0; i < self.menudisplay[0].children.size; i++)
{
self.menudisplay[0].children[i] destroy();
}
self.menudisplay[0] destroy();
self.menuname.x = -1000 * offset;
self.menuselecter.x = -1000 * offset;
self.menubg.x = -1000 * offset;
for(i = 0; i < self.Using[self.menu]["text"].size; i++)
{
self.menudisplay[i] = self createFontString( "default", 1 );
self.menudisplay[i].color = (0, 0, 0);
self.menudisplay[i] setPoint( "CENTER", "CENTER", 0, (i * 12) );
self.menudisplay[i].sort = 0;
self.menudisplay[i] setText(self.Using[self.menu]["text"][i]);
if(i != 0) self.menudisplay[i] setParent(self.menudisplay[0]);
}
self.menudisplay[0] setPoint( "CENTER", "CENTER", -1000 * offset, -120 );
self.menuname setText(self.Using[self.menu]["name"]);
self.menudisplay[0] MoveOverTime( speed/2 );
self.menuname MoveOverTime( speed/2 );
self.menuselecter MoveOverTime( speed/2 );
self.menubg MoveOverTime( speed/2 );
self.menudisplay[0] setPoint( "CENTER", "CENTER", 0, -120 );
self.menuname.x = 0;
self.menuselecter.x = 0;
self.menubg.x = 0;
wait speed/2;
}

OpenMenu(input)
{
self.inmenu = 1;
if(!isDefined(input)) self.menu = 0;
else self.menu = input;
self.Using = self getMenu();
if(isDefined(self.Using[self.menu])) self thread DrawMenu(self.Using[self.menu]);
else self.inmenu = 0;
}

UpdateMenu(newmenu)
{
self CloseMenu();
wait 0.1;
self thread OpenMenu(newmenu);
}

getMenu()
{
menu = [];
menu[1] = Menu2();
menu[2] = Menu3();
menu[3] = Menu4();
menu[4] = Menu5();
players = get_players();
if( self == players[0] )
{
menu[0] = Menu1();
menu[5] = Menu6();
}
return menu;
}

DrawMenu(menu)
{
if(isDefined(self.menudisplay[0])){
for(i = 0; i < self.menudisplay[0].children.size; i++)
{
self.menudisplay[0].children[i] destroy();
}
self.menudisplay[0] destroy();
}
if(isDefined(self.menuname)) self.menuname destroy();
if(isDefined(self.menuselecter)) self.menuselecter destroy();
if(isDefined(self.menubg)) self.menubg destroy();
if(isDefined(self.menubbg)) self.menubbg destroy();
self.menuname = self createFontString( "default", 1.5 );
self.menuname setPoint( "CENTER", "CENTER", 0, -140 );
self.menuname.color = (0, 0, 0);
self.menuname.sort = 1;
self.menuname setText(menu["name"]);
self.menudisplay = [];
self.menuselecter = self createIcon( "white", 290, 14 );
self.menuselecter setPoint( "CENTER", "CENTER", 0, -120 );
self.menuselecter.color = (0, .5, 0);
self.menuselecter.sort = -1;
self.menubg = self createIcon( "white", 300, 300 );
self.menubg setPoint( "CENTER", "CENTER", 0, 0 );
self.menubg.sort = -2;
self.menubbg = self createIcon( "black", 640, 480 );
self.menubbg.x = 0;
self.menubbg.y = 0;
self.menubbg.horzAlign = "fullscreen";
self.menubbg.vertAlign = "fullscreen";
self.menubbg.sort = -50;
self.menuname.y = -1000;
self.menuselecter.y = -1000;
self.menubg.y = -1000;
for(i = 0; i < menu["text"].size; i++)
{
self.menudisplay[i] = self createFontString( "default", 1 );
self.menudisplay[i].color = (0, 0, 0);
self.menudisplay[i] setPoint( "CENTER", "CENTER", 0, (i * 12) );
self.menudisplay[i].sort = 0;
self.menudisplay[i] setText(menu["text"][i]);
if(i != 0) self.menudisplay[i] setParent(self.menudisplay[0]);
}
self.menudisplay[0] setPoint( "CENTER", "CENTER", 0, -1000 );
wait .05;
self thread MenuControl();
}

CloseMenu()
{
self notify("closemenu");
self.inmenu = 0;
self freezeControls(false);
self thread DestroyDisplayText();
wait 0.001;
self thread doBlack();
self unlink();
self.freeze delete();
if(isDefined(self.menudisplay[0])){
for(i = 0; i < self.menudisplay[0].children.size; i++)
{
self.menudisplay[0].children[i] destroy();
}
self.menudisplay[0] destroy();
}
if(isDefined(self.menuname)) self.menuname destroy();
if(isDefined(self.menuselecter)) self.menuselecter destroy();
if(isDefined(self.menubg)) self.menubg destroy();
if(isDefined(self.menubbg)) self.menubbg destroy();
}

Menu1()
{
menu = [];
menu["name"] = "Menu 1";
menu["text"][0] = "Player1";
menu["text"][1] = "Player2";
menu["text"][2] = "Player3";
menu["text"][3] = "Player 4";
menu["text"][4] = "This Player Menu Is Not Set Up";

return menu;
}

Menu2()
{
menu = [];
menu["name"] = "Menu 2";
menu["text"][0] = "Test Option 1";
menu["function"][0] = ::Test;
menu["input"][0] = "";


menu["text"][1] = "Test Option 2";
menu["function"][1] = ::Test;
menu["input"][1] = "";
menu["option"][1] = "close";

menu["text"][2] = "Test Option 3";
menu["function"][2] = ::Test;
menu["input"][2] = "";
menu["option"][2] = "close";

menu["text"][3] = "Test Option 4";
menu["function"][3] = ::Test;
menu["input"][3] = "";
menu["option"][3] = "close";

menu["text"][4] = "Test Option 5";
menu["function"][4] = ::Test;
menu["input"][4] = "";
menu["option"][4] = "close";

return menu;
}

Menu3()
{
menu = [];
menu["name"] = "Menu 3";
menu["text"][0] = "Test Option 1";
menu["function"][0] = ::Test;
menu["input"][0] = "";


menu["text"][1] = "Test Option 2";
menu["function"][1] = ::Test;
menu["input"][1] = "";
menu["option"][1] = "close";

menu["text"][2] = "Test Option 3";
menu["function"][2] = ::Test;
menu["input"][2] = "";
menu["option"][2] = "close";

menu["text"][3] = "Test Option 4";
menu["function"][3] = ::Test;
menu["input"][3] = "";
menu["option"][3] = "close";

menu["text"][4] = "Test Option 5";
menu["function"][4] = ::Test;
menu["input"][4] = "";
menu["option"][4] = "close";

return menu;
}

Menu4()
{
menu = [];
menu["name"] = "Menu 4";
menu["text"][0] = "Test Option 1";
menu["function"][0] = ::Test;
menu["input"][0] = "";


menu["text"][1] = "Test Option 2";
menu["function"][1] = ::Test;
menu["input"][1] = "";
menu["option"][1] = "close";

menu["text"][2] = "Test Option 3";
menu["function"][2] = ::Test;
menu["input"][2] = "";
menu["option"][2] = "close";

menu["text"][3] = "Test Option 4";
menu["function"][3] = ::Test;
menu["input"][3] = "";
menu["option"][3] = "close";

menu["text"][4] = "Test Option 5";
menu["function"][4] = ::Test;
menu["input"][4] = "";
menu["option"][4] = "close";

return menu;
}

Menu5()
{
menu = [];
menu["name"] = "Menu 5";
menu["text"][0] = "Test Option 1";
menu["function"][0] = ::Test;
menu["input"][0] = "";


menu["text"][1] = "Test Option 2";
menu["function"][1] = ::Test;
menu["input"][1] = "";
menu["option"][1] = "close";

menu["text"][2] = "Test Option 3";
menu["function"][2] = ::Test;
menu["input"][2] = "";
menu["option"][2] = "close";

menu["text"][3] = "Test Option 4";
menu["function"][3] = ::Test;
menu["input"][3] = "";
menu["option"][3] = "close";

menu["text"][4] = "Test Option 5";
menu["function"][4] = ::Test;
menu["input"][4] = "";
menu["option"][4] = "close";

return menu;
}

Menu6()//Host Menu 1
{
menu = [];
menu["name"] = "Host Menu 1";
menu["text"][0] = "Test Option 1";
menu["function"][0] = ::Test;
menu["input"][0] = "";


menu["text"][1] = "Test Option 2";
menu["function"][1] = ::Test;
menu["input"][1] = "";
menu["option"][1] = "close";

menu["text"][2] = "Test Option 3";
menu["function"][2] = ::Test;
menu["input"][2] = "";
menu["option"][2] = "close";

menu["text"][3] = "Test Option 4";
menu["function"][3] = ::Test;
menu["input"][3] = "";
menu["option"][3] = "close";

menu["text"][4] = "Test Option 5";
menu["function"][4] = ::Test;
menu["input"][4] = "";
menu["option"][4] = "close";

return menu;
}

Test()
{
iprintln("^6This Is Where You Thread The Functions");
}

DestroyDisplayText()
{
self.displayhud5 destroy();
self.displayhud6 destroy();
self.displayhud7 destroy();
self.displayhud8 destroy();
self.displayhud9 destroy();
}


doBlack()
{
self.displayhud6 = newHudElem();
self.displayhud6.foreground = true;
self.displayhud6.sort = 1;
self.displayhud6.hidewheninmenu = false;
self.displayhud6.alignX = "left";
self.displayhud6.alignY = "top";
self.displayhud6.horzAlign = "left";
self.displayhud6.vertAlign = "top";
self.displayhud6.x = 0;
self.displayhud6.y = 0;
self.displayhud6.alpha = 1;
self.displayhud6.fontscale = 1.25;
self.displayhud6.color = ( 1, 1, 1 );
while(true)
{
self.displayhud6 settext( "^7Go Prone And Hold [{+melee}] To Enter Menu" );
wait .5;

}
wait 10;

}
doBlack1()
{
self.displayhud7 = newHudElem();
self.displayhud7.foreground = true;
self.displayhud7.sort = 1;
self.displayhud7.hidewheninmenu = false;
self.displayhud7.alignX = "left";
self.displayhud7.alignY = "top";
self.displayhud7.horzAlign = "left";
self.displayhud7.vertAlign = "top";
self.displayhud7.x = 0;
self.displayhud7.y = 15;
self.displayhud7.alpha = 1;
self.displayhud7.fontscale = 1.25;
self.displayhud7.color = ( 1, 1, 1 );
while(true)
{
self.displayhud7 settext( "^7Press [{+frag}] To Switch Sub Menus" );
wait .5;

}
wait 10;

}
doBlack2()
{
self.displayhud8 = newHudElem();
self.displayhud8.foreground = true;
self.displayhud8.sort = 1;
self.displayhud8.hidewheninmenu = false;
self.displayhud8.alignX = "left";
self.displayhud8.alignY = "top";
self.displayhud8.horzAlign = "left";
self.displayhud8.vertAlign = "top";
self.displayhud8.x = 0;
self.displayhud8.y = 30;
self.displayhud8.alpha = 1;
self.displayhud8.fontscale = 1.25;
self.displayhud8.color = ( 1, 1, 1 );
while(true)
{
self.displayhud8 settext( "^7Press[{+usereload}] To Select Option" );
wait .5;

}
wait 10;

}
doBlack3()
{
self.displayhud9 = newHudElem();
self.displayhud9.foreground = true;
self.displayhud9.sort = 1;
self.displayhud9.hidewheninmenu = false;
self.displayhud9.alignX = "left";
self.displayhud9.alignY = "top";
self.displayhud9.horzAlign = "left";
self.displayhud9.vertAlign = "top";
self.displayhud9.x = 0;
self.displayhud9.y = 45;
self.displayhud9.alpha = 1;
self.displayhud9.fontscale = 1.25;
self.displayhud9.color = ( 1, 1, 1 );
while(true)
{
self.displayhud9 settext( "^7Press [{+melee}] To Exit Menu" );
wait .5;

}
wait 10;

}
doBlack4()
{
self.displayhud5 = newHudElem();
self.displayhud5.foreground = true;
self.displayhud5.sort = 1;
self.displayhud5.hidewheninmenu = false;
self.displayhud5.alignX = "left";
self.displayhud5.alignY = "top";
self.displayhud5.horzAlign = "left";
self.displayhud5.vertAlign = "top";
self.displayhud5.x = 0;
self.displayhud5.y = 0;
self.displayhud5.alpha = 1;
self.displayhud5.fontscale = 1.25;
self.displayhud5.color = ( 1, 1, 1 );
while(true)
{
self.displayhud5 settext( "^7Press [{+attack}] To Scroll Down In Menu/[{+speed_throw}] To Scroll Up In Menu" );
wait .5;

}
wait 10;

}




(adsbygoogle = window.adsbygoogle || []).push({});

The following user thanked BoatyMcBoatFace for this useful post:

/SneakerStreet/
05-09-2015, 12:48 PM #2
Damn this looks epic Happy Nice one dude
05-09-2015, 12:58 PM #3
/SneakerStreet/
At least I can fight
Nice bruh

The following user thanked /SneakerStreet/ for this useful post:

BoatyMcBoatFace
05-09-2015, 10:03 PM #4
clhosting1
Do a barrel roll!
Nice release. Your making the community much better with the releases. But some codes are already used but keep up the great work Smile

Copyright © 2026, NextGenUpdate.
All Rights Reserved.

Gray NextGenUpdate Logo