From b169529dfde93925add91bd6b4dd0486a327492d Mon Sep 17 00:00:00 2001
From: Alam Ed Arias <alam@srb2.org>
Date: Wed, 30 Mar 2016 11:47:27 -0400
Subject: [PATCH] switich to do the angle math in signed, then run it thur
 abs()

---
 src/b_bot.c  | 2 +-
 src/p_map.c  | 4 ++--
 src/p_user.c | 4 ++--
 3 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/src/b_bot.c b/src/b_bot.c
index 5e128bff1f..e9b00497e1 100644
--- a/src/b_bot.c
+++ b/src/b_bot.c
@@ -49,7 +49,7 @@ static inline void B_BuildTailsTiccmd(mobj_t *sonic, mobj_t *tails, ticcmd_t *cm
 		if (sonic->player->pflags & (PF_MACESPIN|PF_ITEMHANG))
 		{
 			cmd->forwardmove = sonic->player->cmd.forwardmove;
-			cmd->angleturn = (angle_t)((tails->angle - sonic->angle))>>16;
+			cmd->angleturn = abs((signed)(tails->angle - sonic->angle))>>16;
 			if (sonic->angle < tails->angle)
 				cmd->angleturn = -cmd->angleturn;
 		} else if (dist > FixedMul(512*FRACUNIT, tails->scale))
diff --git a/src/p_map.c b/src/p_map.c
index 09f49423b2..bcb3c08a98 100644
--- a/src/p_map.c
+++ b/src/p_map.c
@@ -2507,8 +2507,8 @@ isblocking:
 
 			climbangle += (ANGLE_90 * (whichside ? -1 : 1));
 
-			if (((!slidemo->player->climbing && (angle_t)((slidemo->angle - ANGLE_90 - climbline)) < ANGLE_45)
-			|| (slidemo->player->climbing == 1 && (angle_t)((slidemo->angle - climbline)) < ANGLE_135))
+			if (((!slidemo->player->climbing && abs((signed)(slidemo->angle - ANGLE_90 - climbline)) < ANGLE_45)
+			|| (slidemo->player->climbing == 1 && abs((signed)(slidemo->angle - climbline)) < ANGLE_135))
 			&& P_IsClimbingValid(slidemo->player, climbangle))
 			{
 				slidemo->angle = climbangle;
diff --git a/src/p_user.c b/src/p_user.c
index 34d2d4bae0..6053ad1e5d 100644
--- a/src/p_user.c
+++ b/src/p_user.c
@@ -7899,9 +7899,9 @@ boolean P_MoveChaseCamera(player_t *player, camera_t *thiscam, boolean resetcall
 		if (player == &players[consoleplayer])
 		{
 			if (focusangle >= localangle)
-				localangle += (angle_t)((focusangle - localangle))>>5;
+				localangle += abs((signed)(focusangle - localangle))>>5;
 			else
-				localangle -= (angle_t)((focusangle - localangle))>>5;
+				localangle -= abs((signed)(focusangle - localangle))>>5;
 		}
 	}
 	else if (P_AnalogMove(player)) // Analog
-- 
GitLab