diff options
author | Nefertumm <nefertum.dev@protonmail.com> | 2022-06-13 21:10:31 -0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-06-13 21:10:31 -0300 |
commit | 396fd35ed59ad05d188bfa9f27a509ceba32a3f5 (patch) | |
tree | c710c2af06ba6f78ea78c375576c6d5283a7576b /src/server/game/Globals/ObjectMgr.cpp | |
parent | 16d27f3449e408beaf60d10d9e43c823fd9305a1 (diff) |
fix(Core/Spells): Implement SPELL_EFFECT_ACTIVATE_OBJECT (#11648)
Co-authored-by: jackpoz <giacomopoz@gmail.com>
Diffstat (limited to 'src/server/game/Globals/ObjectMgr.cpp')
-rw-r--r-- | src/server/game/Globals/ObjectMgr.cpp | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/src/server/game/Globals/ObjectMgr.cpp b/src/server/game/Globals/ObjectMgr.cpp index 32eda9fe72..81161064b3 100644 --- a/src/server/game/Globals/ObjectMgr.cpp +++ b/src/server/game/Globals/ObjectMgr.cpp @@ -7183,8 +7183,8 @@ void ObjectMgr::LoadGameObjectTemplateAddons() { uint32 oldMSTime = getMSTime(); - // 0 1 2 3 4 - QueryResult result = WorldDatabase.Query("SELECT entry, faction, flags, mingold, maxgold FROM gameobject_template_addon"); + // 0 1 2 3 4 5 6 7 8 + QueryResult result = WorldDatabase.Query("SELECT entry, faction, flags, mingold, maxgold, artkit0, artkit1, artkit2, artkit3 FROM gameobject_template_addon"); if (!result) { @@ -7215,6 +7215,21 @@ void ObjectMgr::LoadGameObjectTemplateAddons() gameObjectAddon.mingold = fields[3].Get<uint32>(); gameObjectAddon.maxgold = fields[4].Get<uint32>(); + for (uint32 i = 0; i < gameObjectAddon.artKits.size(); i++) + { + uint32 artKitID = fields[5 + i].Get<uint32>(); + if (!artKitID) + continue; + + if (!sGameObjectArtKitStore.LookupEntry(artKitID)) + { + LOG_ERROR("sql.sql", "GameObject (Entry: {}) has invalid `artkit{}` {} defined, set to zero instead.", entry, i, artKitID); + continue; + } + + gameObjectAddon.artKits[i] = artKitID; + } + // checks if (gameObjectAddon.faction && !sFactionTemplateStore.LookupEntry(gameObjectAddon.faction)) LOG_ERROR("sql.sql", |