From 1750ed5383b68e91d2377d5ef24855e853ddb05c Mon Sep 17 00:00:00 2001
From: Jaime Passos <lazymyuutsu@gmail.com>
Date: Wed, 2 Oct 2019 22:02:13 -0300
Subject: [PATCH] nights attack

---
 src/m_menu.c | 24 +++++++++++++++---------
 1 file changed, 15 insertions(+), 9 deletions(-)

diff --git a/src/m_menu.c b/src/m_menu.c
index 5d7803cc52..ed6cd5bd96 100644
--- a/src/m_menu.c
+++ b/src/m_menu.c
@@ -5226,14 +5226,20 @@ static void M_DrawRecordAttackForeground(void)
 static void M_DrawNightsAttackMountains(void)
 {
 	static INT32 bgscrollx;
+	INT32 dupz = (vid.dupx < vid.dupy ? vid.dupx : vid.dupy);
 	patch_t *background = W_CachePatchName(curbgname, PU_CACHE);
 	INT32 x = FixedInt(bgscrollx) % SHORT(background->width);
 	INT32 y = BASEVIDHEIGHT - SHORT(background->height)*2;
+
+	if (vid.height != BASEVIDHEIGHT * dupz)
+		V_DrawFill(0, 0, BASEVIDWIDTH, BASEVIDHEIGHT, 158);
+	V_DrawFill(0, y+50, vid.width, BASEVIDHEIGHT, V_SNAPTOLEFT|31);
+
 	V_DrawScaledPatch(x, y, V_SNAPTOLEFT, background);
 	x += SHORT(background->width);
 	if (x < BASEVIDWIDTH)
 		V_DrawScaledPatch(x, y, V_SNAPTOLEFT, background);
-	V_DrawFill(0, y+50, vid.width, BASEVIDHEIGHT, V_SNAPTOLEFT|31);
+
 	bgscrollx -= (FRACUNIT/2);
 }
 
@@ -5264,48 +5270,48 @@ static void M_DrawNightsAttackBackground(void)
 
 	// back top foreground patch
 	x = -(ntsatkdrawtimer%backtopwidth);
-	V_DrawScaledPatch(x, y, V_SNAPTOLEFT, backtopfg);
+	V_DrawScaledPatch(x, y, V_SNAPTOTOP|V_SNAPTOLEFT, backtopfg);
 	for (i = 0; i < 3; i++)
 	{
 		x += (backtopwidth);
 		if (x >= vid.width)
 			break;
-		V_DrawScaledPatch(x, y, V_SNAPTOLEFT, backtopfg);
+		V_DrawScaledPatch(x, y, V_SNAPTOTOP|V_SNAPTOLEFT, backtopfg);
 	}
 
 	// front top foreground patch
 	x = -((ntsatkdrawtimer*2)%fronttopwidth);
-	V_DrawScaledPatch(x, y, V_SNAPTOLEFT, fronttopfg);
+	V_DrawScaledPatch(x, y, V_SNAPTOTOP|V_SNAPTOLEFT, fronttopfg);
 	for (i = 0; i < 3; i++)
 	{
 		x += (fronttopwidth);
 		if (x >= vid.width)
 			break;
-		V_DrawScaledPatch(x, y, V_SNAPTOLEFT, fronttopfg);
+		V_DrawScaledPatch(x, y, V_SNAPTOTOP|V_SNAPTOLEFT, fronttopfg);
 	}
 
 	// back bottom foreground patch
 	x = -(ntsatkdrawtimer%backbottomwidth);
 	y = BASEVIDHEIGHT - backbottomheight;
-	V_DrawScaledPatch(x, y, V_SNAPTOLEFT, backbottomfg);
+	V_DrawScaledPatch(x, y, V_SNAPTOBOTTOM|V_SNAPTOLEFT, backbottomfg);
 	for (i = 0; i < 3; i++)
 	{
 		x += (backbottomwidth);
 		if (x >= vid.width)
 			break;
-		V_DrawScaledPatch(x, y, V_SNAPTOLEFT, backbottomfg);
+		V_DrawScaledPatch(x, y, V_SNAPTOBOTTOM|V_SNAPTOLEFT, backbottomfg);
 	}
 
 	// front bottom foreground patch
 	x = -((ntsatkdrawtimer*2)%frontbottomwidth);
 	y = BASEVIDHEIGHT - frontbottomheight;
-	V_DrawScaledPatch(x, y, V_SNAPTOLEFT, frontbottomfg);
+	V_DrawScaledPatch(x, y, V_SNAPTOBOTTOM|V_SNAPTOLEFT, frontbottomfg);
 	for (i = 0; i < 3; i++)
 	{
 		x += (frontbottomwidth);
 		if (x >= vid.width)
 			break;
-		V_DrawScaledPatch(x, y, V_SNAPTOLEFT, frontbottomfg);
+		V_DrawScaledPatch(x, y, V_SNAPTOBOTTOM|V_SNAPTOLEFT, frontbottomfg);
 	}
 
 	// Increment timer.
-- 
GitLab