From e1cd2ecda7af0b7242cf36b09dd23d7dae2ac70b Mon Sep 17 00:00:00 2001
From: Radicalicious <77638573+Radicalicious@users.noreply.github.com>
Date: Wed, 15 Jan 2025 16:30:41 -0600
Subject: [PATCH] Update p_mobj.c

---
 src/p_mobj.c | 38 ++++++++++++++++++--------------------
 1 file changed, 18 insertions(+), 20 deletions(-)

diff --git a/src/p_mobj.c b/src/p_mobj.c
index 1b6515856a..aa846a93c7 100644
--- a/src/p_mobj.c
+++ b/src/p_mobj.c
@@ -13159,30 +13159,28 @@ static boolean P_SetupSpawnedMapThing(mapthing_t *mthing, mobj_t *mobj, boolean
 	break;
 	case MT_SSZTREE:
 	{ // Spawn the branches
-		angle_t mobjangle = FixedAngle((mthing->angle % 113) << FRACBITS);
-		mobj_t *branch = P_SpawnMobjFromMobj(mobj, FRACUNIT, 0, 0, MT_SSZTREE_BRANCH);
-		if (!P_MobjWasRemoved(branch))
-			branch->angle = mobjangle + ANGLE_22h;
-		branch = P_SpawnMobjFromMobj(mobj, 0, FRACUNIT, 0, MT_SSZTREE_BRANCH);
-		if (!P_MobjWasRemoved(branch))
-			branch->angle = mobjangle + ANGLE_157h;
-		branch = P_SpawnMobjFromMobj(mobj, -FRACUNIT, 0, 0, MT_SSZTREE_BRANCH);
-		if (!P_MobjWasRemoved(branch))
-			branch->angle = mobjangle + ANGLE_270;
+		INT32 i;
+		mobj_t *branch;
+		for (i = 0; i < 5; i++)
+		{
+			branch = P_SpawnMobjFromMobj(mobj, 0, 0, 0, MT_SSZTREE_BRANCH);
+			if (P_MobjWasRemoved(branch))
+				continue;
+			branch->angle = mobj->angle + FixedAngle(i*72*FRACUNIT);
+		}
 	}
 	break;
 	case MT_SSZTREE2:
 	{ // Spawn the branches
-		angle_t mobjangle = FixedAngle((mthing->angle % 113) << FRACBITS);
-		mobj_t *branch = P_SpawnMobjFromMobj(mobj, FRACUNIT, 0, 0, MT_SSZTREE2_BRANCH);
-		if (!P_MobjWasRemoved(branch))
-			branch->angle = mobjangle + ANGLE_22h;
-		branch = P_SpawnMobjFromMobj(mobj, 0, FRACUNIT, 0, MT_SSZTREE2_BRANCH);
-		if (!P_MobjWasRemoved(branch))
-			branch->angle = mobjangle + ANGLE_157h;
-		branch = P_SpawnMobjFromMobj(mobj, -FRACUNIT, 0, 0, MT_SSZTREE2_BRANCH);
-		if (!P_MobjWasRemoved(branch))
-			branch->angle = mobjangle + ANGLE_270;
+		INT32 i;
+		mobj_t *branch;
+		for (i = 0; i < 5; i++)
+		{
+			branch = P_SpawnMobjFromMobj(mobj, 0, 0, 0, MT_SSZTREE2_BRANCH);
+			if (P_MobjWasRemoved(branch))
+				continue;
+			branch->angle = mobj->angle + FixedAngle(i*72*FRACUNIT);
+		}
 	}
 	break;
 	case MT_HHZTREE_TOP:
-- 
GitLab