aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Spells/Spell.cpp
diff options
context:
space:
mode:
authorMeji <alvaro.megias@outlook.com>2023-05-29 00:01:23 +0200
committerGitHub <noreply@github.com>2023-05-29 00:01:23 +0200
commit06d0b16f158e8793860d9edd11b990f20b1d0dac (patch)
tree0ecc06eb8e5b9ba20c615030be816ffc59705f52 /src/server/game/Spells/Spell.cpp
parent526b16fea41fb69a302fdebe8a727e175949f04b (diff)
Core/Creatures: Move creature difficulty specific data from creature_template table to creature_template_difficulty (#28931)
Diffstat (limited to 'src/server/game/Spells/Spell.cpp')
-rw-r--r--src/server/game/Spells/Spell.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/server/game/Spells/Spell.cpp b/src/server/game/Spells/Spell.cpp
index 2b58cdca83f..e46565887ac 100644
--- a/src/server/game/Spells/Spell.cpp
+++ b/src/server/game/Spells/Spell.cpp
@@ -1875,7 +1875,7 @@ void Spell::SelectImplicitTrajTargets(SpellEffectInfo const& spellEffectInfo, Sp
if (Creature* creatureTarget = unit->ToCreature())
{
- if (!(creatureTarget->GetCreatureTemplate()->type_flags & CREATURE_TYPE_FLAG_COLLIDE_WITH_MISSILES))
+ if (!(creatureTarget->GetCreatureDifficulty()->TypeFlags & CREATURE_TYPE_FLAG_COLLIDE_WITH_MISSILES))
continue;
}
}
@@ -6252,10 +6252,11 @@ SpellCastResult Spell::CheckCast(bool strict, int32* param1 /*= nullptr*/, int32
if (info.first->Type == HUNTER_PET)
{
CreatureTemplate const* creatureInfo = sObjectMgr->GetCreatureTemplate(info.first->CreatureId);
- if (!creatureInfo || !creatureInfo->IsTameable(playerCaster->CanTameExoticPets()))
+ CreatureDifficulty const* creatureDifficulty = creatureInfo->GetDifficulty(DIFFICULTY_NONE);
+ if (!creatureInfo || !creatureInfo->IsTameable(playerCaster->CanTameExoticPets(), creatureDifficulty))
{
// if problem in exotic pet
- if (creatureInfo && creatureInfo->IsTameable(true))
+ if (creatureInfo && creatureInfo->IsTameable(true, creatureDifficulty))
playerCaster->SendTameFailure(PetTameResult::CantControlExotic);
else
playerCaster->SendTameFailure(PetTameResult::NoPetAvailable);