mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-23 18:36:31 +01:00
Core/Mechanics: Fix prevent fleeing + fear
Closes #9754 Players should never have been affected by SPELL_AURA_PREVENTS_FLEEING in the first place. Curse of Recklessness will no longer prevent Fear effects, only prevent NPCs from fleeing (e.g. at low health). Judgement of Justice will no longer prevent Fear effects, but will only prevent NPCs from fleeing (e.g. at low health). Source: http://www.wowwiki.com/Patch_3.0.2
This commit is contained in:
@@ -481,9 +481,6 @@ void MotionMaster::MoveFleeing(Unit* enemy, uint32 time)
|
||||
if (!enemy)
|
||||
return;
|
||||
|
||||
if (_owner->HasAuraType(SPELL_AURA_PREVENTS_FLEEING))
|
||||
return;
|
||||
|
||||
if (_owner->GetTypeId() == TYPEID_PLAYER)
|
||||
{
|
||||
TC_LOG_DEBUG("misc", "Player (GUID: %u) flee from %s (GUID: %u)", _owner->GetGUIDLow(),
|
||||
|
||||
@@ -2751,8 +2751,12 @@ void AuraEffect::HandlePreventFleeing(AuraApplication const* aurApp, uint8 mode,
|
||||
|
||||
Unit* target = aurApp->GetTarget();
|
||||
|
||||
if (target->HasAuraType(SPELL_AURA_MOD_FEAR))
|
||||
target->SetControlled(!(apply), UNIT_STATE_FLEEING);
|
||||
// Since patch 3.0.2 this mechanic no longer affects fear effects. It will ONLY prevent humanoids from fleeing due to low health.
|
||||
if (!apply || target->HasAuraType(SPELL_AURA_MOD_FEAR))
|
||||
return;
|
||||
/// TODO: find a way to cancel fleeing for assistance.
|
||||
/// Currently this will only stop creatures fleeing due to low health that could not find nearby allies to flee towards.
|
||||
target->SetControlled(false, UNIT_STATE_FLEEING);
|
||||
}
|
||||
|
||||
/***************************/
|
||||
|
||||
Reference in New Issue
Block a user