Core/Threat: Assistance threat (healing, buffs, etc.) is now properly split (instead of copied) between all creatures threatened by the action. Thanks to Foereaper for help with testing, and my apologies to healers everywhere.

(No apologies for charm AI though. You deserve that one.)

(cherry picked from commit 013d4560c7)
This commit is contained in:
Treeston
2018-01-21 02:14:17 +01:00
committed by Shauren
parent 9f91cf23ab
commit 73bf0e3a0b

View File

@@ -615,8 +615,11 @@ void ThreatManager::ForwardThreatForAssistingMe(Unit* assistant, float baseAmoun
{
if (spell && spell->HasAttribute(SPELL_ATTR1_NO_THREAT)) // shortcut, none of the calls would do anything
return;
if (_threatenedByMe.empty())
return;
float const perTarget = baseAmount / _threatenedByMe.size(); // Threat is divided evenly among all targets (LibThreat sourced)
for (auto const& pair : _threatenedByMe)
pair.second->GetOwner()->GetThreatManager().AddThreat(assistant, baseAmount, spell, ignoreModifiers);
pair.second->GetOwner()->GetThreatManager().AddThreat(assistant, perTarget, spell, ignoreModifiers);
}
void ThreatManager::RemoveMeFromThreatLists()