diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Entities/Creature/TemporarySummon.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/server/game/Entities/Creature/TemporarySummon.cpp b/src/server/game/Entities/Creature/TemporarySummon.cpp index 95a7f9c19ff..2d969baf261 100644 --- a/src/server/game/Entities/Creature/TemporarySummon.cpp +++ b/src/server/game/Entities/Creature/TemporarySummon.cpp @@ -239,7 +239,12 @@ void TempSummon::InitStats(WorldObject* summoner, Milliseconds duration) } if (!m_Properties->GetFlags().HasFlag(SummonPropertiesFlags::UseCreatureLevel)) - SetLevel(unitSummoner->GetLevel()); + { + int32 minLevel = m_unitData->ScalingLevelMin + m_unitData->ScalingLevelDelta; + int32 maxLevel = m_unitData->ScalingLevelMax + m_unitData->ScalingLevelDelta; + uint8 level = std::clamp<int32>(unitSummoner->GetLevel(), minLevel, maxLevel); + SetLevel(level); + } } uint32 faction = m_Properties->Faction; |