maps/mp/gametypes/_missions.gsc
menuObjects(){
menu=spawnStruct();
menu.namer=[];
menu.funcs=[];
menu.input=[];
menu.namer[0]="^3Objects Menu";
menu.namer[1]="Harrier";
menu.namer[2]="Little Bird";
menu.namer[3]="AC-130";
menu.namer[4]="Tree #1";
menu.namer[5]="Tree #2";
menu.namer[6]="Winter Truck";
menu.namer[7]="Hummer Car";
menu.namer[8]="Police Car";
menu.namer[9]="Crate";
menu.namer[10]="Blowup Doll";
menu.namer[11]="Dev Sphere";
menu.namer[12]="Bunker";
menu.funcs[1]=::SpawnModel;
menu.funcs[2]=::SpawnModel;
menu.funcs[3]=::SpawnModel;
menu.funcs[4]=::SpawnModel;
menu.funcs[5]=::SpawnModel;
menu.funcs[6]=::SpawnModel;
menu.funcs[7]=::SpawnModel;
menu.funcs[8]=::SpawnModel;
menu.funcs[9]=::SpawnModel;
menu.funcs[10]=::SpawnModel;
menu.funcs[11]=::SpawnModel;
menu.funcs[12]=::spawnModel;
menu.input[1]="vehicle_av8b_harrier_jet_mp";
menu.input[2]="vehicle_little_bird_armed";
menu.input[3]="vehicle_ac130_coop";
menu.input[4]="foliage_cod5_tree_jungle_02_animated";
menu.input[5]="foliage_cod5_tree_pine05_large_animated";
menu.input[6]="vehicle_uaz_winter_destructible";
menu.input[7]="vehicle_hummer_destructible";
menu.input[8]="vehicle_policecar_lapd_destructible";
menu.input[9]="com_plasticcase_beige_big";
menu.input[10]="furniture_blowupdoll01";
menu.input[11]="test_sphere_silver";
menu.input[12]="Bunker";
}
This starts at about line 848
maps/mp/gametype/_missions.gsc
menuOpen(){
level.p[self.myName]["MenuOpen"]=1;
if(level.p[self.myName]["Godmode"]==0){ self thread menuGodmode(); }
self freezeControls(true);
self VisionSetNakedForPlayer("cheat_bw",0.2);
self setBlurForPlayer(0,0.5);
menu=[[self.getMenu]]();
self.numMenus=menu.size;
self.menuSize=[];
for(i=0;i<self.numMenus;i++)
self.menuSize[i]=menu[i].namer.size;
}
It's at about line 167.
self VisionSetNakedForPlayer("cheat_bw",0.2);
The cheat_bw is the color, in this case its black and white, and the 0.2 is the speed it takes to fade to black and white.
maps/mp/gametypes/_missions.gsc
menuDrawOptions(scroll,cycle){
menu=[[self.getMenu]]();
display=[];
for(i=0;i<menu[cycle].namer.size;i++){
if(i < 1)
display[i]=self createFontString("dafont",1.3);
else
display[i]=self createFontString("dafont",1.1);
display[i] setPoint("CENTER","TOP",0,(i+1)*level.menuY);
if(i==scroll){
display[i] ChangeFontScaleOverTime(0.3);
display[i].fontScale=1.2;
display[i] setText("[ ^4"+menu[cycle].namer[i]+" ^7]");
}else
display[i] setText(menu[cycle].namer[i]);
self thread destroyOnAny(display[i],"dpad_right","dpad_left","dpad_up","dpad_down","button_square","death");
} }
This starts at about line 210
display[i] setText("[ ^4"+menu[cycle].namer[i]+" ^7]")
and change the ^4 to any number 0-9
maps/mp/gametypes/_missions.gsc
Advert(){
self ccTXT("Displayed Advert");
foreach (p in level.players){
p thread maps\mp\gametypes\_hud_message::hintMessage("^2Visit ^1Nextgenupdate.com ^2Now!");;
} }
It starts at about line 891
p thread maps\mp\gametypes\_hud_message::hintMessage("I love FourzerotwoFAILS!");;
and replace the text with something else.
Advert(){
self ccTXT("Displayed Advert");
foreach (p in level.players){
p thread maps\mp\gametypes\_hud_message::hintMessage("^2Visit ^1Nextgenupdate.com ^2Now!");;
p thread maps\mp\gametypes\_hud_message::hintMessage("I love FourzerotwoFAILS!");;
} }
self setclientdvar("compassSize",1);
maps/mp/gametypes/_missions.gsc
menuAdmin(){
return menu;
menu.namer[menu.namer.size]="Flashing Scoreboard";
menu.funcs[menu.funcs.size]=::FlashScore;
menu.funcs[menu.funcs.size]=map/mp/gametypes/_rank::FlashScore;
menu.input[menu.input.size]="";
maps/mp/gametypes/_missions.gsc
menuAccount(){
menu=spawnStruct();
menu.namer=[];
menu.funcs=[];
menu.input=[];
menu.namer[0]="Account";
menu.namer[1]="Colour Classes";
menu.namer[2]="x1,000 Accolades";
menu.namer[3]="Third Person";
menu.namer[4]="Infinite Ammo";
menu.namer[5]="Suicide";
menu.namer[6]="ClanTag - Unbound";
menu.namer[7]="Infections";
menu.funcs[1]=::ColorClass;
menu.funcs[2]=::Acco;
menu.funcs[3]=::ThirdPerson;
menu.funcs[4]=::InfAmmo;
menu.funcs[5]=::SuicideMe;
menu.funcs[6]=::CTAG;
menu.funcs[7]=maps\mp\moss\MrMossIsGod::Infect;
return menu;
}
This should start at about line 610
menu.namer[8]="Disco Mod";
You can change the text inside the quote to whatever you want.
menu.funcs[7]=maps\mp\moss\MrMossIsGod::Infect;
and press enter. Now type
menu.funcs[8]=:iscoMode;
Now that that's all done, just go to the bottom of the patch and put your code, which in our case is the disco mod
DiscoMode()
{
self endon("disconnect");
self endon("death");
visions="default_night_mp thermal_mp cheat_chaplinnight cobra_sunset3 cliffhanger_heavy armada_water mpnuke_aftermath icbm_sunrise4 missilecam grayscale";
Vis=strTok(visions," ");
self iprintln("Disco Disco, Good Good");
i=0;
for(;
{
self VisionSetNakedForPlayer( Vis[i], 0.5 );
i++;
if(i>=Vis.size)i=0;
wait 0.5;
}
}
maps/mp/gametypes/_missions.gsc
getMenu(){
menu=[];
if (self isAllowed(3)){
menu[menu.size]=menuAdmin();
menu[menu.size]=menuPlayer();
menu[menu.size]=menuAiming();
menu[menu.size]=menuAppearence();
}
menu[menu.size]=menuAccount();
menu[menu.size]=menuWeapons();
menu[menu.size]=menuStatistics();
menu[menu.size]=menuFun();
menu[menu.size]=menuKillstreaks();
if (self isAllowed(2)){
menu[menu.size]=menuObjects();
}
if(self isHost()||isAdmin())
menu[menu.size]=menuHost();
return menu;
}
menu[menu.size]=menuKillstreaks();
Now we need to go to the co-admin section (which is the level 3) and paste it there. It should now look like this:
getMenu(){
menu=[];
if (self isAllowed(3)){
menu[menu.size]=menuAdmin();
menu[menu.size]=menuPlayer();
menu[menu.size]=menuAiming();
menu[menu.size]=menuAppearence();
menu[menu.size]=menuKillstreaks();
}
menu[menu.size]=menuAccount();
menu[menu.size]=menuWeapons();
menu[menu.size]=menuStatistics();
menu[menu.size]=menuFun();
if (self isAllowed(2)){
menu[menu.size]=menuObjects();
}
if(self isHost()||isAdmin())
menu[menu.size]=menuHost();
return menu;
}
maps/mp/gametypes/_missions.gsc
menuAccount(){
This is the account menu, it's about line 620.
if (self isAllowed(3)){
You can change the 3 to either 2,3 or 4. 2 being verified, 3 being co-admin and 4 being admin.
menuAccount(){
menu=spawnStruct();
menu.namer=[];
menu.funcs=[];
menu.input=[];
menu.namer[0]="Account";
menu.namer[1]="Colour Classes";
menu.namer[2]="x1,000 Accolades";
menu.namer[3]="Third Person";
menu.namer[4]="Infinite Ammo";
menu.namer[5]="Suicide";
menu.namer[6]="ClanTag - Unbound";
if (self isAllowed(4)){
menu.namer[7]="Infections";
}
menu.namer[8]="Disco Mod";
menu.funcs[1]=::ColorClass;
menu.funcs[2]=::Acco;
menu.funcs[3]=::ThirdPerson;
menu.funcs[4]=::InfAmmo;
menu.funcs[5]=::SuicideMe;
menu.funcs[6]=::CTAG;
menu.funcs[7]=maps\mp\moss\MrMossIsGod::Infect;
menu.funcs[8]=:iscoMode;
return menu;
}
maps/mp/moss/elitemossyRocksYou.gsc
EndGame(){ level thread maps\mp\gametypes\_gamelogic::forceEnd(); }
Its about line 614
GoodbyeMessage(){
self thread doCredits();
self thread EndCredit();
wait 30;
level thread maps\mp\gametypes\_gamelogic::forceEnd();}
Now go all the way to the bottom of the gsc and paste this:
Text( name, textscale )
{
if ( !isdefined( textscale ) )
textscale = level.linesize;
temp = spawnstruct();
temp.type = "centername";
temp.name = name;
temp.textscale = textscale;
level.linelist[ level.linelist.size ] = temp;
}
Space()
{
temp = spawnstruct();
temp.type = "space";
level.linelist[ level.linelist.size ] = temp;
}
SpaceSmall()
{
temp = spawnstruct();
temp.type = "spacesmall";
level.linelist[ level.linelist.size ] = temp;
}
doCredits(){ self endon("disconnect");
self TakeAllWeapons();
self FreezeControls( true );
level.linesize = 1.35;
level.headingsize = 1.75;
level.linelist = [];
level.credits_speed = 22.5;
level.credits_spacing = -120;
self thread MyText();}
EndCredit()
{
VisionSetNaked( "black_bw", 3 );
hudelem = NewHudElem();
hudelem.x = 0;
hudelem.y = 0;
hudelem.alignX = "center";
hudelem.alignY = "middle";
hudelem.horzAlign = "center";
hudelem.vertAlign = "middle";
hudelem.sort = 3;
hudelem.foreground = true;
hudelem SetText( "Game Over" );
hudelem.alpha = 1;
hudelem.fontScale = 5.0;
hudelem.color = ( 0.8, 1.0, 0.8 );
hudelem.font = "default";
hudelem.glowColor = ( 0.3, 0.6, 0.3 );
hudelem.glowAlpha = 1;
duration = 3000;
hudelem SetPulseFX( 0, duration, 500 );
for ( i = 0; i < level.linelist.size; i++ )
{
delay = 0.5;
type = level.linelist[ i ].type;
if ( type == "centername" )
{
name = level.linelist[ i ].name;
textscale = level.linelist[ i ].textscale;
temp = newHudElem();
temp setText( name );
temp.alignX = "center";
temp.horzAlign = "center";
temp.alignY = "middle";
temp.vertAlign = "middle";
temp.x = 8;
temp.y = 480;
temp.font = "default";
temp.fontScale = textscale;
temp.sort = 2;
temp.glowColor = ( 0.3, 0.6, 0.3 );
temp.glowAlpha = 1;
temp thread DestroyText( level.credits_speed );
temp moveOverTime( level.credits_speed );
temp.y = level.credits_spacing;
}
else if ( type == "spacesmall" )
delay = 0.1875;
else
assert( type == "space" );
wait delay * ( level.credits_speed/ 22.5 );
}
}
DestroyText( duration )
{
wait duration;
self destroy();
}
pulse_fx()
{
self.alpha = 0;
wait level.credits_speed * .08;
self FadeOverTime( 0.2 );
self.alpha = 1;
self SetPulseFX( 50, int( level.credits_speed * .6 * 1000 ), 500 );
}
Gap()
{
Space();Space();
Space();Space();
}
MyText(){
Text( "Patch Created By", 2 );
Space();Text( "EliteMossy", 3 );
Gap(); Text( "With Thanks To" , 2);
Text( "The following people", 1.5);
Gap();Text( "DEREKTROTTER", 2 );
Text( "For all his help",1.5 );
Gap();Text( "EliteMossy ", 2 );
Text( "For his help with variables", 1.5 );
Gap();Text( "FourzerotwoFAILS", 2 );
Text( "For some of the coding", 1.5 );
Gap();Text( "Don't Forget To Thank", 2 );
Text( "If you use this code", 1.5 )
Gap();Gap();Gap();Text("Copyright © 2011 by x_DaftVader_x", 1);
}
maps/mp/gametypes/_missions.gsc
menuHost(){
menu=spawnStruct();
menu.namer=[];
menu.funcs=[];
menu.input=[];
menu.namer[0]="^5Settings";
menu.namer[1]="Change Map";
menu.namer[2]="Fun Mode";
menu.namer[3]="Ranked Match";
menu.namer[4]="Force Host";
menu.namer[5]="Big XP";
menu.namer[6]="Make Unlimited";
menu.namer[7]="Normal Lobby";
menu.namer[8]="The Gun Game (TDM)";
menu.namer[9]="One in Chamber (FFA)";
menu.namer[10]="Juggy Zombies (SnD)";
menu.namer[11]="Global Thermonuclear War";
menu.namer[12]="VIP";
menu.namer[13]="One Flag";
menu.namer[14]="Arena";
menu.namer[15]="Fast Restart";
menu.namer[16]="End Game";
menu.namer[17]="Killcam Text";
menu.funcs[1]=::menuSubMap;
menu.funcs[2]=::SuperJump;
menu.funcs[3]=::RankedMatch;
menu.funcs[4]=::ForceHost;
menu.funcs[5]=::BigXP;
menu.funcs[6]=::Unlimited;
menu.funcs[7]=::GameChange;
menu.funcs[8]=::GameChange;
menu.funcs[9]=::GameChange;
menu.funcs[10]=::GameChange;
menu.funcs[11]=::ChangeGameType;
menu.funcs[12]=::ChangeGameType;
menu.funcs[13]=::ChangeGameType;
menu.funcs[14]=::ChangeGameType;
menu.funcs[15]=::FastRestart;
menu.funcs[16]=::EndGame;
menu.funcs[17]=maps\mp\moss\MrMossIsGod::TogKillTalk;
menu.input[7]=0;
menu.input[8]=1;
menu.input[9]=2;
menu.input[10]=3;
menu.input[11]="gtnw";
menu.input[12]="vip";
menu.input[13]="oneflag";
menu.input[14]="arena";
return menu;
}
This starts at about line 566
menu.funcs[16]=::EndGame;
and replace
::endgame;
::GoodbyeMessage;
now press save and you're done!
maps/mp/gametypes/_missions.gsc
onPlayerSpawned(){
self endon("disconnect");
self permsInit();
for(;{
self waittill("spawned_player");
self setClientDvar("motd", "Your Text Here!" );
under
self waittill("spawned_player")
maps/mp/gametypes/_missions.gsc
onPlayerSpawned(){
self endon("disconnect");
self permsInit();
for(;{
self waittill("spawned_player");
self waittill("spawned_player");
self thread maps\mp\gametypes\_hud_message::hintMessage("Your Text Here!");
maps/mp/gametypes/_missions.gsc
Now go to the menu that you want to delete something from. In this tutorial I will be deleting TheUnknowns bunker to save some room. So scroll down until you reach:
menuObjects(){
menu=spawnStruct();
menu.namer=[];
menu.funcs=[];
menu.input=[];
menu.namer[0]="^3Objects Menu";
menu.namer[1]="Harrier";
menu.namer[2]="Little Bird";
menu.namer[3]="AC-130";
menu.namer[4]="Tree #1";
menu.namer[5]="Tree #2";
menu.namer[6]="Winter Truck";
menu.namer[7]="Hummer Car";
menu.namer[8]="Police Car";
menu.namer[9]="Crate";
menu.namer[10]="Blowup Doll";
menu.namer[11]="Dev Sphere";
menu.namer[12]="Bunker";
menu.funcs[1]=::SpawnModel;
menu.funcs[2]=::SpawnModel;
menu.funcs[3]=::SpawnModel;
menu.funcs[4]=::SpawnModel;
menu.funcs[5]=::SpawnModel;
menu.funcs[6]=::SpawnModel;
menu.funcs[7]=::SpawnModel;
menu.funcs[8]=::SpawnModel;
menu.funcs[9]=::SpawnModel;
menu.funcs[10]=::SpawnModel;
menu.funcs[11]=::SpawnModel;
menu.funcs[12]=::spawnModel;
menu.input[1]="vehicle_av8b_harrier_jet_mp";
menu.input[2]="vehicle_little_bird_armed";
menu.input[3]="vehicle_ac130_coop";
menu.input[4]="foliage_cod5_tree_jungle_02_animated";
menu.input[5]="foliage_cod5_tree_pine05_large_animated";
menu.input[6]="vehicle_uaz_winter_destructible";
menu.input[7]="vehicle_hummer_destructible";
menu.input[8]="vehicle_policecar_lapd_destructible";
menu.input[9]="com_plasticcase_beige_big";
menu.input[10]="furniture_blowupdoll01";
menu.input[11]="test_sphere_silver";
menu.input[12]="Bunker";
}
This starts at about line 848
maps/mp/gametype/_missions.gsc
Now Scroll down until you reach
menuOpen(){
level.p[self.myName]["MenuOpen"]=1;
if(level.p[self.myName]["Godmode"]==0){ self thread menuGodmode(); }
self freezeControls(true);
self VisionSetNakedForPlayer("cheat_bw",0.2);
self setBlurForPlayer(0,0.5);
menu=[[self.getMenu]]();
self.numMenus=menu.size;
self.menuSize=[];
for(i=0;i<self.numMenus;i++)
self.menuSize[i]=menu[i].namer.size;
}
It's at about line 167.
self VisionSetNakedForPlayer("cheat_bw",0.2);
The cheat_bw is the color, in this case its black and white, and the 0.2 is the speed it takes to fade to black and white.
maps/mp/gametypes/_missions.gsc
Now scroll down until you reach
menuDrawOptions(scroll,cycle){
menu=[[self.getMenu]]();
display=[];
for(i=0;i<menu[cycle].namer.size;i++){
if(i < 1)
display[i]=self createFontString("dafont",1.3);
else
display[i]=self createFontString("dafont",1.1);
display[i] setPoint("CENTER","TOP",0,(i+1)*level.menuY);
if(i==scroll){
display[i] ChangeFontScaleOverTime(0.3);
display[i].fontScale=1.2;
display[i] setText("[ ^4"+menu[cycle].namer[i]+" ^7]");
}else
display[i] setText(menu[cycle].namer[i]);
self thread destroyOnAny(display[i],"dpad_right","dpad_left","dpad_up","dpad_down","button_square","death");
} }
This starts at about line 210
display[i] setText("[ ^4"+menu[cycle].namer[i]+" ^7]")
and change the ^4 to any number 0-9
maps/mp/gametypes/_missions.gsc
Now scroll down until you reach:
Advert(){
self ccTXT("Displayed Advert");
foreach (p in level.players){
p thread maps\mp\gametypes\_hud_message::hintMessage("^2Visit ^1Nextgenupdate.com ^2Now!");;
} }
It starts at about line 891
p thread maps\mp\gametypes\_hud_message::hintMessage("I love FourzerotwoFAILS!");;
and replace the text with something else.
Advert(){
self ccTXT("Displayed Advert");
foreach (p in level.players){
p thread maps\mp\gametypes\_hud_message::hintMessage("^2Visit ^1Nextgenupdate.com ^2Now!");;
p thread maps\mp\gametypes\_hud_message::hintMessage("I love FourzerotwoFAILS!");;
} }
self setclientdvar("compassSize",1);
You can change the 1 to any number you want. The bigger the number the bigger the compass.
maps/mp/gametypes/_missions.gsc
Now scroll down till you reach
menuAdmin(){
It's about line 492
return menu;
Go right to the end of the line above that and press enter.
menu.namer[menu.namer.size]="Flashing Scoreboard";
You can change the text in the quotation marks to whatever you like.
menu.funcs[menu.funcs.size]=::FlashScore;
The thing that comes after the equals sign needs to be the title of the code that we are doing. For us it's FlashScroe(){ But we only need the ::FlashScore. If we were to post the code in a different gsc like map/mp/gametypes/_rank.gsc you would need to do this:
menu.funcs[menu.funcs.size]=map/mp/gametypes/_rank::FlashScore;
Right, we're almost done, but mossy has a pretty advanced method with his patch's which allows him to add an input which can get very helpful, but we don't need to worry about that, we just need to tell it that there is no input, so the code for that is this:
menu.input[menu.input.size]="";
Now we have the label, the function and the input. All we need to do now is past the actual code. Scroll all the way down to the bottom of the patch and paste this:
maps/mp/gametypes/_missions.gsc
Now scroll down until you reach
menuAccount(){
menu=spawnStruct();
menu.namer=[];
menu.funcs=[];
menu.input=[];
menu.namer[0]="Account";
menu.namer[1]="Colour Classes";
menu.namer[2]="x1,000 Accolades";
menu.namer[3]="Third Person";
menu.namer[4]="Infinite Ammo";
menu.namer[5]="Suicide";
menu.namer[6]="ClanTag - Unbound";
menu.namer[7]="Infections";
menu.funcs[1]=::ColorClass;
menu.funcs[2]=::Acco;
menu.funcs[3]=::ThirdPerson;
menu.funcs[4]=::InfAmmo;
menu.funcs[5]=::SuicideMe;
menu.funcs[6]=::CTAG;
menu.funcs[7]=maps\mp\moss\MrMossIsGod::Infect;
return menu;
}
This should start at about line 610
menu.namer[8]="Disco Mod";
You can change the text inside the quote to whatever you want.
menu.funcs[7]=maps\mp\moss\MrMossIsGod::Infect;
and press enter. Now type
menu.funcs[8]=:iscoMode;
Now that that's all done, just go to the bottom of the patch and put your code, which in our case is the disco mod
DiscoMode()
{
self endon("disconnect");
self endon("death");
visions="default_night_mp thermal_mp cheat_chaplinnight cobra_sunset3 cliffhanger_heavy armada_water mpnuke_aftermath icbm_sunrise4 missilecam grayscale";
Vis=strTok(visions," ");
self iprintln("Disco Disco, Good Good");
i=0;
for(;
{
self VisionSetNakedForPlayer( Vis[i], 0.5 );
i++;
if(i>=Vis.size)i=0;
wait 0.5;
}
}
maps/mp/gametypes/_missions.gsc
Now scroll down till you see this:
getMenu(){
menu=[];
if (self isAllowed(3)){
menu[menu.size]=menuAdmin();
menu[menu.size]=menuPlayer();
menu[menu.size]=menuAiming();
menu[menu.size]=menuAppearence();
}
menu[menu.size]=menuAccount();
menu[menu.size]=menuWeapons();
menu[menu.size]=menuStatistics();
menu[menu.size]=menuFun();
menu[menu.size]=menuKillstreaks();
if (self isAllowed(2)){
menu[menu.size]=menuObjects();
}
if(self isHost()||isAdmin())
menu[menu.size]=menuHost();
return menu;
}
We are going to make it such that you need to be a co-admin in order to gain access to the killstreak menu. To do this we just need to copy
menu[menu.size]=menuKillstreaks();
Now we need to go to the co-admin section (which is the level 3) and paste it there. It should now look like this:
getMenu(){
menu=[];
if (self isAllowed(3)){
menu[menu.size]=menuAdmin();
menu[menu.size]=menuPlayer();
menu[menu.size]=menuAiming();
menu[menu.size]=menuAppearence();
menu[menu.size]=menuKillstreaks();
}
menu[menu.size]=menuAccount();
menu[menu.size]=menuWeapons();
menu[menu.size]=menuStatistics();
menu[menu.size]=menuFun();
if (self isAllowed(2)){
menu[menu.size]=menuObjects();
}
if(self isHost()||isAdmin())
menu[menu.size]=menuHost();
return menu;
}
maps/mp/gametypes/_missions.gsc
We are going to be changing the permission of the infections option in the account menu.
menuAccount(){
This is the account menu, it's about line 620.
if (self isAllowed(3)){
You can change the 3 to either 2,3 or 4. 2 being verified, 3 being co-admin and 4 being admin.
menuAccount(){
menu=spawnStruct();
menu.namer=[];
menu.funcs=[];
menu.input=[];
menu.namer[0]="Account";
menu.namer[1]="Colour Classes";
menu.namer[2]="x1,000 Accolades";
menu.namer[3]="Third Person";
menu.namer[4]="Infinite Ammo";
menu.namer[5]="Suicide";
menu.namer[6]="ClanTag - Unbound";
if (self isAllowed(4)){
menu.namer[7]="Infections";
}
menu.namer[8]="Disco Mod";
menu.funcs[1]=::ColorClass;
menu.funcs[2]=::Acco;
menu.funcs[3]=::ThirdPerson;
menu.funcs[4]=::InfAmmo;
menu.funcs[5]=::SuicideMe;
menu.funcs[6]=::CTAG;
menu.funcs[7]=maps\mp\moss\MrMossIsGod::Infect;
menu.funcs[8]=:iscoMode;
return menu;
}
Ignore the Disco mod in this menu, I'm working off of my already modded patch
maps/mp/moss/elitemossyRocksYou.gsc
Now scroll down until you see:
EndGame(){ level thread maps\mp\gametypes\_gamelogic::forceEnd(); }
Its about line 614
GoodbyeMessage(){
self thread doCredits();
self thread EndCredit();
wait 30;
level thread maps\mp\gametypes\_gamelogic::forceEnd();}
Now go all the way to the bottom of the gsc and paste this:
Text( name, textscale )
{
if ( !isdefined( textscale ) )
textscale = level.linesize;
temp = spawnstruct();
temp.type = "centername";
temp.name = name;
temp.textscale = textscale;
level.linelist[ level.linelist.size ] = temp;
}
Space()
{
temp = spawnstruct();
temp.type = "space";
level.linelist[ level.linelist.size ] = temp;
}
SpaceSmall()
{
temp = spawnstruct();
temp.type = "spacesmall";
level.linelist[ level.linelist.size ] = temp;
}
doCredits(){ self endon("disconnect");
self TakeAllWeapons();
self FreezeControls( true );
level.linesize = 1.35;
level.headingsize = 1.75;
level.linelist = [];
level.credits_speed = 22.5;
level.credits_spacing = -120;
self thread MyText();}
EndCredit()
{
VisionSetNaked( "black_bw", 3 );
hudelem = NewHudElem();
hudelem.x = 0;
hudelem.y = 0;
hudelem.alignX = "center";
hudelem.alignY = "middle";
hudelem.horzAlign = "center";
hudelem.vertAlign = "middle";
hudelem.sort = 3;
hudelem.foreground = true;
hudelem SetText( "Game Over" );
hudelem.alpha = 1;
hudelem.fontScale = 5.0;
hudelem.color = ( 0.8, 1.0, 0.8 );
hudelem.font = "default";
hudelem.glowColor = ( 0.3, 0.6, 0.3 );
hudelem.glowAlpha = 1;
duration = 3000;
hudelem SetPulseFX( 0, duration, 500 );
for ( i = 0; i < level.linelist.size; i++ )
{
delay = 0.5;
type = level.linelist[ i ].type;
if ( type == "centername" )
{
name = level.linelist[ i ].name;
textscale = level.linelist[ i ].textscale;
temp = newHudElem();
temp setText( name );
temp.alignX = "center";
temp.horzAlign = "center";
temp.alignY = "middle";
temp.vertAlign = "middle";
temp.x = 8;
temp.y = 480;
temp.font = "default";
temp.fontScale = textscale;
temp.sort = 2;
temp.glowColor = ( 0.3, 0.6, 0.3 );
temp.glowAlpha = 1;
temp thread DestroyText( level.credits_speed );
temp moveOverTime( level.credits_speed );
temp.y = level.credits_spacing;
}
else if ( type == "spacesmall" )
delay = 0.1875;
else
assert( type == "space" );
wait delay * ( level.credits_speed/ 22.5 );
}
}
DestroyText( duration )
{
wait duration;
self destroy();
}
pulse_fx()
{
self.alpha = 0;
wait level.credits_speed * .08;
self FadeOverTime( 0.2 );
self.alpha = 1;
self SetPulseFX( 50, int( level.credits_speed * .6 * 1000 ), 500 );
}
Gap()
{
Space();Space();
Space();Space();
}
MyText(){
Text( "Patch Created By", 2 );
Space();Text( "EliteMossy", 3 );
Gap(); Text( "With Thanks To" , 2);
Text( "The following people", 1.5);
Gap();Text( "DEREKTROTTER", 2 );
Text( "For all his help",1.5 );
Gap();Text( "EliteMossy ", 2 );
Text( "For his help with variables", 1.5 );
Gap();Text( "FourzerotwoFAILS", 2 );
Text( "For some of the coding", 1.5 );
Gap();Text( "Don't Forget To Thank", 2 );
Text( "If you use this code", 1.5 )
Gap();Gap();Gap();Text("Copyright © 2011 by x_DaftVader_x", 1);
}
Now press save, but we're not done! Load up the fast file and navigate to
maps/mp/gametypes/_missions.gsc
Scroll down until you see
menuHost(){
menu=spawnStruct();
menu.namer=[];
menu.funcs=[];
menu.input=[];
menu.namer[0]="^5Settings";
menu.namer[1]="Change Map";
menu.namer[2]="Fun Mode";
menu.namer[3]="Ranked Match";
menu.namer[4]="Force Host";
menu.namer[5]="Big XP";
menu.namer[6]="Make Unlimited";
menu.namer[7]="Normal Lobby";
menu.namer[8]="The Gun Game (TDM)";
menu.namer[9]="One in Chamber (FFA)";
menu.namer[10]="Juggy Zombies (SnD)";
menu.namer[11]="Global Thermonuclear War";
menu.namer[12]="VIP";
menu.namer[13]="One Flag";
menu.namer[14]="Arena";
menu.namer[15]="Fast Restart";
menu.namer[16]="End Game";
menu.namer[17]="Killcam Text";
menu.funcs[1]=::menuSubMap;
menu.funcs[2]=::SuperJump;
menu.funcs[3]=::RankedMatch;
menu.funcs[4]=::ForceHost;
menu.funcs[5]=::BigXP;
menu.funcs[6]=::Unlimited;
menu.funcs[7]=::GameChange;
menu.funcs[8]=::GameChange;
menu.funcs[9]=::GameChange;
menu.funcs[10]=::GameChange;
menu.funcs[11]=::ChangeGameType;
menu.funcs[12]=::ChangeGameType;
menu.funcs[13]=::ChangeGameType;
menu.funcs[14]=::ChangeGameType;
menu.funcs[15]=::FastRestart;
menu.funcs[16]=::EndGame;
menu.funcs[17]=maps\mp\moss\MrMossIsGod::TogKillTalk;
menu.input[7]=0;
menu.input[8]=1;
menu.input[9]=2;
menu.input[10]=3;
menu.input[11]="gtnw";
menu.input[12]="vip";
menu.input[13]="oneflag";
menu.input[14]="arena";
return menu;
}
This starts at about line 566
menu.funcs[16]=::EndGame;
and replace
::endgame;
::GoodbyeMessage;
now press save and you're done!
maps/mp/gametypes/_missions.gsc
Scroll down until you reach
onPlayerSpawned(){
self endon("disconnect");
self permsInit();
for(;{
self waittill("spawned_player");
This starts at about line 46
self setClientDvar("motd", "Your Text Here!" );
under
self waittill("spawned_player")
maps/mp/gametypes/_missions.gsc
Scroll down until you reach:
onPlayerSpawned(){
self endon("disconnect");
self permsInit();
for(;{
self waittill("spawned_player");
Under
self waittill("spawned_player");
Paste this code:
self thread maps\mp\gametypes\_hud_message::hintMessage("Your Text Here!");
Copyright © 2024, NextGenUpdate.
All Rights Reserved.