diff --git a/sql/mangos_spell_check.sql b/sql/mangos_spell_check.sql index 8ad7399d5..17c1a618d 100644 --- a/sql/mangos_spell_check.sql +++ b/sql/mangos_spell_check.sql @@ -87,6 +87,7 @@ INSERT INTO spell_check (spellid,SpellFamilyName,SpellFamilyMaskA,SpellFamilyMas (13166,-1, -1, -1, -1, -1, -1, -1, -1,-1,'Gnomish Battle Chicken', 'Spell::EffectDummy'), (13567, 0, -1, -1, -1, -1, -1, 3, -1,-1,'Dummy Trigger', 'Spell::EffectDummy'), (14185, 8, -1, -1, -1, -1, -1, 3, -1,-1,'Preparation', 'Spell::EffectDummy'), +(14278, 8, -1, -1, -1, -1, -1, -1, -1,-1,'Ghostly Strike', 'Spell::EffectWeaponDmg'), (15237, 6, -1, -1, -1, -1, -1, -1, -1,-1,'Holy Nova', 'Spell::cast'), (15430, 6, -1, -1, -1, -1, -1, -1, -1,-1,'Holy Nova', 'Spell::cast'), (15431, 6, -1, -1, -1, -1, -1, -1, -1,-1,'Holy Nova', 'Spell::cast'), @@ -653,6 +654,7 @@ INSERT INTO spell_check (spellid,SpellFamilyName,SpellFamilyMaskA,SpellFamilyMas ( 0, 5,0x0004000000000000,0x00000000,3172, -1, -1, -1, 4,-1,'Haunt', 'Spell::DoAllEffectOnTarget'), ( 0,11,0x0000000000002000,0x00000000, -1, -1, -1, 3, -1,-1,'Healing Stream Totem', 'Spell::EffectDummy'), ( 0, 4,0x0000800000000060,0x00000000, -1, -1, -1, -1, -1,-1,'Hellfire Effect / Rain of Fire / Seed of Corruption','Spell::prepareDataForTriggerSystem'), +( 0, 8,0x0000000002800000,0x00000000, -1, -1, -1, -1, -1,-1,'Hemorrhage', 'Spell::EffectWeaponDmg'), ( 0, 4,0x0000000100000000,0x00000000, -1, -1, -1, 2, -1,-1,'Heroic Throw', 'Spell::EffectSchoolDMG'), ( 0,10, -1, -1, 156, -1, -1, 3, -1,-1,'Holy Shock', 'Spell::EffectDummy'), ( 0,-1, -1, -1, 156, -1, -1, 3, -1,-1,'Holy Shock', 'Spell::CheckCast'), diff --git a/src/game/SpellEffects.cpp b/src/game/SpellEffects.cpp index 109e9b3b6..d0cc3873b 100644 --- a/src/game/SpellEffects.cpp +++ b/src/game/SpellEffects.cpp @@ -5064,6 +5064,20 @@ void Spell::EffectWeaponDmg(SpellEffectIndex eff_idx) if (weapon && weapon->GetProto()->SubClass == ITEM_SUBCLASS_WEAPON_DAGGER) totalDamagePercentMod *= 1.5f; // 150% to daggers } + // Ghostly Strike + else if (m_caster->GetTypeId() == TYPEID_PLAYER && m_spellInfo->Id == 14278) + { + Item* weapon = ((Player*)m_caster)->GetWeaponForAttack(m_attackType,true,true); + if (weapon && weapon->GetProto()->SubClass == ITEM_SUBCLASS_WEAPON_DAGGER) + totalDamagePercentMod *= 1.44f; // 144% to daggers + } + // Hemorrhage + else if (m_caster->GetTypeId() == TYPEID_PLAYER && (m_spellInfo->SpellFamilyFlags & UI64LIT(0x2000000))) + { + Item* weapon = ((Player*)m_caster)->GetWeaponForAttack(m_attackType,true,true); + if (weapon && weapon->GetProto()->SubClass == ITEM_SUBCLASS_WEAPON_DAGGER) + totalDamagePercentMod *= 1.45f; // 145% to daggers + } break; } case SPELLFAMILY_PALADIN: diff --git a/src/shared/revision_nr.h b/src/shared/revision_nr.h index 01d913377..044bb38ad 100644 --- a/src/shared/revision_nr.h +++ b/src/shared/revision_nr.h @@ -1,4 +1,4 @@ #ifndef __REVISION_NR_H__ #define __REVISION_NR_H__ - #define REVISION_NR "10021" + #define REVISION_NR "10022" #endif // __REVISION_NR_H__