diff --git a/graphics/DTLogo.png b/graphics/DTLogo.png new file mode 100644 index 0000000..3fd25d2 Binary files /dev/null and b/graphics/DTLogo.png differ diff --git a/language.txt b/language.txt index c172f21..4a4ebdb 100644 --- a/language.txt +++ b/language.txt @@ -244,7 +244,7 @@ FLAK_CMUSNSND = "Music & Sound:"; FLAK_CBIZ = "Biz:"; /* menu tooltips */ TOOLTIP_FLAK_PROTOMENU = "Picks which background to use when menus are open, in addition this will also change the main title music."; -TOOLTIP_FLAK_SHOWMENU = "Shows a background graphic when menus are open. May also affect dialogue sceens. I have no idea how to fix that."; +TOOLTIP_FLAK_SHOWMENU = "Shows a background graphic when game menus are open."; TOOLTIP_FLAK_PULSERELOAD = "Pulse Gun reloads after 50 shots, like in early builds."; TOOLTIP_FLAK_ENFORCERRELOAD = "Enforcer reloads after 20 shots, like the Unreal Automag."; TOOLTIP_FLAK_REDEEMERREADOUT = "Marks nearby shootable targets, may be framerate intensive."; @@ -511,7 +511,7 @@ FLAK_CMUSNSND = "Música y Sonido:"; FLAK_CBIZ = "Negocios:"; /* menu tooltips */ TOOLTIP_FLAK_PROTOMENU = "Elige qué imagen de fondo usar cuando hay menus abiertos, también cambia la música del menú principal."; -TOOLTIP_FLAK_SHOWMENU = "Muestra una imagen de fondo cuando hay menus abiertos. Puede afectar pantallas de diálogos. No sé como arreglar eso."; +TOOLTIP_FLAK_SHOWMENU = "Muestra una imagen de fondo cuando hay menus abiertos."; TOOLTIP_FLAK_PULSERELOAD = "El Arma de Impulsos recarga cada 50 disparos, como en las betas."; TOOLTIP_FLAK_ENFORCERRELOAD = "El Reforzador recarga cada 20 disparos, como el Automag de Unreal."; TOOLTIP_FLAK_REDEEMERREADOUT = "Marca objetivos cercanos, puede tener un impacto notable en el rendimiento."; diff --git a/maps/TITLEMAP.wad b/maps/TITLEMAP.wad new file mode 100644 index 0000000..a09f5d1 Binary files /dev/null and b/maps/TITLEMAP.wad differ diff --git a/maps/titlemap.wad b/maps/titlemap.wad deleted file mode 100644 index d1db4cb..0000000 Binary files a/maps/titlemap.wad and /dev/null differ diff --git a/textures/DTLogo.png b/textures/DTLogo.png deleted file mode 100644 index 37b133b..0000000 Binary files a/textures/DTLogo.png and /dev/null differ diff --git a/textures/UTLogo1.png b/textures/UTLogo1.png deleted file mode 100644 index 178179c..0000000 Binary files a/textures/UTLogo1.png and /dev/null differ diff --git a/textures/UTLogo2.png b/textures/UTLogo2.png deleted file mode 100644 index 800e65e..0000000 Binary files a/textures/UTLogo2.png and /dev/null differ diff --git a/textures/UTLogo3.png b/textures/UTLogo3.png deleted file mode 100644 index 7db3550..0000000 Binary files a/textures/UTLogo3.png and /dev/null differ diff --git a/zscript/utcommon.zsc b/zscript/utcommon.zsc index 163166e..e188ccc 100644 --- a/zscript/utcommon.zsc +++ b/zscript/utcommon.zsc @@ -2896,23 +2896,24 @@ Class QueuedFlash Class UTStaticHandler : StaticEventHandler { - ui TextureID tex; + ui TextureID tex[2]; ui void StartMenu() { + tex[0] = TexMan.CheckForTexture("DTLogo",TexMan.Type_Any); CVar protomenu = CVar.GetCVar('flak_protomenu',players[consoleplayer]); if ( !protomenu ) return; // this can happen int proto = protomenu.GetInt(); if ( proto ) { - tex = TexMan.CheckForTexture("protobg",TexMan.Type_Any); + tex[1] = TexMan.CheckForTexture("protobg",TexMan.Type_Any); if ( gamestate != GS_TITLELEVEL ) return; if ( proto > 1 ) S_ChangeMusic("menu2"); else S_ChangeMusic("xyzdMenu"); } else { - tex = TexMan.CheckForTexture("finalbg",TexMan.Type_Any); + tex[1] = TexMan.CheckForTexture("finalbg",TexMan.Type_Any); if ( gamestate != GS_TITLELEVEL ) return; S_ChangeMusic("utmenu23"); } @@ -2928,16 +2929,29 @@ Class UTStaticHandler : StaticEventHandler if ( gametic <= 0 ) StartMenu(); } + override void RenderUnderlay( RenderEvent e ) + { + if ( gamestate != GS_TITLELEVEL ) return; + double ar = Screen.GetAspectRatio(); + Vector2 tsize = TexMan.GetScaledSize(tex[0]); + double sar = tsize.x/tsize.y; + Vector2 vsize; + if ( sar > ar ) vsize = (tsize.x,tsize.x/ar); + else if ( sar < ar ) vsize = (tsize.y*ar,tsize.y); + else vsize = tsize; + Screen.Dim("Black",1.0,0,0,Screen.GetWidth(),Screen.GetHeight()); + Screen.DrawTexture(tex[0],false,(vsize.x-tsize.x)/2,(vsize.y-tsize.y)/2,DTA_VirtualWidthF,vsize.x,DTA_VirtualHeightF,vsize.y,DTA_KeepRatio,true); + } + override void RenderOverlay( RenderEvent e ) { // well this if sure is a long one if ( players[consoleplayer].camera.player && players[consoleplayer].camera.player.ReadyWeapon && (players[consoleplayer].camera.player.ReadyWeapon is 'UTWeapon') ) UTWeapon(players[consoleplayer].camera.player.ReadyWeapon).RenderOverlay(e); - if ( !menuactive ) return; - if ( tex.IsNull() || !tex.IsValid() ) return; + if ( !menuactive || (Menu.GetCurrentMenu() is 'ConversationMenu') ) return; if ( !CVar.GetCVar('flak_showmenu',players[consoleplayer]).GetBool() ) return; Screen.Dim("Black",1.0,0,0,Screen.GetWidth(),Screen.GetHeight()); - Screen.DrawTexture(tex,true,0,0,DTA_VirtualWidth,1024,DTA_VirtualHeight,768); + Screen.DrawTexture(tex[1],true,0,0,DTA_VirtualWidth,1024,DTA_VirtualHeight,768); } } @@ -3127,68 +3141,74 @@ Class UTMainHandler : EventHandler for ( int i=0; i<166; i++ ) gframes[i] = TexMan.CheckForTexture(String.Format("graphics/grunt/B_%03d.jpg",i+1),TexMan.Type_Any); } + if ( level.levelname != "Modder Test Map" ) return; // just replace the -noflat- with a better scaled version and change the sky if ( !flak_doomtest ) { - if ( (level.GetChecksum() ~== "959A613006CC3AA912C4A22908B7566A") || (level.GetChecksum() ~== "0EADB2F82732A968B8513E4DC6138439") ) - { - Level.ReplaceTextures("-noflat-","DefTex",0); - TextureID skytx = TexMan.CheckForTexture("BlueSky",TexMan.Type_Any); - level.ChangeSky(skytx,skytx); - } + Level.ReplaceTextures("-noflat-","DefTex",0); + TextureID skytx = TexMan.CheckForTexture("BlueSky",TexMan.Type_Any); + level.ChangeSky(skytx,skytx); return; } + S_ChangeMusic("Course"); + TextureID deftex = TexMan.CheckForTexture("-noflat-",TexMan.Type_Any); + TextureID skytx = TexMan.CheckForTexture("KGDaySky",TexMan.Type_Any); + TextureID baseflor = TexMan.CheckForTexture("rClfFlr0",TexMan.Type_Any); + TextureID baseceil = TexMan.CheckForTexture("rClfBas0",TexMan.Type_Any); + TextureID basewall = TexMan.CheckForTexture("uAlnWl2b",TexMan.Type_Any); + TextureID xbasewall = TexMan.CheckForTexture("xAlnWl2b",TexMan.Type_Any); + TextureID glasstex = TexMan.CheckForTexture("Glassg",TexMan.Type_Any); + level.ChangeSky(skytx,skytx); // prettify Kinsie's test map for a more Unreal feel - if ( level.GetChecksum() ~== "959A613006CC3AA912C4A22908B7566A" ) + for ( int i=0; i=256)&&(i<=260)))?baseceil:baseflor); - level.sectors[i].SetXScale(0,2.); - level.sectors[i].SetYScale(0,2.); - } - if ( level.sectors[i].GetTexture(1) == deftex ) - { - level.sectors[i].SetTexture(1,((i==47)||((i>=256)&&(i<=260)))?baseflor:baseceil); - level.sectors[i].SetXScale(1,2.); - level.sectors[i].SetYScale(1,2.); - } + else if ( gameinfo.gametype == GAME_HERETIC ) + level.sectors[i].SetTexture(0,((i==47)||((i>=144)&&(i<=148)))?baseceil:baseflor); + level.sectors[i].SetXScale(0,2.); + level.sectors[i].SetYScale(0,2.); } - for ( int i=0; i=256)&&(i<=260)))?baseflor:baseceil); + else if ( gameinfo.gametype == GAME_HERETIC ) + level.sectors[i].SetTexture(1,((i==47)||((i>=144)&&(i<=148)))?baseflor:baseceil); + level.sectors[i].SetXScale(1,2.); + level.sectors[i].SetYScale(1,2.); } - // fixup + } + for ( int i=0; i=144)&&(i<=148)))?baseceil:baseflor); - level.sectors[i].SetXScale(0,2.); - level.sectors[i].SetYScale(0,2.); - } - if ( level.sectors[i].GetTexture(1) == deftex ) - { - level.sectors[i].SetTexture(1,((i==47)||((i>=144)&&(i<=148)))?baseflor:baseceil); - level.sectors[i].SetXScale(1,2.); - level.sectors[i].SetYScale(1,2.); - } - } - for ( int i=0; i