diff --git a/src/server/game/Entities/Pet/Pet.cpp b/src/server/game/Entities/Pet/Pet.cpp index 857147253..7f3fd9e6f 100644 --- a/src/server/game/Entities/Pet/Pet.cpp +++ b/src/server/game/Entities/Pet/Pet.cpp @@ -2492,13 +2492,22 @@ float Pet::GetNativeObjectScale() const scale = creatureFamily->minScale + float(GetLevel() - creatureFamily->minScaleLevel) / creatureFamily->maxScaleLevel * (creatureFamily->maxScale - creatureFamily->minScale); if (CreatureDisplayInfoEntry const* displayInfo = sCreatureDisplayInfoStore.LookupEntry(GetNativeDisplayId())) + { if (displayInfo->scale > 1.f && GetCreatureTemplate()->IsExotic()) + { + // Exotic pets have a scale of 1 + scale = 1.0f; + } + else + { scale *= displayInfo->scale; + } + } return scale; } - - return Guardian::GetNativeObjectScale(); + // Fallback value if the conditions are not met + return 1.0f; } std::string Pet::GenerateActionBarData() const