Core/Spawns: Added startup error for incorrect map assignments in instance_spawn_groups

Port From (https://github.com/TrinityCore/TrinityCore/commit/6ff3d888688fd382d317de0c2dbf26af6a6e7da5)
This commit is contained in:
hondacrx
2022-10-01 16:54:27 -04:00
parent 95842900a7
commit 906e885631
2 changed files with 10 additions and 5 deletions
+7 -2
View File
@@ -5699,9 +5699,7 @@ namespace Game
uint count = 0;
do
{
ushort instanceMapId = result.Read<ushort>(0);
uint spawnGroupId = result.Read<uint>(3);
var spawnGroupTemplate = _spawnGroupDataStorage.LookupByKey(spawnGroupId);
if (spawnGroupTemplate == null || spawnGroupTemplate.flags.HasAnyFlag(SpawnGroupFlags.System))
{
@@ -5709,6 +5707,13 @@ namespace Game
continue;
}
ushort instanceMapId = result.Read<ushort>(0);
if (spawnGroupTemplate.mapId != instanceMapId)
{
Log.outError(LogFilter.Sql, $"Instance spawn group {spawnGroupId} specified for instance {instanceMapId} has spawns on a different map {spawnGroupTemplate.mapId}. Skipped.");
continue;
}
InstanceSpawnGroupInfo info = new();
info.SpawnGroupId = spawnGroupId;
info.BossStateId = result.Read<byte>(1);
+3 -3
View File
@@ -631,9 +631,6 @@ namespace Game
Log.outInfo(LogFilter.ServerLoading, "Loading Spawn Group Templates...");
Global.ObjectMgr.LoadSpawnGroupTemplates();
Log.outInfo(LogFilter.ServerLoading, "Loading instance spawn groups...");
Global.ObjectMgr.LoadInstanceSpawnGroups();
Log.outInfo(LogFilter.ServerLoading, "Loading Creature Data...");
Global.ObjectMgr.LoadCreatures();
@@ -658,6 +655,9 @@ namespace Game
Log.outInfo(LogFilter.ServerLoading, "Loading Spawn Group Data...");
Global.ObjectMgr.LoadSpawnGroups();
Log.outInfo(LogFilter.ServerLoading, "Loading instance spawn groups...");
Global.ObjectMgr.LoadInstanceSpawnGroups();
Log.outInfo(LogFilter.ServerLoading, "Loading GameObject Addon Data...");
Global.ObjectMgr.LoadGameObjectAddons(); // must be after LoadGameObjects()