diff --git a/graphics/CHairC.png b/graphics/CHairC.png deleted file mode 100644 index 499e9536e..000000000 Binary files a/graphics/CHairC.png and /dev/null differ diff --git a/graphics/CHairD.png b/graphics/CHairD.png deleted file mode 100644 index 5bb4300aa..000000000 Binary files a/graphics/CHairD.png and /dev/null differ diff --git a/graphics/CHairL.png b/graphics/CHairL.png deleted file mode 100644 index 36a902c14..000000000 Binary files a/graphics/CHairL.png and /dev/null differ diff --git a/graphics/CHairR.png b/graphics/CHairR.png deleted file mode 100644 index 2ab5d1d3d..000000000 Binary files a/graphics/CHairR.png and /dev/null differ diff --git a/graphics/CHairU.png b/graphics/CHairU.png deleted file mode 100644 index e81e27932..000000000 Binary files a/graphics/CHairU.png and /dev/null differ diff --git a/graphics/bord_b.png b/graphics/bord_b.png new file mode 100644 index 000000000..3c84e7f8b Binary files /dev/null and b/graphics/bord_b.png differ diff --git a/graphics/bord_bl.png b/graphics/bord_bl.png new file mode 100644 index 000000000..ce41492fc Binary files /dev/null and b/graphics/bord_bl.png differ diff --git a/graphics/bord_br.png b/graphics/bord_br.png new file mode 100644 index 000000000..2966e5fef Binary files /dev/null and b/graphics/bord_br.png differ diff --git a/graphics/bord_flat.png b/graphics/bord_flat.png new file mode 100644 index 000000000..3c3ea3be5 Binary files /dev/null and b/graphics/bord_flat.png differ diff --git a/graphics/bord_l.png b/graphics/bord_l.png new file mode 100644 index 000000000..af34f4db8 Binary files /dev/null and b/graphics/bord_l.png differ diff --git a/graphics/bord_r.png b/graphics/bord_r.png new file mode 100644 index 000000000..754a0b6ef Binary files /dev/null and b/graphics/bord_r.png differ diff --git a/graphics/bord_t.png b/graphics/bord_t.png new file mode 100644 index 000000000..dad9f454b Binary files /dev/null and b/graphics/bord_t.png differ diff --git a/graphics/bord_tl.png b/graphics/bord_tl.png new file mode 100644 index 000000000..171ba8011 Binary files /dev/null and b/graphics/bord_tl.png differ diff --git a/graphics/bord_tr.png b/graphics/bord_tr.png new file mode 100644 index 000000000..8a2ed1dc1 Binary files /dev/null and b/graphics/bord_tr.png differ diff --git a/language.version b/language.version index 8f2f20a6b..059aedab0 100644 --- a/language.version +++ b/language.version @@ -1,2 +1,2 @@ [default] -SWWM_MODVER="\chSWWM \czGZ\c- \cw0.9.11b-pre r562 \cu(Tue 20 Oct 12:14:43 CEST 2020)"; +SWWM_MODVER="\chSWWM \czGZ\c- \cw0.9.11b-pre r564 \cu(Tue 20 Oct 14:01:25 CEST 2020)"; diff --git a/zmapinfo.txt b/zmapinfo.txt index 613bc09d1..385c087d1 100644 --- a/zmapinfo.txt +++ b/zmapinfo.txt @@ -29,6 +29,8 @@ GameInfo MenuFontColor_Selection = "Sapphire" MenuSliderColor = "Green" MessageBoxClass = "SWWMMessageBox" + BorderFlat = "graphics/bord_flat.png" + Border = 2, 0, "graphics/bord_tr.png", "graphics/bord_t.png", "graphics/bord_tl.png", "graphics/bord_r.png", "graphics/bord_l.png", "graphics/bord_br.png", "graphics/bord_b.png", "graphics/bord_bl.png" // precaching of frame-heavy objects PrecacheClasses = "Demolitionist", "DeepImpact", diff --git a/zscript/swwm_hud.zsc b/zscript/swwm_hud.zsc index dde256ac8..7611f49ee 100644 --- a/zscript/swwm_hud.zsc +++ b/zscript/swwm_hud.zsc @@ -595,7 +595,16 @@ Class SWWMStatusBar : BaseStatusBar override void Init() { Super.Init(); - SetSize(0,640,360); + // scaling is set to 640 pixels wide minimum + // and height set so it fits up to ultrawide (2.370:1 ~ 2.4:1) + // ultrawide is honestly an abomination, + // and these numbers should be proof enough of it + // none of the commercially available "21:9" screens even have + // that actual ratio in the first place, what the fuck man + // they dangle anywhere between 12:4, 43:18 and 64:27 + // fuck ultrawide, seriously + // get a 16:10 screen instead, it's the best aspect ratio + SetSize(0,640,266); StatusTex = TexMan.CheckForTexture("graphics/HUD/StatusBox.png",TexMan.Type_Any); DashTex = TexMan.CheckForTexture("graphics/HUD/DashBar.png",TexMan.Type_Any); FuelTex[0] = TexMan.CheckForTexture("graphics/HUD/FuelBar.png",TexMan.Type_Any); @@ -1399,44 +1408,29 @@ Class SWWMStatusBar : BaseStatusBar { hs.x = hscale.GetInt(); if ( Screen.GetWidth()/hs.x < 640. ) hs.x = max(1,floor(Screen.GetWidth()/640.)); - hs.y = hs.x; } + hs.y = hs.x; ss = (Screen.GetWidth()/hs.x,Screen.GetHeight()/hs.y); margin = clamp(safezone.GetInt(),0,(ss.x<640)?10:40); if ( bscale.GetInt() <= 0 ) hsb = GetHUDScale(); - else - { - hsb.x = bscale.GetInt(); - hsb.y = hsb.x; - } + else hsb.x = bscale.GetInt(); + hsb.y = hsb.x; ssb = (Screen.GetWidth()/hsb.x,Screen.GetHeight()/hsb.y); if ( nscale.GetInt() <= 0 ) hsn = GetHUDScale(); - else - { - hsn.x = nscale.GetInt(); - hsn.y = hsn.x; - } + else hsn.x = nscale.GetInt(); + hsn.y = hsn.x; ssn = (Screen.GetWidth()/hsn.x,Screen.GetHeight()/hsn.y); if ( sscale.GetInt() <= 0 ) hss = GetHUDScale(); - else - { - hss.x = sscale.GetInt(); - hss.y = hss.x; - } + else hss.x = sscale.GetInt(); + hss.y = hss.x; sss = (Screen.GetWidth()/hss.x,Screen.GetHeight()/hss.y); if ( iscale.GetInt() <= 0 ) hsi = GetHUDScale(); - else - { - hsi.x = iscale.GetInt(); - hsi.y = hsi.x; - } + else hsi.x = iscale.GetInt(); + hsi.y = hsi.x; ssi = (Screen.GetWidth()/hsi.x,Screen.GetHeight()/hsi.y); if ( dscale.GetInt() <= 0 ) hsd = GetHUDScale(); - else - { - hsd.x = dscale.GetInt(); - hsd.y = hsd.x; - } + else hsd.x = dscale.GetInt(); + hsd.y = hsd.x; ssd = (Screen.GetWidth()/hsd.x,Screen.GetHeight()/hsd.y); FracTic = TicFrac; DrawTarget(); diff --git a/zscript/swwm_hudextra.zsc b/zscript/swwm_hudextra.zsc index 9fe1f47fe..67788af15 100644 --- a/zscript/swwm_hudextra.zsc +++ b/zscript/swwm_hudextra.zsc @@ -32,6 +32,7 @@ Class PayRespects : HUDMessageBase override void ScreenSizeChanged() { hs = StatusBar.GetHUDScale()*scale; + hs.y = hs.x; ss = (Screen.GetWidth()/hs.x,Screen.GetHeight()/hs.y); } @@ -90,8 +91,8 @@ Class SWWMOneLiner : HUDMessageBase { hs.x = hscale.GetInt(); if ( Screen.GetWidth()/hs.x < 640. ) hs.x = max(1,floor(Screen.GetWidth()/640.)); - hs.y = hs.x; } + hs.y = hs.x; Vector2 ss = (Screen.GetWidth()/hs.x,Screen.GetHeight()/hs.y); String loc = StringTable.Localize(whichline); if ( loc.Length() <= 0 ) return; // don't draw empty strings