From e01234285b10f02d769289f3266249e4fbec3541 Mon Sep 17 00:00:00 2001
From: Sally Coolatta <tehrealsalt@gmail.com>
Date: Sun, 5 May 2024 18:22:04 -0400
Subject: [PATCH] Don't allow auto-roulette to get challenging items

---
 src/k_roulette.c | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/src/k_roulette.c b/src/k_roulette.c
index 0ff171c6ea..e99a38eea8 100644
--- a/src/k_roulette.c
+++ b/src/k_roulette.c
@@ -565,6 +565,18 @@ static boolean K_DenyShieldOdds(kartitems_t item)
 	return false;
 }
 
+static boolean K_DenyAutoRouletteOdds(kartitems_t item)
+{
+	// Deny items that are too hard for newbies
+	switch (item)
+	{
+		case KITEM_GARDENTOP:
+			return true;
+		default:
+			return false;
+	}
+}
+
 /*--------------------------------------------------
 	static fixed_t K_AdjustSPBOdds(const itemroulette_t *roulette, UINT8 position)
 
@@ -738,6 +750,14 @@ INT32 K_KartGetItemOdds(const player_t *player, itemroulette_t *const roulette,
 		return 0;
 	}
 
+	if (roulette->autoroulette == true)
+	{
+		if (K_DenyAutoRouletteOdds(item))
+		{
+			return 0;
+		}
+	}
+
 	if (gametype == GT_BATTLE)
 	{
 		I_Assert(pos < 2); // DO NOT allow positions past the bounds of the table
-- 
GitLab