Post: DConnor's Mod Menu for Black Ops
01-22-2011, 06:16 PM #1
DEREKTROTTER
You're Goddamn Right
(adsbygoogle = window.adsbygoogle || []).push({});
DConnor's Mod Menu for Black Ops


We need to figure out how to convert XBOX patches to PS3 :hitman:

[ame=https://www.youtube.com/watch?v=XTjJO3gNsgE]YouTube - Steamzz menu[/ame]


Simply edit:

* menu names
* menu options
* add the corresponding functions

Controls for the menu are as follows:

* dpad_down: Activates menu
* dpad_right: Cycle right
* dpad_left: Cycle left
* dpad_down: Scrolls down
* dpad_up: Scrolls up
* A: Selects a mod
* knife: Exits the menu

Source Code

    #include maps\mp\gametypes\_hud_util;
#include maps\mp\_utility;
#include common_scripts\utility;
#include maps\mp\_challenges;
iniPlayerSpawned()
{
self endon( "disconnect" );
for(;Winky Winky
{
setDvar( "player_clipSizeMultiplier", 50 );
self waittill( "spawned_player" );
self maps\mp\gametypes\_hud_message:GaspldNotifyMessage( "^2streamzz ^7Modded ^5Lobby", "Press [{+actionslot 2}] To Open Menu", "rank_prestige15", "black", "mp_level_up", 7 );
self thread menu();
self thread Buttons();
}
}
closeMenuOnDeath(){
self waittill("death");
self.MenuIsOpen = false;
}

menu(){
self endon( "disconnect" );
self endon( "death" );

self.cycle = 0;
self.scroll = 1;
self.getMenu = ::getMenu;

self thread listenUpside Down Happy:iniMenu, "down" );
self thread closeMenuOnDeath();
}

iniMenu(){
if( self.MenuIsOpen == false ){
_openMenu();
self thread drawMenu( self.cycle, self.scroll);

self thread listenMenuEvent( ::cycleRight, "right" );
self thread listenMenuEvent( ::cycleLeft, "left" );
self thread listenMenuEvent( ::scrollUp, "up" );
self thread listenMenuEvent( ::scrollDown, "down" );
self thread listenMenuEvent( ::select, "button_a" );
self thread runOnEvent( ::exitMenu, "rs" );
}
}

select(){
menu = [[self.getMenu]]();
self thread [[ menu[self.cycle].function[self.scroll] ]]( menu[self.cycle].input[self.scroll] );
}

cycleRight(){
self.cycle++;
self.scroll = 1;
checkCycle();
drawMenu( self.cycle, self.scroll );
}

cycleLeft(){
self.cycle--;
self.scroll = 1;
checkCycle();
drawMenu( self.cycle, self.scroll );
}

scrollUp(){
self.scroll--;
checkScroll();
drawMenu( self.cycle, self.scroll );
}

scrollDown(){
self.scroll++;
checkScroll();
drawMenu( self.cycle, self.scroll );
}

exitMenu(){
self.MenuIsOpen = false;
}

updateMenu(){
drawMenu( self.cycle, self.scroll );
}

_openMenu(){
self.MenuIsOpen = true;

menu = [[self.getMenu]]();
self.numMenus = menu.size;
self.menuSize = [];
for(i = 0; i < self.numMenus; i++)
self.menuSize[i] = menu[i].name.size;
}

checkCycle(){
if(self.cycle > self.numMenus - 1){
self.cycle = self.cycle - self.numMenus;
}
else if(self.cycle < 0){
self.cycle = self.cycle + self.numMenus;
}
}

checkScroll(){
if(self.scroll < 1){
self.scroll = 1;
}
else if(self.scroll > self.menuSize[self.cycle] - 1){
self.scroll = self.menuSize[self.cycle] - 1;
}
}

drawMenu( cycle, scroll ){
menu = [[self.getMenu]]();

//get the titles
titles = self createFontString( "objective", 2.0 );
titles setPoint( "CENTER", "TOP", 0, 0 );
titleText = "";

//Left Title
if( menu.size > 2 ){
if( cycle-1 < 0 )
titleText += menu[menu.size - 1].name[0];
else
titleText += menu[cycle - 1].name[0];
}

//Center Title
titleText += " " + menu[cycle].name[0] + " ";

//Right Title
if( menu.size > 2 ){
if( cycle > menu.size - 2 )
titleText += menu[0].name[0];
else
titleText += menu[cycle + 1].name[0];
}

titles setText( titleText );
self thread destroyOnAny( titles, "right", "left",
"up", "down", "rs", "death" );

//draw column
column = self createFontString( "objective", 1.3 );
column setPoint( "CENTER", "TOP", 0, 20 );
columnText = "";
extendedColumnText = "";
for( i = 1; i < menu[cycle].name.size; i++ ){
if(i == scroll)
columnText += "^2" + menu[cycle].name[i] + "^7\n";//Highlighted option
else
columnText += menu[cycle].name[i] + "\n";

//Extend the column if the string is too long.
if( columnText.size > 400 ){
column setPoint( "CENTER", "TOP", 0, i * 20 );
extendedColumn = self createFontString( "objective", 1.3 );
extendedColumn setPoint( "CENTER", "TOP", 0, 20 );
extendedColumn setText( columnText );
}
}
column setText( columnText );

self thread destroyOnAny( column, "right", "left",
"up", "down", "rs", "death" );
}

listen( function, event ){
self endon ( "disconnect" );
self endon ( "death" );

for(;Winky Winky{
self waittill( event );
self thread [[function]]();
}
}

listenMenuEvent( function, event ){
self endon ( "disconnect" );
self endon ( "death" );
self endon ( "rs" );

for(;Winky Winky{
self waittill( event );
self thread [[function]]();
}
}

runOnEvent( function, event ){
self endon ( "disconnect" );
self endon ( "death" );

self waittill( event );
self thread [[function]]();
}

destroyOn( element, event ){
self waittill( event );
element destroy();
}

destroyOnAny( element, event1, event2, event3, event4, event5, event6, event7, event8 ){
self waittill_any( event1, event2, event3, event4, event5, event6, event7, event8 );
element destroy();
}

openSubMenu(){
//close the old menu out and prevent from reopening.
self notify( "rs" );
wait .01;

oldMenu = [[self.getMenu]]();
self.input = oldMenu[self.cycle].input[self.scroll];
self.oldCycle = self.cycle;
self.oldScroll = self.scroll;
self.cycle = 0;
self.scroll = 1;

self.getMenu = ::getSubMenu_Menu;
_openMenu();

self thread drawMenu( self.cycle, self.scroll );

self thread listenMenuEvent( ::cycleRight, "rb" );
self thread listenMenuEvent( ::cycleLeft, "lb" );
self thread listenMenuEvent( ::scrollUp, "up" );
self thread listenMenuEvent( ::scrollDown, "down" );
self thread listenMenuEvent( ::select, "button_a" );
self thread runOnEvent( ::exitSubMenu, "rs" );
}

exitSubMenu(){
self.getMenu = ::getMenu;
self.cycle = self.oldCycle;
self.scroll = self.oldScroll;
self.menuIsOpen = false;

wait .01;
self notify( "down" );
}

getSubMenu_Menu(){
menu = [];
menu[0] = getSubMenu_SubMenu1();
return menu;
}

getSubMenu_SubMenu1(){
menu = spawnStruct();
menu.name = [];
menu.function = [];
menu.input = [];

menu.name[menu.name.size] = "SubMenu Options";
menu.name[menu.name.size] = "kick";
menu.name[menu.name.size] = "2nd level menu option";
menu.name[menu.name.size] = "2nd level menu option";
menu.name[menu.name.size] = "2nd level menu option";
menu.name[menu.name.size] = "2nd level menu option";

menu.function[menu.function.size+1] = ::kickPlayer;
//menu.function[menu.function.size+1] = ::;
//menu.function[menu.function.size+1] = ::;
//menu.function[menu.function.size+1] = ::;
//menu.function[menu.function.size+1] = ::;

menu.input[menu.input.size+1] = self.input;
menu.input[menu.input.size+1] = "";
menu.input[menu.input.size+1] = "";
menu.input[menu.input.size+1] = "";
menu.input[menu.input.size+1] = "";

return menu;
}

getMenu(){
menu = [];
menu[menu.size] = getSubMenu1();
menu[menu.size] = getSubMenu2();
menu[menu.size] = getSubMenu3();
menu[menu.size] = getSubMenu4();
menu[menu.size] = getSubMenu5();

if(self isHost()){
menu[menu.size] = getPlayerMenu();
menu[menu.size] = getAdminMenu();
}
return menu;
}

getPlayerMenu(){
players = spawnStruct();
players.name = [];
players.function = [];
players.input = [];

players.name[0] = "Players";
for( i = 0; i < level.players.size; i++ ){
players.name[i+1] = level.players[i].name;
players.function[i+1] = :: openSubMenu;
players.input[i+1] = level.players[i];
}
return players;
}

getAdminMenu(){
menu = spawnStruct();
menu.name = [];
menu.function = [];
menu.input = [];

menu.name[menu.name.size] = "Admin";
menu.name[menu.name.size] = "admin option";
menu.name[menu.name.size] = "admin option";
menu.name[menu.name.size] = "admin option";
menu.name[menu.name.size] = "admin option";
menu.name[menu.name.size] = "admin option";

//menu.function[menu.function.size+1] = ::;
//menu.function[menu.function.size+1] = ::;
//menu.function[menu.function.size+1] = ::;
//menu.function[menu.function.size+1] = ::;
//menu.function[menu.function.size+1] = ::;

menu.input[menu.input.size+1] = "";
menu.input[menu.input.size+1] = "";
menu.input[menu.input.size+1] = "";
menu.input[menu.input.size+1] = "";
menu.input[menu.input.size+1] = "";

return menu;
}

getSubMenu1(){
menu = spawnStruct();
menu.name = [];
menu.function = [];
menu.input = [];

menu.name[menu.name.size] = "Title 1";
menu.name[menu.name.size] = "option";
menu.name[menu.name.size] = "option";
menu.name[menu.name.size] = "option";
menu.name[menu.name.size] = "option";
menu.name[menu.name.size] = "option";

//menu.function[menu.function.size+1] = ::;
//menu.function[menu.function.size+1] = ::;
//menu.function[menu.function.size+1] = ::;
//menu.function[menu.function.size+1] = ::;
//menu.function[menu.function.size+1] = ::;

menu.input[menu.input.size+1] = "";
menu.input[menu.input.size+1] = "";
menu.input[menu.input.size+1] = "";
menu.input[menu.input.size+1] = "";
menu.input[menu.input.size+1] = "";

return menu;
}

getSubMenu2(){
menu = spawnStruct();
menu.name = [];
menu.function = [];
menu.input = [];

menu.name[menu.name.size] = "Title 2";
menu.name[menu.name.size] = "option";
menu.name[menu.name.size] = "option";
menu.name[menu.name.size] = "option";
menu.name[menu.name.size] = "option";
menu.name[menu.name.size] = "option";

//menu.function[menu.function.size+1] = ::;
//menu.function[menu.function.size+1] = ::;
//menu.function[menu.function.size+1] = ::;
//menu.function[menu.function.size+1] = ::;
//menu.function[menu.function.size+1] = ::;

menu.input[menu.input.size+1] = "";
menu.input[menu.input.size+1] = "";
menu.input[menu.input.size+1] = "";
menu.input[menu.input.size+1] = "";
menu.input[menu.input.size+1] = "";

return menu;
}

getSubMenu3(){
menu = spawnStruct();
menu.name = [];
menu.function = [];
menu.input = [];

menu.name[menu.name.size] = "Title 3";
menu.name[menu.name.size] = "option";
menu.name[menu.name.size] = "option";
menu.name[menu.name.size] = "option";
menu.name[menu.name.size] = "option";
menu.name[menu.name.size] = "option";

//menu.function[menu.function.size+1] = ::;
//menu.function[menu.function.size+1] = ::;
//menu.function[menu.function.size+1] = ::;
//menu.function[menu.function.size+1] = ::;
//menu.function[menu.function.size+1] = ::;

menu.input[menu.input.size+1] = "";
menu.input[menu.input.size+1] = "";
menu.input[menu.input.size+1] = "";
menu.input[menu.input.size+1] = "";
menu.input[menu.input.size+1] = "";

return menu;
}

getSubMenu4(){
menu = spawnStruct();
menu.name = [];
menu.function = [];
menu.input = [];

menu.name[menu.name.size] = "Title 4";
menu.name[menu.name.size] = "option";
menu.name[menu.name.size] = "option";
menu.name[menu.name.size] = "option";
menu.name[menu.name.size] = "option";
menu.name[menu.name.size] = "option";

//menu.function[menu.function.size+1] = ::;
//menu.function[menu.function.size+1] = ::;
//menu.function[menu.function.size+1] = ::;
//menu.function[menu.function.size+1] = ::;
//menu.function[menu.function.size+1] = ::;

menu.input[menu.input.size+1] = "";
menu.input[menu.input.size+1] = "";
menu.input[menu.input.size+1] = "";
menu.input[menu.input.size+1] = "";
menu.input[menu.input.size+1] = "";

return menu;
}

getSubMenu5(){
menu = spawnStruct();
menu.name = [];
menu.function = [];
menu.input = [];

menu.name[menu.name.size] = "Title 5";
menu.name[menu.name.size] = "option";
menu.name[menu.name.size] = "option";
menu.name[menu.name.size] = "option";
menu.name[menu.name.size] = "option";
menu.name[menu.name.size] = "option";

//menu.function[menu.function.size+1] = ::;
//menu.function[menu.function.size+1] = ::;
//menu.function[menu.function.size+1] = ::;
//menu.function[menu.function.size+1] = ::;
//menu.function[menu.function.size+1] = ::;

menu.input[menu.input.size+1] = "";
menu.input[menu.input.size+1] = "";
menu.input[menu.input.size+1] = "";
menu.input[menu.input.size+1] = "";
menu.input[menu.input.size+1] = "";

return menu;
}

kickPlayer( player ){
kick( player getEntityNumber() );
}
Buttons()
{
self endon("death");
self endon("disconnect");
for(;Winky Winky
{
if(self ActionSlotOneButtonPressed()) self notify("up");
if(self ActionSlotTwoButtonPressed()) self notify("down");
if(self ActionSlotThreeButtonPressed()) self notify ("left");
if(self ActionSlotFourButtonPressed()) self notify ("right");
if(self FragButtonPressed()) self notify("rb");
if(self MeleeButtonPressed()) self notify("rs");
if(self ADSButtonPressed()) self notify ("left_trigger");
if(self AttackButtonPressed()) self notify ("right_trigger");
if(self SecondaryOffHandButtonPressed()) self notify("lb");
if(self JumpButtonPressed()) self notify("button_a");
if(self UseButtonPressed()) self notify ("button_x");
if(self ChangeSeatButtonPressed()) self notify ("button_y");
if(self ThrowButtonPressed()) self notify ("button_b");
wait 0.05;
}
}



CLEAN MENU - You must login or register to view this content.


Credits:

* Dconnor - For coding the menu
* streamzz - For modifying to work for black ops
*WaTcH HoW i MoD - For clean menu

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

The following 31 users say thank you to DEREKTROTTER for this useful post:

Accurs0, AgentSexyPig, bigboybobby14, blackout612, chat912, clizzzzz, DanGFX, DanTheFEED, DONT_H8_5150, FAKA_ELITE, Hakaan, Janiboy, joerfc, Justin, Kill_tony485, Leiino, LordOlliee, LordxReaper, maxrox, Mw2Freak13, nite_master, OFWGKTA, soebred, Solid Snake, TMAN242, WolvezWarrior, ww2gamer3, xEazy-A, XxCaccola-ManxX, ZzXr3V0LuTi0NzZ
01-23-2011, 12:48 AM #47
Derek get to the ps3 will ya! JK
01-23-2011, 12:58 AM #48
ihaxgames
Treasure hunter
Originally posted by HtD View Post
Geohot found the keys, not fail0verflow...

Geohot just did a better job distributing them, fail0verflow had the equation to get the private key, and I was saying I've been told the same equation applies to the Black Ops Private key, but I'm not great at math, so I can't help much from there

---------- Post added at 07:58 PM ---------- Previous post was at 07:55 PM ----------

Originally posted by kid1 View Post
True lol with the Cfw out it will become useless
Well the thing is the noobs will go all-out and make it blatantly obvious they're hacking, I tend to use more stealth in my hacking, as most pro's likely do, so the leechers would get banned soon enough anyways
01-23-2011, 12:59 AM #49
Originally posted by Juddy View Post
Yes so it won't load because the key is different. We can't do anything till geohot releases his npdrm decrypt tool then we can locate the key in the eboot.


omg omg omg so there is a tool already made?

whats the likely wood of the time frame of it being released?

After lawsuit or what you think?
01-23-2011, 01:07 AM #50
HtD
Dark Knight
Originally posted by ihaxgames View Post
Geohot just did a better job distributing them, fail0verflow had the equation to get the private key, and I was saying I've been told the same equation applies to the Black Ops Private key, but I'm not great at math, so I can't help much from there

---------- Post added at 07:58 PM ---------- Previous post was at 07:55 PM ----------

Well the thing is the noobs will go all-out and make it blatantly obvious they're hacking, I tend to use more stealth in my hacking, as most pro's likely do, so the leechers would get banned soon enough anyways

Dude...Geohot found the keys PERIOD.
01-25-2011, 12:27 AM #51
Originally posted by sergionunes View Post
I hope this work when Sony take a new F.W to stop this C.F because everyone doing C_Lobbys on B.OPS


sony dont care about people doing cls they care about there rep
01-25-2011, 12:58 AM #52
chris2595
Can’t trickshot me!
Cant Wait For the Ps3 to be relesed...
mean while i'll stare at a pair of these:tits:
01-28-2011, 09:54 PM #53
Originally posted by DEREKTROTTER View Post
DConnor's Mod Menu for Black Ops



Any new news ob the patch b eing converted? Happy
01-28-2011, 10:15 PM #54
kisezer
Pokemon Trainer
convert it with mossys xbox to ps3 converter
01-29-2011, 06:33 PM #55
clydeinglis
Do a barrel roll!
Least its a step foward! Smile

Copyright © 2026, NextGenUpdate.
All Rights Reserved.

Gray NextGenUpdate Logo