mirror of
https://github.com/mangosfour/server.git
synced 2025-12-18 19:37:01 +00:00
[0091] Define SPELL_ATTR_EX8_IGNORE_TARGET_FOR_COMBO_POINTS
Signed-off-by: Yaki Khadafi <ElSolDolLo@gmail.com>
This commit is contained in:
parent
33ab9c7277
commit
19d898c836
4 changed files with 7 additions and 5 deletions
|
|
@ -300,7 +300,7 @@ enum SpellAttributesEx
|
||||||
SPELL_ATTR_EX_UNK19 = 0x00080000,// 19
|
SPELL_ATTR_EX_UNK19 = 0x00080000,// 19
|
||||||
SPELL_ATTR_EX_REQ_TARGET_COMBO_POINTS = 0x00100000,// 20 Req combo points on target
|
SPELL_ATTR_EX_REQ_TARGET_COMBO_POINTS = 0x00100000,// 20 Req combo points on target
|
||||||
SPELL_ATTR_EX_UNK21 = 0x00200000,// 21
|
SPELL_ATTR_EX_UNK21 = 0x00200000,// 21
|
||||||
SPELL_ATTR_EX_REQ_COMBO_POINTS = 0x00400000,// 22 Use combo points (in 4.x not required combo point target selected)
|
SPELL_ATTR_EX_REQ_COMBO_POINTS = 0x00400000,// 22 Use combo points
|
||||||
SPELL_ATTR_EX_UNK23 = 0x00800000,// 23
|
SPELL_ATTR_EX_UNK23 = 0x00800000,// 23
|
||||||
SPELL_ATTR_EX_UNK24 = 0x01000000,// 24 Req fishing pole??
|
SPELL_ATTR_EX_UNK24 = 0x01000000,// 24 Req fishing pole??
|
||||||
SPELL_ATTR_EX_UNK25 = 0x02000000,// 25
|
SPELL_ATTR_EX_UNK25 = 0x02000000,// 25
|
||||||
|
|
@ -549,7 +549,7 @@ enum SpellAttributesEx8
|
||||||
SPELL_ATTR_EX8_UNK16 = 0x00010000,// 16
|
SPELL_ATTR_EX8_UNK16 = 0x00010000,// 16
|
||||||
SPELL_ATTR_EX8_UNK17 = 0x00020000,// 17
|
SPELL_ATTR_EX8_UNK17 = 0x00020000,// 17
|
||||||
SPELL_ATTR_EX8_UNK18 = 0x00040000,// 18 Dark Simulacrum, Soul Swap
|
SPELL_ATTR_EX8_UNK18 = 0x00040000,// 18 Dark Simulacrum, Soul Swap
|
||||||
SPELL_ATTR_EX8_UNK19 = 0x00080000,// 19 Slice and Dice, Savage Roar, Recuperate
|
SPELL_ATTR_EX8_IGNORE_TARGET_FOR_COMBO_POINTS = 0x00080000,// 19 Slice and Dice, Savage Roar, Recuperate
|
||||||
SPELL_ATTR_EX8_ARMOR_SPECIALIZATION = 0x00100000,// 20
|
SPELL_ATTR_EX8_ARMOR_SPECIALIZATION = 0x00100000,// 20
|
||||||
SPELL_ATTR_EX8_UNK21 = 0x00200000,// 21 some spells that summon smth
|
SPELL_ATTR_EX8_UNK21 = 0x00200000,// 21 some spells that summon smth
|
||||||
SPELL_ATTR_EX8_UNK22 = 0x00400000,// 22 some health-affecting spells
|
SPELL_ATTR_EX8_UNK22 = 0x00400000,// 22 some health-affecting spells
|
||||||
|
|
|
||||||
|
|
@ -5132,7 +5132,8 @@ SpellCastResult Spell::CheckCast(bool strict)
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!m_IsTriggeredSpell && NeedsComboPoints(m_spellInfo) && !m_caster->IsIgnoreUnitState(m_spellInfo, IGNORE_UNIT_TARGET_STATE) &&
|
if (!m_IsTriggeredSpell && NeedsComboPoints(m_spellInfo) && !m_caster->IsIgnoreUnitState(m_spellInfo, IGNORE_UNIT_TARGET_STATE) &&
|
||||||
(!m_targets.getUnitTarget() || m_targets.getUnitTarget()->GetObjectGuid() != ((Player*)m_caster)->GetComboTargetGuid()))
|
(!m_targets.getUnitTarget() || m_targets.getUnitTarget()->GetObjectGuid() != ((Player*)m_caster)->GetComboTargetGuid()) &&
|
||||||
|
!m_spellInfo->HasAttribute(SPELL_ATTR_EX8_IGNORE_TARGET_FOR_COMBO_POINTS))
|
||||||
// warrior not have real combo-points at client side but use this way for mark allow Overpower use
|
// warrior not have real combo-points at client side but use this way for mark allow Overpower use
|
||||||
return m_caster->getClass() == CLASS_WARRIOR ? SPELL_FAILED_CASTER_AURASTATE : SPELL_FAILED_NO_COMBO_POINTS;
|
return m_caster->getClass() == CLASS_WARRIOR ? SPELL_FAILED_CASTER_AURASTATE : SPELL_FAILED_NO_COMBO_POINTS;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -9291,7 +9291,8 @@ int32 Unit::CalculateSpellDamage(Unit const* target, SpellEntry const* spellProt
|
||||||
int32 value = basePoints;
|
int32 value = basePoints;
|
||||||
|
|
||||||
// random damage
|
// random damage
|
||||||
if (comboDamage != 0 && unitPlayer && target && (target->GetObjectGuid() == unitPlayer->GetComboTargetGuid()))
|
if (comboDamage != 0 && unitPlayer &&
|
||||||
|
(target && target->GetObjectGuid() == unitPlayer->GetComboTargetGuid() || spellProto->HasAttribute(SPELL_ATTR_EX8_IGNORE_TARGET_FOR_COMBO_POINTS)))
|
||||||
value += (int32)(comboDamage * comboPoints);
|
value += (int32)(comboDamage * comboPoints);
|
||||||
|
|
||||||
if (Player* modOwner = GetSpellModOwner())
|
if (Player* modOwner = GetSpellModOwner())
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
#ifndef __REVISION_NR_H__
|
#ifndef __REVISION_NR_H__
|
||||||
#define __REVISION_NR_H__
|
#define __REVISION_NR_H__
|
||||||
#define REVISION_NR "0090"
|
#define REVISION_NR "0091"
|
||||||
#endif // __REVISION_NR_H__
|
#endif // __REVISION_NR_H__
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue