From 5f6bc9ff5feb090a2ca8a7c0aea79ee14099b454 Mon Sep 17 00:00:00 2001 From: Meji Date: Sun, 19 May 2024 13:38:21 +0200 Subject: Core/Creatures: Fix level scaling for summons without SummonPropertiesFlags::UseCreatureLevel (#29958) --- src/server/game/Entities/Creature/TemporarySummon.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'src') 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(unitSummoner->GetLevel(), minLevel, maxLevel); + SetLevel(level); + } } uint32 faction = m_Properties->Faction; -- cgit v1.2.3