mirror of
https://github.com/liyunfan1223/azerothcore-wotlk.git
synced 2026-08-08 15:58:04 +00:00
Add Diminishing_None to Feral Charge. And Add Blizzlike Animations to Flags / Chest Captures. (#664)
* Add Diminishing_None to Feral Charge. Closes https://github.com/azerothcore/azerothcore-wotlk/issues/648 Credit: AnonXS @L4G_Core * Update Spell.h * Add blizzlike ecapturing flag / chest animation Code from Nostalrius. * Add missing blizzlike animations. Demonic Circle: Summon, Soul well, Ritual of Summoning. There's probably more. * Update Object.cpp
This commit is contained in:
@@ -209,6 +209,8 @@ void Object::BuildCreateUpdateBlockForPlayer(UpdateData* data, Player* target) c
|
|||||||
updatetype = UPDATETYPE_CREATE_OBJECT2;
|
updatetype = UPDATETYPE_CREATE_OBJECT2;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
if (((GameObject*)this)->GetOwner())
|
||||||
|
updatetype = UPDATETYPE_CREATE_OBJECT2;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3341,6 +3341,8 @@ void Spell::prepare(SpellCastTargets const* targets, AuraEffect const* triggered
|
|||||||
}
|
}
|
||||||
LoadScripts();
|
LoadScripts();
|
||||||
|
|
||||||
|
OnSpellLaunch();
|
||||||
|
|
||||||
m_powerCost = m_CastItem ? 0 : m_spellInfo->CalcPowerCost(m_caster, m_spellSchoolMask, this);
|
m_powerCost = m_CastItem ? 0 : m_spellInfo->CalcPowerCost(m_caster, m_spellSchoolMask, this);
|
||||||
|
|
||||||
// Set combo point requirement
|
// Set combo point requirement
|
||||||
@@ -8280,6 +8282,28 @@ void Spell::CancelGlobalCooldown()
|
|||||||
m_caster->ToPlayer()->GetGlobalCooldownMgr().CancelGlobalCooldown(m_spellInfo);
|
m_caster->ToPlayer()->GetGlobalCooldownMgr().CancelGlobalCooldown(m_spellInfo);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Spell::OnSpellLaunch()
|
||||||
|
{
|
||||||
|
if (!m_caster || !m_caster->IsInWorld())
|
||||||
|
return;
|
||||||
|
|
||||||
|
SpellInfo const* spellInfo = sSpellMgr->GetSpellInfo(24390);
|
||||||
|
|
||||||
|
// Make sure the player is sending a valid GO target and lock ID. SPELL_EFFECT_OPEN_LOCK
|
||||||
|
// can succeed with a lockId of 0
|
||||||
|
if (m_spellInfo->Id == 21651)
|
||||||
|
{
|
||||||
|
if (GameObject *go = m_targets.GetGOTarget())
|
||||||
|
{
|
||||||
|
LockEntry const *lockInfo = sLockStore.LookupEntry(go->GetGOInfo()->GetLockId());
|
||||||
|
if (lockInfo && lockInfo->Index[1] == LOCKTYPE_SLOW_OPEN)
|
||||||
|
{
|
||||||
|
Spell* visual = new Spell(m_caster, spellInfo, TRIGGERED_NONE);
|
||||||
|
visual->prepare(&m_targets);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
namespace Trinity
|
namespace Trinity
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -410,6 +410,8 @@ class Spell
|
|||||||
// handler helpers
|
// handler helpers
|
||||||
void _handle_immediate_phase();
|
void _handle_immediate_phase();
|
||||||
void _handle_finish_phase();
|
void _handle_finish_phase();
|
||||||
|
|
||||||
|
void OnSpellLaunch();
|
||||||
|
|
||||||
SpellCastResult CheckItems();
|
SpellCastResult CheckItems();
|
||||||
SpellCastResult CheckSpellFocus();
|
SpellCastResult CheckSpellFocus();
|
||||||
|
|||||||
@@ -132,6 +132,9 @@ DiminishingGroup GetDiminishingReturnsGroupForSpell(SpellInfo const* spellproto,
|
|||||||
// Faerie Fire
|
// Faerie Fire
|
||||||
else if (spellproto->SpellFamilyFlags[0] & 0x400)
|
else if (spellproto->SpellFamilyFlags[0] & 0x400)
|
||||||
return DIMINISHING_LIMITONLY;
|
return DIMINISHING_LIMITONLY;
|
||||||
|
// Feral Charge Root Effect
|
||||||
|
else if (spellproto->Id == 45334)
|
||||||
|
return DIMINISHING_NONE;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case SPELLFAMILY_ROGUE:
|
case SPELLFAMILY_ROGUE:
|
||||||
|
|||||||
Reference in New Issue
Block a user