From ef4e307a494d8492d4a6bb4dacd4f00c27c8a1bc Mon Sep 17 00:00:00 2001 From: Shauren Date: Thu, 11 Nov 2021 14:10:32 +0100 Subject: Core/Misc: Don't log errors about npc_text probability if broadcast text was removed because it did not exist during loading --- src/server/game/Globals/ObjectMgr.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'src/server') diff --git a/src/server/game/Globals/ObjectMgr.cpp b/src/server/game/Globals/ObjectMgr.cpp index 18fa0c844ed..ad121290406 100644 --- a/src/server/game/Globals/ObjectMgr.cpp +++ b/src/server/game/Globals/ObjectMgr.cpp @@ -6045,21 +6045,23 @@ void ObjectMgr::LoadNPCText() npcText.Data[i].BroadcastTextID = fields[9 + i].GetUInt32(); } + std::bitset erasedBroadcastTexts; for (uint8 i = 0; i < MAX_NPC_TEXT_OPTIONS; i++) { if (npcText.Data[i].BroadcastTextID) { if (!sBroadcastTextStore.LookupEntry(npcText.Data[i].BroadcastTextID)) { - TC_LOG_ERROR("sql.sql", "NPCText (ID: %u) has a non-existing or incompatible BroadcastText (ID: %u, Index: %u)", textID, npcText.Data[i].BroadcastTextID, i); + TC_LOG_ERROR("sql.sql", "NPCText (ID: %u) has a non-existing BroadcastText (ID: %u, Index: %u)", textID, npcText.Data[i].BroadcastTextID, i); npcText.Data[i].BroadcastTextID = 0; + erasedBroadcastTexts[i] = true; } } } for (uint8 i = 0; i < MAX_NPC_TEXT_OPTIONS; i++) { - if (npcText.Data[i].Probability > 0 && npcText.Data[i].BroadcastTextID == 0) + if (npcText.Data[i].Probability > 0 && npcText.Data[i].BroadcastTextID == 0 && !erasedBroadcastTexts[i]) { TC_LOG_ERROR("sql.sql", "NPCText (ID: %u) has a probability (Index: %u) set, but no BroadcastTextID to go with it", textID, i); npcText.Data[i].Probability = 0; -- cgit v1.2.3