mirror of
https://github.com/mangosfour/server.git
synced 2025-12-21 01:37:05 +00:00
[11153] Apply at least same checks at used at hit for miss aggro.
* Miss cases must have not less stricted checkd for combat start for comparison with normal hit. * Also cleanup code
This commit is contained in:
parent
241726bf81
commit
709dd6fed8
2 changed files with 13 additions and 10 deletions
|
|
@ -1010,18 +1010,21 @@ void Spell::DoAllEffectOnTarget(TargetInfo *target)
|
|||
if (target->reflectResult == SPELL_MISS_NONE) // If reflected spell hit caster -> do all effect on him
|
||||
DoSpellHitOnUnit(m_caster, mask);
|
||||
}
|
||||
|
||||
if(missInfo == SPELL_MISS_MISS || missInfo == SPELL_MISS_RESIST)
|
||||
else if(missInfo == SPELL_MISS_MISS || missInfo == SPELL_MISS_RESIST)
|
||||
{
|
||||
Unit* realCaster = GetAffectiveCaster();
|
||||
if(realCaster && realCaster != unit)
|
||||
if(real_caster && real_caster != unit)
|
||||
{
|
||||
// can cause back attack (if detected)
|
||||
if (!(m_spellInfo->AttributesEx3 & SPELL_ATTR_EX3_NO_INITIAL_AGGRO) && !IsPositiveSpell(m_spellInfo->Id) &&
|
||||
m_caster->isVisibleForOrDetect(unit, unit, false))
|
||||
{
|
||||
if (!unit->isInCombat() && unit->GetTypeId() != TYPEID_PLAYER && ((Creature*)unit)->AI())
|
||||
((Creature*)unit)->AI()->AttackedBy(realCaster);
|
||||
((Creature*)unit)->AI()->AttackedBy(real_caster);
|
||||
|
||||
unit->AddThreat(realCaster);
|
||||
unit->SetInCombatWith(realCaster);
|
||||
realCaster->SetInCombatWith(unit);
|
||||
unit->AddThreat(real_caster);
|
||||
unit->SetInCombatWith(real_caster);
|
||||
real_caster->SetInCombatWith(unit);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
#ifndef __REVISION_NR_H__
|
||||
#define __REVISION_NR_H__
|
||||
#define REVISION_NR "11152"
|
||||
#define REVISION_NR "11153"
|
||||
#endif // __REVISION_NR_H__
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue