Core/Spells: Fix group member classification in SelectRandomInjuredTargets

This commit is contained in:
Shauren
2025-07-08 16:40:25 +02:00
parent c5425196fd
commit 04d44bd3a0

View File

@@ -9587,14 +9587,13 @@ void SelectRandomInjuredTargets(std::list<WorldObject*>& targets, size_t maxTarg
};
std::array<std::ptrdiff_t, 1 << END> countsByPriority = {};
std::vector<std::pair<WorldObject*, int32>> tempTargets;
tempTargets.resize(targets.size());
std::vector<std::pair<WorldObject*, int32>> tempTargets(targets.size());
// categorize each target
std::ranges::transform(targets, tempTargets.begin(), [&](WorldObject* target)
{
int32 negativePoints = 0;
if (prioritizeGroupMembersOf && (!target->IsUnit() || target->ToUnit()->IsInRaidWith(prioritizeGroupMembersOf)))
if (prioritizeGroupMembersOf && (!target->IsUnit() || !target->ToUnit()->IsInRaidWith(prioritizeGroupMembersOf)))
negativePoints |= 1 << NOT_GROUPED;
if (prioritizePlayers && !target->IsPlayer() && (!target->IsCreature() || !target->ToCreature()->IsTreatedAsRaidUnit()))