Core/Misc: Don't log errors about npc_text probability if broadcast text was removed because it did not exist during loading
Port From (https://github.com/TrinityCore/TrinityCore/commit/ef4e307a494d8492d4a6bb4dacd4f00c27c8a1bc)
This commit is contained in:
@@ -29,6 +29,7 @@ using Game.Misc;
|
||||
using Game.Scripting;
|
||||
using Game.Spells;
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Numerics;
|
||||
@@ -2956,21 +2957,23 @@ namespace Game
|
||||
npcText.Data[i].BroadcastTextID = result.Read<uint>(9 + i);
|
||||
}
|
||||
|
||||
BitSet erasedBroadcastTexts = new(SharedConst.MaxNpcTextOptions);
|
||||
for (int i = 0; i < SharedConst.MaxNpcTextOptions; i++)
|
||||
{
|
||||
if (npcText.Data[i].BroadcastTextID != 0)
|
||||
{
|
||||
if (!CliDB.BroadcastTextStorage.ContainsKey(npcText.Data[i].BroadcastTextID))
|
||||
{
|
||||
Log.outError(LogFilter.Sql, "NPCText (Id: {0}) has a non-existing or incompatible BroadcastText (ID: {1}, Index: {2})", textID, npcText.Data[i].BroadcastTextID, i);
|
||||
Log.outError(LogFilter.Sql, "NPCText (Id: {0}) has a non-existing BroadcastText (ID: {1}, Index: {2})", textID, npcText.Data[i].BroadcastTextID, i);
|
||||
npcText.Data[i].BroadcastTextID = 0;
|
||||
erasedBroadcastTexts[i] = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
for (byte i = 0; i < SharedConst.MaxNpcTextOptions; 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])
|
||||
{
|
||||
Log.outError(LogFilter.Sql, "NPCText (ID: {0}) has a probability (Index: {1}) set, but no BroadcastTextID to go with it", textID, i);
|
||||
npcText.Data[i].Probability = 0;
|
||||
|
||||
Reference in New Issue
Block a user