diff --git a/sql/updates/world/custom/custom_2019_12_09_00_world.sql b/sql/updates/world/custom/custom_2019_12_09_00_world.sql new file mode 100644 index 0000000000..7c356e84cc --- /dev/null +++ b/sql/updates/world/custom/custom_2019_12_09_00_world.sql @@ -0,0 +1,12 @@ +UPDATE `spell_proc` SET `AttributesMask`= `AttributesMask` | 8 WHERE `SpellId`= 47283; + +DELETE FROM `spell_bonus_data` WHERE `entry` IN (89753, 30213, 3110, 3716, 54049, 7814, 6360, 17253, 16827, 31707); +INSERT INTO `spell_bonus_data` (`entry`, `direct_bonus`, `dot_bonus`, `ap_bonus`, `ap_dot_bonus`, `comments`) VALUES +(89753, 0.231, 0, 0, 0, 'Warlock - Fel Storm'), +(30213, 0.264, 0, 0, 0, 'Warlock - Legion Strike'), +(3110, 0.3285, 0, 0, 0, 'Warlock - Firebolt'), +(3716, 0.256, 0, 0, 0, 'Warlock - Torment'), +(54049, 0.614, 0, 0, 0, 'Warlock - Shadow Bite'), +(7814, 0.256, 0, 0, 0, 'Warlock - Lash of Pain'), +(6360, 0.425, 0, 0, 0, 'Warlock - Whiplash'), +(31707, 0.333, 0, 0, 0, 'Mage - Waterbolt'); diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index d3a32ab60d..8558d9bed6 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -6653,6 +6653,18 @@ uint32 Unit::SpellDamageBonusDone(Unit* victim, SpellInfo const* spellProto, uin if (!spellProto->HasAttribute(SPELL_ATTR6_LIMIT_PCT_DAMAGE_MODS)) DoneTotal += GetTotalAuraModifierByMiscMask(SPELL_AURA_MOD_FLAT_SPELL_DAMAGE_VERSUS, victim->GetCreatureTypeMask()); + // Custom scripted damage + switch (spellProto->SpellFamilyName) + { + case SPELLFAMILY_HUNTER: + // Hunter Pet basic attacks (RAP * 0.4 * 0.2) + if (spellProto->SpellFamilyFlags[0] & 0x00080000) + DoneTotal += (owner->GetTotalAttackPowerValue(RANGED_ATTACK) * 0.4f) * 0.2f; + break; + default: + break; + } + // Done fixed damage bonus auras int32 DoneAdvertisedBenefit = SpellBaseDamageBonusDone(spellProto->GetSchoolMask());