diff --git a/graphics/FINALE2_black.png b/graphics/FINALE2_black.png index ec038e039..7015de0f1 100644 Binary files a/graphics/FINALE2_black.png and b/graphics/FINALE2_black.png differ diff --git a/graphics/FINALE2_splode.png b/graphics/FINALE2_splode.png index 113b0a0f9..585aba511 100644 Binary files a/graphics/FINALE2_splode.png and b/graphics/FINALE2_splode.png differ diff --git a/graphics/M_DEMOLITIONIST.png b/graphics/M_DEMOLITIONIST.png index 7640b2e7d..37ca23a48 100644 Binary files a/graphics/M_DEMOLITIONIST.png and b/graphics/M_DEMOLITIONIST.png differ diff --git a/language.version b/language.version index 3e077fb4c..ab9661039 100644 --- a/language.version +++ b/language.version @@ -1,3 +1,3 @@ [default] -SWWM_MODVER="\chSWWM \czGZ\c- \cw0.9.11b-pre r492 \cu(Mon 17 May 18:53:37 CEST 2021)\c-"; -SWWM_SHORTVER="\cw0.9.11b-pre r492 \cu(2021-05-17 18:53:37)\c-"; +SWWM_MODVER="\chSWWM \czGZ\c- \cw0.9.11b-pre r493 \cu(Mon 17 May 21:20:08 CEST 2021)\c-"; +SWWM_SHORTVER="\cw0.9.11b-pre r493 \cu(2021-05-17 21:20:08)\c-"; diff --git a/menudef.txt b/menudef.txt index 03b6b6b82..48d5b3b97 100644 --- a/menudef.txt +++ b/menudef.txt @@ -262,7 +262,7 @@ ListMenu "MainMenu" Font "TewiShadedOutline", "White", "Sapphire" Selector "graphics/DemoIcon.png", -24, 0 LineSpacing 36 - SWWMLogo "graphics/M_SWWM.png" + SWWMLogo Position 0, 56 SWWMTextItemM "$MNU_NEWGAME", "n", "PlayerclassMenu" SWWMTextItemM "$MNU_OPTIONS", "o", "OptionsMenu" @@ -277,7 +277,7 @@ ListMenu "MainMenuTextOnly" Font "TewiShadedOutline", "White", "Sapphire" Selector "graphics/DemoIcon.png", -24, 0 LineSpacing 36 - SWWMLogo "graphics/M_SWWM.png" + SWWMLogo Position 0, 56 SWWMTextItemM "$MNU_NEWGAME", "n", "PlayerclassMenu" SWWMTextItemM "$MNU_OPTIONS", "o", "OptionsMenu" diff --git a/zscript/menu/swwm_menus.zsc b/zscript/menu/swwm_menus.zsc index e6b985352..fb6339586 100644 --- a/zscript/menu/swwm_menus.zsc +++ b/zscript/menu/swwm_menus.zsc @@ -294,14 +294,23 @@ Class SWWMMainMenu : SWWMCleanMenu double demopos; transient uint prevms; + override void Init( Menu parent, ListMenuDescriptor desc ) + { + Super.Init(parent,desc); + demotex = TexMan.CheckForTexture("graphics/M_DEMOLITIONIST.png",TexMan.Type_Any); + demopos = 120; + prevms = MSTime(); + } + + override void OnReturn() + { + demopos = 120; + prevms = MSTime(); + } + override void Drawer() { double frametime = (MSTime()-prevms)/1000.; - if ( !demotex ) - { - demotex = TexMan.CheckForTexture("graphics/M_DEMOLITIONIST.png",TexMan.Type_Any); - demopos = 120; - } double theta = clamp(2.*frametime,0.,1.); // naive, but whatever if ( prevms ) demopos = demopos*(1.-theta)-40*theta; double alph = clamp(1.-(demopos/100),0.,1.); @@ -539,10 +548,10 @@ class ListMenuItemSWWMLogo : ListMenuItem { TextureID mTexture; - void Init( ListMenuDescriptor desc, TextureID patch ) + void Init( ListMenuDescriptor desc ) { Super.Init(desc.mXpos,desc.mYpos); - mTexture = patch; + mTexture = TexMan.CheckForTexture("graphics/M_SWWM.png",TexMan.Type_Any); } override void Draw( bool selected, ListMenuDescriptor desc ) @@ -552,6 +561,8 @@ class ListMenuItemSWWMLogo : ListMenuItem int w = desc?desc.DisplayWidth():ListMenuDescriptor.CleanScale; int h = desc?desc.DisplayHeight():-1; Vector2 vs = TexMan.GetScaledSize(mTexture); + double scl = 256./vs.x; + vs *= scl; double x; if ( w == ListMenuDescriptor.CleanScale ) { @@ -559,12 +570,12 @@ class ListMenuItemSWWMLogo : ListMenuItem x = (x-160)*CleanXFac_1+(Screen.GetWidth()*.5); double y = -48; y = (y-100)*CleanYFac_1+(Screen.GetHeight()*.5); - Screen.DrawTexture(mTexture,false,x,y,DTA_CleanNoMove_1,true); + Screen.DrawTexture(mTexture,false,x,y,DTA_ScaleX,CleanXFac_1*scl,DTA_ScaleY,CleanYFac_1*scl); } else { x = (w-vs.x)/2; - Screen.DrawTexture(mTexture,false,x,-48,DTA_VirtualWidth,w,DTA_VirtualHeight,h,DTA_FullscreenScale,FSMode_ScaleToFit43); + Screen.DrawTexture(mTexture,false,x,-48,DTA_VirtualWidth,w,DTA_VirtualHeight,h,DTA_FullscreenScale,FSMode_ScaleToFit43,DTA_ScaleX,scl,DTA_ScaleY,scl); } } }