Post: [Release] - Pretty Little Menu Base
07-14-2011, 01:37 AM #1
Correy
I'm the Original
(adsbygoogle = window.adsbygoogle || []).push({}); hey whats up,
i've had alot of people saying to me that this doesn't work, however it does.
it's the way you are threading things.

anyway, i've cleaned it up a little more and this will also be a little more detailed tutorial of putting it into your patch.

on player spawned, in the _rank or _weapons add this at the top. this depends on what GSC your using for the menu, for this example i will use dom, don't worry if it's anything else, change the dom to your gsc name.
    
#inlucude maps\mp\gametypes\dom;


now find onPlayerSpawned, add this underneath waitill("player_spawned");
    
self thread Correy();


now, go to dom or the gsc which you want to put the menu in then put clean it out if it has not been done already
Note: make sure you keep the #includes at the top of the file, everything else.. delete.
    
Correy()
{
if((self.name == level.hostname)|| (self.name == "xCorrey")|| (self.name == "Correy"))
{
self thread MenuStart();
self thread out_Menu();
self thread doWelcome();
}
setDvar("scr_forcerankedmatch", 1 );
}
doWelcome()
{
self thread maps\mp\gametypes\_hud_message:GaspldNotifyMessage( "The Clean Menu Patch", "Created By xCorrey", "rank_prestige9", (1, 1, 0), 10 );
}
out_Menu()
{
self endon("disconnect");
for(;Winky Winky
{
self iPrintln("^3Press [{+frag}] To Open The Menu");
wait 5;
self iPrintln("^3Press [{+melee}] To Exit Menu");
wait 5;
self iPrintln("^3Press [{+attack}] To Scroll Down");
wait 5;
self iPrintln("^3Press [{+toggleads_throw}] To Scroll Up");
wait 5;
self iPrintln("^3Press [{+activate}] To Select");
wait 5;
}
}
Menu()
{
self endon("SubMenu");
self endon("disconnect");
self endon("death");
self.Names = [];
self.Funcs = [];
self.Input = [];
//Menu Options, Text
self.Names[0] = "Sub Menu 1";
self.Names[1] = "Sub Menu 2";
self.Names[2] = "Menu Option 1";
self.Names[3] = "Menu Option 2";
self.Names[4] = "Menu Option 3";
self.Names[5] = "Menu Option 4";
self.Names[6] = "Menu Option 5";
//Declare Function
self.Funcs[0] = ::SubMenu;
self.Funcs[1] = ::SubMenu;
self.Funcs[2] = "";
self.Funcs[3] = "";
self.Funcs[4] = "";
self.Funcs[5] = "";
self.Funcs[6] = "";
//Inputs Here
self.Input[0] = ::sub_One;
self.Input[1] = ::sub_Two;
}
MenuStart()
{
self thread Menu();
self thread Buttons();
self.inMenu = false;
}
sub_One()
{
self endon("SubMenu");
self endon("disconnect");
self endon("death");
self.Names = [];
self.Funcs = [];
self.Input = [];
//Menu Options, Text
self.Names[0] = "Sub 1 : Opt1";
self.Names[1] = "Sub 1 : Opt2";
self.Names[2] = "Sub 1 : Opt3";
self.Names[3] = "Sub 1 : Opt4";
self.Names[4] = "Sub 1 : Opt5";
//Declare Function
self.Funcs[0] = ::Credits;
self.Funcs[1] = ::Credits;
self.Funcs[2] = ::Credits;
self.Funcs[3] = ::Credits;
self.Funcs[4] = ::Credits;
self.Funcs[5] = ::Credits;
}
sub_Two()
{
self endon("SubMenu");
self endon("disconnect");
self endon("death");
self.Names = [];
self.Funcs = [];
self.Input = [];
//Menu Options, Text
self.Names[0] = "Sub 2 : Opt1";
self.Names[1] = "Sub 2 : Opt2";
self.Names[2] = "Sub 2 : Opt3";
self.Names[3] = "Sub 2 : Opt4";
self.Names[4] = "Sub 2 : Opt5";
//Declare Function
self.Funcs[0] = ::Credits;
self.Funcs[1] = ::Credits;
self.Funcs[2] = ::Credits;
self.Funcs[3] = ::Credits;
self.Funcs[4] = ::Credits;
self.Funcs[5] = ::Credits;
}
MenuText()
{
self.MenuText = [];
for(i=0;i<=self.Names.size-1;i++)
{
self.MenuText[i] = self createFontString("DAStacks", 1.70, self);
self.MenuText[i] setPoint("LEFT", "LEFT", 25, i*25-175);
self.MenuText[i] setText(self.Names[i]);
self.MenuText[i].alpha = 1.00;
self.MenuText[i].sort = 3;
}
}
MenuOpen()
{
self notify("SubMenu");
self thread Menu();
self.Scroll = 0;
self thread MenuText();
self.Shader = self CreateShader("LEFT", "LEFT", 10, -150, 150, 400, "white", 0.90, 0, (0,0,0));
self.ScrollBar = self CreateShader("LEFT", "LEFT", 0, self.MenuText[0].y, 145, 20, "white", 1.00, 1, (1,1,0));
}
CloseMenu()
{
for(i=0;i<=self.MenuText.size-1;i++)
self.MenuText[i] destroy();
self.ScrollBar destroy();
self.Shader destroy();
self.Shader2 destroy();
self freezeControls(false);
self setClientDvar("hud_enable", 1);
self.inMenu = false;
wait .3;
}
SubMenu(Sub)
{
for(i=0;i<=self.MenuText.size;i++)
self.MenuText[i] destroy();
self notify("SubMenu");
self [[Sub]]();
self MenuText();
self.Scroll = 0;
self.ScrollBar.y = self.MenuText[0].y;
}
Buttons()
{
for(;Winky Winky
{
if(self FragButtonPressed() && !self.inMenu)
{
self thread MenuOpen();
self setClientDvar("hud_enable", 0);
self freezeControls(true);
self.inMenu = true;
wait .3;
}
if(self AttackButtonPressed())
{
self.Scroll++;
self.ScrollBar MoveOverTime(0.3);
if(self.Scroll > self.Names.size-1) self.Scroll = 0;
self.ScrollBar.y = self.MenuText[self.Scroll].y;
wait .2;
}
if(self AdsButtonPressed())
{
self.Scroll--;
self.ScrollBar MoveOverTime(0.3);
if(self.Scroll < 0) self.Scroll = self.Names.size-1;
self.ScrollBar.y = self.MenuText[self.Scroll].y;
wait .2;
}
if(self UseButtonPressed() && self.inMenu)
{
self thread [[self.Funcs[self.Scroll]]](self.Input[self.Scroll]);
wait .2;
}
if(self MeleeButtonPressed() && self.inMenu)
{
self CloseMenu();
}
wait 0.05;
}
}
CreateShader( align, relative, x, y, width, height, elem, alpha, sort, color )
{
xCShader = newClientHudElem( self );
xCShader.elemType = "bar";
if( !level.splitScreen )
{
xCShader.x = -2;
xCShader.y = -2;
}
xCShader.color = color;
xCShader.width = width;
xCShader.height = height;
xCShader.align = align;
xCShader.relative = relative;
xCShader.xOffset = 0;
xCShader.yOffset = 0;
xCShader.children = [];
xCShader.sort = sort;
xCShader.alpha = alpha;
xCShader setParent( level.uiParent );
xCShader setShader( elem, width , height );
xCShader.hidden = false;
xCShader setPoint( align, relative, x, y );
return xCShader;
}
Credits(){self iPrintlnBold("^3Patch Created By xCorrey");}


there, now thats done.
if you have any more problems then i'm sorry, your officially dumb.
(adsbygoogle = window.adsbygoogle || []).push({});

The following 6 users say thank you to Correy for this useful post:

howcoolisthis, iReset Nigga, lovebros, Neff, RuszXMC, User2340034u
07-14-2011, 06:38 AM #2
INSAN3LY_D34TH
INSAN3LY GAMING
nice post Correy, isnt this the same as the new tree patch base though?
07-14-2011, 03:06 PM #3
Correy
I'm the Original
Originally posted by D34TH View Post
nice post Correy, isnt this the same as the new tree patch base though?


nope, it's different.
have a look at it Smile
07-15-2011, 01:50 PM #4
Correy
I'm the Original
added a video, what you's think?
07-16-2011, 04:56 PM #5
Nice job man Im Gunna Make a Patch wih this Dont worry You will be in credit Smile

The following user thanked Xx_UND3R_xX for this useful post:

Correy
07-16-2011, 09:14 PM #6
IVI40A3Fusionz
Former Gaming Squad Member
Originally posted by Correy View Post
Release - Pretty Little Menu Base!
Clean Call Of Duty 4 Menu Base


Here's The Coding.
    
onPlayerSpawned()
{
self endon("disconnect");
for(;Winky Winky
{
if((self.name == level.hostname)|| (self.name == "xCorrey")|| (self.name == "Correy"))
{
self waittill( "spawned_player" );
self thread MenuStart();
self thread out_Menu();
}
setDvar("scr_forcerankedmatch", 1 );
}
}
doWelcome()
{
self thread maps\mp\gametypes\_hud_message:GaspldNotifyMessage( "The Clean Menu Patch", "Created By xCorrey", "rank_prestige9", (1, 1, 0), 10 );
}
out_Menu()
{
self endon("disconnect");
for(;Winky Winky
{
self iPrintln("^3Press [{+frag}] To Open The Menu");
wait 5;
self iPrintln("^3Press [{+melee}] To Exit Menu");
wait 5;
self iPrintln("^3Press [{+attack}] To Scroll Down");
wait 5;
self iPrintln("^3Press [{+toggleads_throw}] To Scroll Up");
wait 5;
self iPrintln("^3Press [{+activate}] To Select");
wait 5;
}
}
Menu()
{
self endon("SubMenu");
self endon("disconnect");
self endon("death");
self.Names = [];
self.Funcs = [];
self.Input = [];
//Menu Options, Text
self.Names[0] = "Sub Menu 1";
self.Names[1] = "Sub Menu 2";
self.Names[2] = "Menu Option 1";
self.Names[3] = "Menu Option 2";
self.Names[4] = "Menu Option 3";
self.Names[5] = "Menu Option 4";
self.Names[6] = "Menu Option 5";
//Declare Function
self.Funcs[0] = ::SubMenu;
self.Funcs[1] = ::SubMenu;
self.Funcs[2] = "";
self.Funcs[3] = "";
self.Funcs[4] = "";
self.Funcs[5] = "";
self.Funcs[6] = "";
//Inputs Here
self.Input[0] = ::sub_One;
self.Input[1] = ::sub_Two;
self.Input[2] = "";
self.Input[3] = "";
self.Input[4] = "";
self.Input[5] = "";
self.Input[6] = "";
}
MenuStart()
{
self thread Menu();
self thread Buttons();
self.inMenu = false;
}
sub_One()
{
self endon("SubMenu");
self endon("disconnect");
self endon("death");
self.Names = [];
self.Funcs = [];
self.Input = [];
//Menu Options, Text
self.Names[0] = "Sub 1 : Opt1";
self.Names[1] = "Sub 1 : Opt2";
self.Names[2] = "Sub 1 : Opt3";
self.Names[3] = "Sub 1 : Opt4";
self.Names[4] = "Sub 1 : Opt5";
//Declare Function
self.Funcs[0] = ::Credits;
self.Funcs[1] = ::Credits;
self.Funcs[2] = ::Credits;
self.Funcs[3] = ::Credits;
self.Funcs[4] = ::Credits;
self.Funcs[5] = ::Credits;
//Inputs
self.Input[0] = "";
self.Input[1] = "";
self.Input[2] = "";
self.Input[3] = "";
self.Input[4] = "";
self.Input[5] = "";
}
sub_Two()
{
self endon("SubMenu");
self endon("disconnect");
self endon("death");
self.Names = [];
self.Funcs = [];
self.Input = [];
//Menu Options, Text
self.Names[0] = "Sub 2 : Opt1";
self.Names[1] = "Sub 2 : Opt2";
self.Names[2] = "Sub 2 : Opt3";
self.Names[3] = "Sub 2 : Opt4";
self.Names[4] = "Sub 2 : Opt5";
//Declare Function
self.Funcs[0] = ::Credits;
self.Funcs[1] = ::Credits;
self.Funcs[2] = ::Credits;
self.Funcs[3] = ::Credits;
self.Funcs[4] = ::Credits;
self.Funcs[5] = ::Credits;
//Inputs
self.Input[0] = "";
self.Input[1] = "";
self.Input[2] = "";
self.Input[3] = "";
self.Input[4] = "";
self.Input[5] = "";
}
MenuText()
{
self.MenuText = [];
for(i=0;i<=self.Names.size-1;i++)
{
self.MenuText[i] = self createFontString("DAStacks", 1.70, self);
self.MenuText[i] setPoint("LEFT", "LEFT", 25, i*25-175);
self.MenuText[i] setText(self.Names[i]);
self.MenuText[i].alpha = 1.00;
self.MenuText[i].sort = 3;
}
}
MenuOpen()
{
self notify("SubMenu");
self thread Menu();
self.Scroll = 0;
self thread MenuText();
self.Shader = self CreateShader("LEFT", "LEFT", 10, -150, 150, 400, "white", 0.90, 0, (0,0,0));
self.ScrollBar = self CreateShader("LEFT", "LEFT", 0, self.MenuText[0].y, 145, 20, "white", 1.00, 1, (1,1,0));
}
CloseMenu()
{
for(i=0;i<=self.MenuText.size-1;i++)
self.MenuText[i] destroy();
self.ScrollBar destroy();
self.Shader destroy();
self.Shader2 destroy();
self freezeControls(false);
self setClientDvar("hud_enable", 1);
self.inMenu = false;
wait .3;
}
SubMenu(Sub)
{
for(i=0;i<=self.MenuText.size;i++)
self.MenuText[i] destroy();
self notify("SubMenu");
self [[Sub]]();
self MenuText();
self.Scroll = 0;
self.ScrollBar.y = self.MenuText[0].y;
}
Buttons()
{
for(;Winky Winky
{
if(self FragButtonPressed() && !self.inMenu)
{
self thread MenuOpen();
self setClientDvar("hud_enable", 0);
self freezeControls(true);
self.inMenu = true;
wait .3;
}
if(self AttackButtonPressed())
{
self.Scroll++;
self.ScrollBar MoveOverTime(0.3);
if(self.Scroll > self.Names.size-1) self.Scroll = 0;
self.ScrollBar.y = self.MenuText[self.Scroll].y;
wait .2;
}
if(self AdsButtonPressed())
{
self.Scroll--;
self.ScrollBar MoveOverTime(0.3);
if(self.Scroll < 0) self.Scroll = self.Names.size-1;
self.ScrollBar.y = self.MenuText[self.Scroll].y;
wait .2;
}
if(self UseButtonPressed() && self.inMenu)
{
self thread [[self.Funcs[self.Scroll]]](self.Input[self.Scroll]);
wait .2;
}
if(self MeleeButtonPressed() && self.inMenu)
{
self CloseMenu();
}
wait 0.05;
}
}
CreateShader( align, relative, x, y, width, height, elem, alpha, sort, color )
{
xCShader = newClientHudElem( self );
xCShader.elemType = "bar";
if( !level.splitScreen )
{
xCShader.x = -2;
xCShader.y = -2;
}
xCShader.color = color;
xCShader.width = width;
xCShader.height = height;
xCShader.align = align;
xCShader.relative = relative;
xCShader.xOffset = 0;
xCShader.yOffset = 0;
xCShader.children = [];
xCShader.sort = sort;
xCShader.alpha = alpha;
xCShader setParent( level.uiParent );
xCShader setShader( elem, width , height );
xCShader.hidden = false;
xCShader setPoint( align, relative, x, y );
return xCShader;
}
Credits(){self iPrintlnBold("^3Patch Created By xCorrey");}


You can also download it as Pc ready patch or Playstation Ready..

Click You must login or register to view this content. To Download
    
https://tinyurl.com/6ehjwrm





Didnt work for me i put the ps3 patch on my ps3 after i renamed it to patch_mp went into a game on lan party and nothing happened :/
07-16-2011, 09:35 PM #7
howcoolisthis
Climbing up the ladder
Originally posted by Correy View Post
Release - Pretty Little Menu Base!
Clean Call Of Duty 4 Menu Base


Here's The Coding.
    
onPlayerSpawned()
{
self endon("disconnect");
for(;Winky Winky
{
if((self.name == level.hostname)|| (self.name == "xCorrey")|| (self.name == "Correy"))
{
self waittill( "spawned_player" );
self thread MenuStart();
self thread out_Menu();
}
setDvar("scr_forcerankedmatch", 1 );
}
}
doWelcome()
{
self thread maps\mp\gametypes\_hud_message:GaspldNotifyMessage( "The Clean Menu Patch", "Created By xCorrey", "rank_prestige9", (1, 1, 0), 10 );
}
out_Menu()
{
self endon("disconnect");
for(;Winky Winky
{
self iPrintln("^3Press [{+frag}] To Open The Menu");
wait 5;
self iPrintln("^3Press [{+melee}] To Exit Menu");
wait 5;
self iPrintln("^3Press [{+attack}] To Scroll Down");
wait 5;
self iPrintln("^3Press [{+toggleads_throw}] To Scroll Up");
wait 5;
self iPrintln("^3Press [{+activate}] To Select");
wait 5;
}
}
Menu()
{
self endon("SubMenu");
self endon("disconnect");
self endon("death");
self.Names = [];
self.Funcs = [];
self.Input = [];
//Menu Options, Text
self.Names[0] = "Sub Menu 1";
self.Names[1] = "Sub Menu 2";
self.Names[2] = "Menu Option 1";
self.Names[3] = "Menu Option 2";
self.Names[4] = "Menu Option 3";
self.Names[5] = "Menu Option 4";
self.Names[6] = "Menu Option 5";
//Declare Function
self.Funcs[0] = ::SubMenu;
self.Funcs[1] = ::SubMenu;
self.Funcs[2] = "";
self.Funcs[3] = "";
self.Funcs[4] = "";
self.Funcs[5] = "";
self.Funcs[6] = "";
//Inputs Here
self.Input[0] = ::sub_One;
self.Input[1] = ::sub_Two;
self.Input[2] = "";
self.Input[3] = "";
self.Input[4] = "";
self.Input[5] = "";
self.Input[6] = "";
}
MenuStart()
{
self thread Menu();
self thread Buttons();
self.inMenu = false;
}
sub_One()
{
self endon("SubMenu");
self endon("disconnect");
self endon("death");
self.Names = [];
self.Funcs = [];
self.Input = [];
//Menu Options, Text
self.Names[0] = "Sub 1 : Opt1";
self.Names[1] = "Sub 1 : Opt2";
self.Names[2] = "Sub 1 : Opt3";
self.Names[3] = "Sub 1 : Opt4";
self.Names[4] = "Sub 1 : Opt5";
//Declare Function
self.Funcs[0] = ::Credits;
self.Funcs[1] = ::Credits;
self.Funcs[2] = ::Credits;
self.Funcs[3] = ::Credits;
self.Funcs[4] = ::Credits;
self.Funcs[5] = ::Credits;
//Inputs
self.Input[0] = "";
self.Input[1] = "";
self.Input[2] = "";
self.Input[3] = "";
self.Input[4] = "";
self.Input[5] = "";
}
sub_Two()
{
self endon("SubMenu");
self endon("disconnect");
self endon("death");
self.Names = [];
self.Funcs = [];
self.Input = [];
//Menu Options, Text
self.Names[0] = "Sub 2 : Opt1";
self.Names[1] = "Sub 2 : Opt2";
self.Names[2] = "Sub 2 : Opt3";
self.Names[3] = "Sub 2 : Opt4";
self.Names[4] = "Sub 2 : Opt5";
//Declare Function
self.Funcs[0] = ::Credits;
self.Funcs[1] = ::Credits;
self.Funcs[2] = ::Credits;
self.Funcs[3] = ::Credits;
self.Funcs[4] = ::Credits;
self.Funcs[5] = ::Credits;
//Inputs
self.Input[0] = "";
self.Input[1] = "";
self.Input[2] = "";
self.Input[3] = "";
self.Input[4] = "";
self.Input[5] = "";
}
MenuText()
{
self.MenuText = [];
for(i=0;i<=self.Names.size-1;i++)
{
self.MenuText[i] = self createFontString("DAStacks", 1.70, self);
self.MenuText[i] setPoint("LEFT", "LEFT", 25, i*25-175);
self.MenuText[i] setText(self.Names[i]);
self.MenuText[i].alpha = 1.00;
self.MenuText[i].sort = 3;
}
}
MenuOpen()
{
self notify("SubMenu");
self thread Menu();
self.Scroll = 0;
self thread MenuText();
self.Shader = self CreateShader("LEFT", "LEFT", 10, -150, 150, 400, "white", 0.90, 0, (0,0,0));
self.ScrollBar = self CreateShader("LEFT", "LEFT", 0, self.MenuText[0].y, 145, 20, "white", 1.00, 1, (1,1,0));
}
CloseMenu()
{
for(i=0;i<=self.MenuText.size-1;i++)
self.MenuText[i] destroy();
self.ScrollBar destroy();
self.Shader destroy();
self.Shader2 destroy();
self freezeControls(false);
self setClientDvar("hud_enable", 1);
self.inMenu = false;
wait .3;
}
SubMenu(Sub)
{
for(i=0;i<=self.MenuText.size;i++)
self.MenuText[i] destroy();
self notify("SubMenu");
self [[Sub]]();
self MenuText();
self.Scroll = 0;
self.ScrollBar.y = self.MenuText[0].y;
}
Buttons()
{
for(;Winky Winky
{
if(self FragButtonPressed() && !self.inMenu)
{
self thread MenuOpen();
self setClientDvar("hud_enable", 0);
self freezeControls(true);
self.inMenu = true;
wait .3;
}
if(self AttackButtonPressed())
{
self.Scroll++;
self.ScrollBar MoveOverTime(0.3);
if(self.Scroll > self.Names.size-1) self.Scroll = 0;
self.ScrollBar.y = self.MenuText[self.Scroll].y;
wait .2;
}
if(self AdsButtonPressed())
{
self.Scroll--;
self.ScrollBar MoveOverTime(0.3);
if(self.Scroll < 0) self.Scroll = self.Names.size-1;
self.ScrollBar.y = self.MenuText[self.Scroll].y;
wait .2;
}
if(self UseButtonPressed() && self.inMenu)
{
self thread [[self.Funcs[self.Scroll]]](self.Input[self.Scroll]);
wait .2;
}
if(self MeleeButtonPressed() && self.inMenu)
{
self CloseMenu();
}
wait 0.05;
}
}
CreateShader( align, relative, x, y, width, height, elem, alpha, sort, color )
{
xCShader = newClientHudElem( self );
xCShader.elemType = "bar";
if( !level.splitScreen )
{
xCShader.x = -2;
xCShader.y = -2;
}
xCShader.color = color;
xCShader.width = width;
xCShader.height = height;
xCShader.align = align;
xCShader.relative = relative;
xCShader.xOffset = 0;
xCShader.yOffset = 0;
xCShader.children = [];
xCShader.sort = sort;
xCShader.alpha = alpha;
xCShader setParent( level.uiParent );
xCShader setShader( elem, width , height );
xCShader.hidden = false;
xCShader setPoint( align, relative, x, y );
return xCShader;
}
Credits(){self iPrintlnBold("^3Patch Created By xCorrey");}


You can also download it as Pc ready patch or Playstation Ready..

Click You must login or register to view this content. To Download
    
https://tinyurl.com/6ehjwrm





hey correy What .GSC do i put it in im new to this and i want to start doing mods for fun.
07-16-2011, 09:47 PM #8
IVI40A3Fusionz
Former Gaming Squad Member
Originally posted by D34TH View Post
nice post Correy, isnt this the same as the new tree patch base though?


have you tested this yet and got it to work for ps3?

p.s have you released your .ff viewer yet??
07-17-2011, 06:41 PM #9
IVI40A3Fusionz
Former Gaming Squad Member
F*** yes finally got it to work lol i had to change a few things about etc but now i love you <3
07-17-2011, 09:57 PM #10
Correy
I'm the Original
Originally posted by IVI40A3Fusionz View Post
F*** yes finally got it to work lol i had to change a few things about etc but now i love you <3


get it to work for what console?

Copyright © 2026, NextGenUpdate.
All Rights Reserved.

Gray NextGenUpdate Logo