mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-19 08:55:32 +01:00
Implemented binary resistances and some more (#18933)
- Fixed possible exploit with tamed pets having template immunities
- Implemented binary resistances
- Corrected resistances calculations
- Pets properly inherit players spell penetration
- Fixed doubled block calculation for damaging melee spells
- Auras removing snare effects will only remove the snaring component
- Shapeshifting will properly remove movement impairing auras only and not crowd control (dragon's breath)
- Immunities are properly checked versus all schools appearing in spell, unit is immune only if immune to all schools
- Spells with melee and magic school mask should compare armor reduction with resistances and select smaller reduction
- Demonic Circle: Teleport no longer removes root effects
(cherrypicked from 93746e8c4a)
This commit is contained in:
@@ -1055,7 +1055,7 @@ class spell_pri_phantasm : public SpellScriptLoader
|
||||
void HandleEffectProc(AuraEffect const* /*aurEff*/, ProcEventInfo& /*eventInfo*/)
|
||||
{
|
||||
PreventDefaultAction();
|
||||
GetTarget()->RemoveMovementImpairingAuras();
|
||||
GetTarget()->RemoveMovementImpairingAuras(true);
|
||||
}
|
||||
|
||||
void Register() override
|
||||
|
||||
@@ -699,7 +699,7 @@ class spell_rog_vanish : public SpellScriptLoader
|
||||
|
||||
Unit* target = GetHitUnit();
|
||||
|
||||
target->RemoveMovementImpairingAuras();
|
||||
target->RemoveMovementImpairingAuras(true);
|
||||
target->RemoveAurasByType(SPELL_AURA_MOD_STALKED);
|
||||
if (target->GetTypeId() != TYPEID_PLAYER)
|
||||
return;
|
||||
|
||||
@@ -344,7 +344,7 @@ class spell_warl_demonic_circle_teleport : public SpellScriptLoader
|
||||
if (GameObject* circle = player->GetGameObject(SPELL_WARLOCK_DEMONIC_CIRCLE_SUMMON))
|
||||
{
|
||||
player->NearTeleportTo(circle->GetPositionX(), circle->GetPositionY(), circle->GetPositionZ(), circle->GetOrientation());
|
||||
player->RemoveMovementImpairingAuras();
|
||||
player->RemoveMovementImpairingAuras(false);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user