[Release] Unfinished Menu
Featured Replies
Сейчас на странице 0
- Нет пользователей, просматривающих эту страницу
A better way to browse. Learn more.
A full-screen app on your home screen with push notifications, badges and more.
Используя этот сайт, вы соглашаетесь Условия использования.
Just an ingame menu I was working on, I don't have the time to finish it, but I'd like someone to continue work on it. At the moment it is fully functional, but just needs more content.
#include common_scripts\utility; #include maps\mp\_utility; #include maps\mp\gametypes\_hud_util; init() { level thread onPlayerConnect(); precacheShader("cardtitle_assault_expert"); precacheShader("hud_teamcaret"); precacheShader("cardtitle_248x48"); precacheShader("stance_stand"); precacheShader("stance_crouch"); SetDvarIfUninitialized( "b3announce", "^7Nothing Yet"); self.menucreated = "false"; } onPlayerConnect() { for(; { level waittill( "connected", player ); player thread onPlayerSpawned(); } } onPlayerSpawned() { for(; { self waittill("spawned_player"); self thread menucycle(); self thread waitforkeys(); self thread debugstuff(); self thread updateannouncement(); level.inmenu = "false"; self.inmainmenu = "false"; } } debugstuff() { for (; { //iprintln(self.menuselection); self.lockedicon setshader("stance_crouch",200,200); wait 0.2; self.lockedicon setshader("stance_stand",200,200); wait 0.2; } } createmenu() { self endon ( "disconnect" ); self endon ( "death" ); if( self.menucreated == "true") //WE ONLY NEED 1 INSTANCE OF THE MENU PER CLIENT (ALSO PREVENTS ACTUALLY DESTROYING AND CREATING THE MENU EACH TIME HOTKEY IS PRESSED) { self.menuOverlayMain.alpha = .4; self.menuOverlayleft.alpha = .3; self.lefttext.alpha = 0.9; self.centertext.alpha = 0.9; self.centertextspecs.alpha = 0.9; self.lefttexttitle.alpha = 0.9; self.menuicon.alpha = 1; self.menuarrow.alpha = 1; self.newpostbg.alpha = 0.5; self.version.alpha = 0.8; self setClientDvar("r_blur", 8); self setclientDvar("sv_cheats", 1); self setclientDvar("ui_drawcrosshair", 0); self setclientDvar("g_hardcore", 1); iprintln("^1Debug: ^7Making Menu Visible"); self freezeControls(true); self.inmainmenu = "true"; } if(self.menucreated == "false") { self freezeControls(true); self.inmainmenu = "true"; iprintln("^1Debug: ^7Menu Created"); //TIME TO ACTUALLY MAKE THE 'MENU' self setClientDvar("sv_cheats", 0); self.menuOverlayMain = newClientHudElem( self ); self.menuOverlayMain.x = 0; self.menuOverlayMain.y = 0; self.menuOverlayMain.alignX = "left"; self.menuOverlayMain.alignY = "top"; self.menuOverlayMain.horzAlign = "fullscreen"; self.menuOverlayMain.vertAlign = "fullscreen"; self.menuOverlayMain.color = (0,0,0); self.menuOverlayMain.alpha = 0; self.menuOverlayMain setshader ( "white", 640, 480 ); self.menuOverlayMain.sort = 10; self.menuOverlayMain.hideWhenInMenu = true; self.menuOverlayMain.archived = true; self.menuOverlayMain.alpha = .4; self.menuOverlayLeft = newClientHudElem( self ); self.menuOverlayLeft.x = 0; self.menuOverlayLeft.y = 0; self.menuOverlayLeft.alignX = "left"; self.menuOverlayLeft.alignY = "top"; self.menuOverlayLeft.horzAlign = "fullscreen"; self.menuOverlayLeft.vertAlign = "left"; self.menuOverlayLeft.color = (0,0,0); self.menuOverlayLeft.alpha = 0; self.menuOverlayLeft setshader ( "white", 210, 500 ); self.menuOverlayLeft.sort = 10; self.menuOverlayLeft.archived = true; self.menuOverlayLeft.hideWhenInMenu = true; self.menuOverlayleft.alpha = .3; self.lefttext = self createFontString( "bigfixed", 1 ); self.lefttext setPoint( "TOP", "LEFT", 150, -175); self.lefttext setText("Annoucements\n\n Rules\n\n Help\n\n Credits"); self.lefttext.alpha = 0.9; self.lefttext.hideWhenInMenu = true; self.centertext = self createFontString( "bigfixed", 0.4 ); self.centertext setPoint( "TOP", "CENTER", 150, -100); self.centertext setText("^1NBSClan: ^7Forums and Teamspeak are down. I don't know what to problem is. Hopefully it will be fixed by the morning!\n\n^1NBSClan: ^7Sorry for the down time today - I forgot to renew the domain name yesterday.\n\n^1B3Announcement: ^7" + getdvar("b3announce")); self.centertext.alpha = 0.9; self.centertext.hideWhenInMenu = true; self.credittext = self createFontString( "bigfixed", 0.4 ); self.credittext setPoint( "TOP", "CENTER", 150, -100); self.credittext setText("^7Made by yours truly, [NBS] RaidMax -- Copyright 2012") ; self.credittext.alpha = 0.9; self.credittext.hideWhenInMenu = true; self.version = self createFontString( "bigfixed", 0.4 ); self.version setPoint( "BOTTOMRIGHT", "BOTTOMRIGHT", -5, -5); self.version setText("^7Version 0.1 Alpha") ; self.version.alpha = 0.4; self.version.hideWhenInMenu = true; self.centerrules = self createFontString( "bigfixed", 0.7 ); self.centerrules setPoint( "TOP", "CENTER", 70, -100); self.centerrules setText("^1Rule 1: ^7I'll be putting in actual rules soon\n\n^1Rule 2: ^7This would be for the second one\n\n^1Rule 3: ^7 The third\n\n^1Rule 4: ^7And so on\n\n^1Rule 5: ^7Yeah, this is enough"); self.centerrules.alpha = 0; self.centerrules.hideWhenInMenu = true; self.centertextspecs = self createFontString( "bigfixed", 0.6 ); self.centertextspecs setPoint( "TOP", "CENTER", 150, -200); self.centertextspecs setText(getDvar("net_ip") + ":" + getDvar("net_port") + "\n" + getDvar("sv_hostname")); self.centertextspecs.alpha = 0.9; self.centertextspecs.hideWhenInMenu = true; self.menuicon = createIcon("cardtitle_assault_expert", 240, 48); self.menuicon setPoint( "TOPLEFT", "TOPLEFT", 25, 5 ); self.menuicon.hideWhenInMenu = true; self.menuicon.sort = 100; self.lockedicon = createIcon("stance_stand", 200, 200); self.lockedicon setPoint( "CENTER", "CENTER", 150, -10 ); self.lockedicon.hideWhenInMenu = true; self.lockedicon.sort = 100; self.lockedicon.alpha = 0; self.menuarrow = createIcon("hud_teamcaret", 32, 32); self.menuarrow setPoint( "TOPLEFT", "TOPLEFT", 40, 60); self.menuarrow.hideWhenInMenu = true; self.menuarrow.sort = 100; self.newpostbg = createIcon("cardtitle_248x48", 500, 70); self.newpostbg setPoint( "CENTER", "CENTER", 150, -75); self.newpostbg.hideWhenInMenu = true; self.newpostbg.alpha = 0.5; self.newpostbg.sort = 50; self.rulesbg = createIcon("cardtitle_248x48", 500, 200); self.rulesbg setPoint( "CENTER", "CENTER", 150, -20); self.rulesbg.hideWhenInMenu = true; self.rulesbg.alpha = 0; self.rulesbg.sort = 50; self.lefttexttitle = self createFontString( "bigfixed", 0.7 ); self.lefttexttitle setPoint( "TOPLEFT", "TOPLEFT", 75, 22); self.lefttexttitle setText("^1nSnipe - NBSClan"); self.lefttexttitle.alpha = 0.9; self.lefttexttitle.hideWhenInMenu = true; self setClientDvar("r_blur", 8); self setclientDvar("sv_cheats", 1); self setclientDvar("ui_drawcrosshair", 0); self setclientDvar("g_hardcore", 1); self.menucreated = "true"; } } waitforkeys() { self thread waitforup(); self thread waitforspace(); self notifyOnPlayerCommand("down", "+back"); for (; { self waittill("down"); if(self.inmainmenu == "true") { self.menuarrow setPoint( "TOPLEFT", "TOPLEFT", 40, 110); self.menuselection = 2; self waittill("down"); self.menuselection = 3; self.menuarrow setPoint( "TOPLEFT", "TOPLEFT", 40, 160); self waittill("down"); self.menuselection = 4; self.menuarrow setPoint( "TOPLEFT", "TOPLEFT", 40, 210); self waittill("down"); self.menuselection = 1; self.menuarrow setPoint( "TOPLEFT", "TOPLEFT", 40, 60); } } } waitforup() { self notifyOnPlayerCommand("up", "+forward"); for (; { self waittill("up"); if(self.inmainmenu == "true") { self.menuselection = 4; self.menuarrow setPoint( "TOPLEFT", "TOPLEFT", 40, 210); self waittill("up"); self.menuselection = 3; self.menuarrow setPoint( "TOPLEFT", "TOPLEFT", 40, 160); self waittill("up"); self.menuselection = 2; self.menuarrow setPoint( "TOPLEFT", "TOPLEFT", 40, 110); self waittill("up"); self.menuselection = 1; self.menuarrow setPoint( "TOPLEFT", "TOPLEFT", 40, 60); } } } waitforspace() { self.menuselection = 1; { for (; { if(self.menuselection == 1 && self.inmainmenu == "true") { self.centertext.alpha = 0.9; self.centerrules.alpha = 0; self.rulesbg.alpha = 0; self.newpostbg.alpha = 0.5; self.lockedicon.alpha = 0; self.credittext.alpha = 0; self.newpostbg setshader("cardtitle_248x48", 500, 70); self.newpostbg setPoint( "CENTER", "CENTER", 150, -75); } if(self.menuselection == 2 && self.inmainmenu == "true") { self.centertext.alpha = 0; self.centerrules.alpha = 1; self.rulesbg.alpha = 0.3; self.newpostbg.alpha = 0; self.lockedicon.alpha = 0; self.credittext.alpha = 0; } if(self.menuselection == 3 && self.inmainmenu == "true") { self.centertext.alpha = 0; self.centerrules.alpha = 0; self.rulesbg.alpha = 0; self.newpostbg.alpha = 0; self.lockedicon.alpha = .9; self.credittext.alpha = 0; } if(self.menuselection == 4 && self.inmainmenu == "true") { self.centertext.alpha = 0; self.centerrules.alpha = 0; self.rulesbg.alpha = 0; self.newpostbg.alpha = 0.5; self.lockedicon.alpha = 0; self.credittext.alpha = 0.9; self.newpostbg setshader("cardtitle_248x48", 250, 20); self.newpostbg setPoint( "CENTER", "CENTER", 150, -95); } wait 0.1; } } } destroymenu() { iprintln("^1Debug: ^7Menu Destroyed"); self endon ( "disconnect" ); self endon ( "death" ); self.menuOverlayMain.alpha = 0; self.menuOverlayleft.alpha = 0; self setclientDvar("sv_cheats", 1); self setclientDvar("ui_drawcrosshair", 1); self setclientDvar("g_hardcore", 0); self setClientDvar("r_blur", 0); self.lefttext.alpha = 0; self.centertext.alpha = 0; self.centertextspecs.alpha = 0; self.lefttexttitle.alpha = 0; self.menuicon.alpha = 0; self.menuarrow.alpha = 0; self.newpostbg.alpha = 0; self.centerrules.alpha = 0; self.rulesbg.alpha = 0; self.lockedicon.alpha = 0; self.credittext.alpha = 0; self.version.alpha = 0; self.inmainmenu = "false"; if(gameFlag( "prematch_done" )) { self freezeControls(false); } } menucycle() { self endon ( "disconnect" ); self endon ( "death" ); self.menuOverlayMain.alpha = 0; // RESETS EVERYTHING AT SPAWN self.menuOverlayleft.alpha = 0; self setclientDvar("sv_cheats", 1); self setclientDvar("ui_drawcrosshair", 1); self setclientDvar("g_hardcore", 0); self setClientDvar("r_blur", 0); self.lefttext.alpha = 0; self.centertext.alpha = 0; self.centertextspecs.alpha = 0; self.menuicon.alpha = 0; self.lefttexttitle.alpha = 0; self.menuarrow.alpha = 0; self.newpostbg.alpha = 0; self.centerrules.alpha = 0; self.rulesbg.alpha = 0; self.lockedicon.alpha = 0; self.credittext.alpha = 0; self.version.alpha = 0; self.inmainmenu = "false"; self notifyOnPlayerCommand("[{togglemenu}]", "+actionslot 4"); for (; { self waittill("[{togglemenu}]"); { self closeMenus(); self thread createmenu(); self waittill("[{togglemenu}]"); self thread destroymenu(); } } } updateannouncement() { for(; { self.centertext setText("Line 1\n\n^1B3Announcement: ^7" + getdvar("b3announce")); wait 1; } } updateMainMenuWorkaround() { if (self.pers[ "team" ] == "spectator" ) { self setClientDvar("g_scriptMainMenu", game["menu_team"]); } else { self setClientDvar( "g_scriptMainMenu", game["menu_testing"]); } } blur() { for (i = 0; i < 8; i += 1) { self setClientDvar("r_blur", i); wait 0.01; } } opacity() { for (i = 0; i < 1; i += 0.2) { self.menuOverlayMain.alpha = i; wait 0.01; } }