From 52384053ceef84ebf49a40ac9fc0a9071bae89a2 Mon Sep 17 00:00:00 2001
From: Arthur <spaddlewit@gmail.com>
Date: Sat, 31 Dec 2022 22:46:08 -0500
Subject: [PATCH] When attaching to a wall to do a climb, the second sidedef
 wasn't be handled properly.

---
 src/p_map.c | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/src/p_map.c b/src/p_map.c
index 5c8ccbb193..232bf3a508 100644
--- a/src/p_map.c
+++ b/src/p_map.c
@@ -3506,11 +3506,9 @@ static void PTR_GlideClimbTraverse(line_t *li)
 			if (fofline)
 				whichside = 0;
 
-			if (!whichside)
-			{
-				slidemo->player->lastsidehit = checkline->sidenum[whichside];
-				slidemo->player->lastlinehit = (INT16)(checkline - lines);
-			}
+                        // Even if you attach to the second side of a linedef, we want to know the last hit.
+			slidemo->player->lastsidehit = checkline->sidenum[whichside];
+			slidemo->player->lastlinehit = (INT16)(checkline - lines);
 
 			P_Thrust(slidemo, slidemo->angle, FixedMul(5*FRACUNIT, slidemo->scale));
 		}
-- 
GitLab