From 14e4519566e861a44214d4b9f0f47ee11fe3b6cb Mon Sep 17 00:00:00 2001 From: Dustin Hendrickson Date: Mon, 26 May 2025 15:11:44 -0700 Subject: [PATCH] Adding safety check to all branches --- src/mod-player-bot-level-brackets.cpp | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/src/mod-player-bot-level-brackets.cpp b/src/mod-player-bot-level-brackets.cpp index 0f25f59..edfdbeb 100644 --- a/src/mod-player-bot-level-brackets.cpp +++ b/src/mod-player-bot-level-brackets.cpp @@ -573,7 +573,7 @@ static void ProcessPendingLevelResets() it = g_PendingLevelResets.erase(it); continue; } - + if (bot && bot->IsInWorld() && IsBotSafeForLevelReset(bot)) { AdjustBotToRange(bot, targetRange, it->factionRanges); @@ -976,6 +976,11 @@ public: while (allianceActualCounts[i] > allianceDesiredCounts[i] && !safeBots.empty()) { Player* bot = safeBots.back(); + if (!bot || !bot->IsInWorld()) + { + it = safeBots.erase(it); + break; + } safeBots.pop_back(); if (g_BotDistFullDebugMode) { @@ -1041,6 +1046,11 @@ public: while (allianceActualCounts[i] > allianceDesiredCounts[i] && !flaggedBots.empty()) { Player* bot = flaggedBots.back(); + if (!bot || !bot->IsInWorld()) + { + it = flaggedBots.erase(it); + break; + } flaggedBots.pop_back(); if (g_BotDistFullDebugMode) { @@ -1144,6 +1154,11 @@ public: while (hordeActualCounts[i] > hordeDesiredCounts[i] && !safeBots.empty()) { Player* bot = safeBots.back(); + if (!bot || !bot->IsInWorld()) + { + it = safeBots.erase(it); + break; + } safeBots.pop_back(); if (g_BotDistFullDebugMode) { @@ -1209,6 +1224,11 @@ public: while (hordeActualCounts[i] > hordeDesiredCounts[i] && !flaggedBots.empty()) { Player* bot = flaggedBots.back(); + if (!bot || !bot->IsInWorld()) + { + it = flaggedBots.erase(it); + break; + } flaggedBots.pop_back(); if (g_BotDistFullDebugMode) {