Skip to content

Commit

Permalink
Unit/Spell: Remove last batch of SCRIPT_LOCATION_SPELL_DAMAGE_DONE an…
Browse files Browse the repository at this point in the history
…d implement T5 4 set warlock bonus
  • Loading branch information
killerwife committed Sep 17, 2023
1 parent 1543ebe commit 3a2451d
Show file tree
Hide file tree
Showing 7 changed files with 134 additions and 70 deletions.
6 changes: 6 additions & 0 deletions sql/base/dbc/cmangos_fixes/Spell.sql
Original file line number Diff line number Diff line change
Expand Up @@ -3091,6 +3091,12 @@ INSERT INTO spell_template(Id, SchoolMask, Category, Dispel, Mechanic, Attribute
INSERT INTO spell_template(Id, SchoolMask, Category, Dispel, Mechanic, Attributes, AttributesEx, AttributesEx2, AttributesEx3, AttributesEx4, AttributesEx5, Stances, StancesNot, Targets, TargetCreatureType, RequiresSpellFocus, CasterAuraState, TargetAuraState, CasterAuraStateNot, TargetAuraStateNot, CastingTimeIndex, RecoveryTime, CategoryRecoveryTime, InterruptFlags, AuraInterruptFlags, ChannelInterruptFlags, procFlags, procChance, procCharges, maxLevel, baseLevel, spellLevel, DurationIndex, powerType, manaCost, manaCostPerLevel, manaPerSecond, manaPerSecondPerLevel, rangeIndex, speed, StackAmount, Totem1, Totem2, Reagent1, Reagent2, Reagent3, Reagent4, Reagent5, Reagent6, Reagent7, Reagent8, ReagentCount1, ReagentCount2, ReagentCount3, ReagentCount4, ReagentCount5, ReagentCount6, ReagentCount7, ReagentCount8, EquippedItemClass, EquippedItemSubClassMask, EquippedItemInventoryTypeMask, Effect1, Effect2, Effect3, EffectDieSides1, EffectDieSides2, EffectDieSides3, EffectBaseDice1, EffectBaseDice2, EffectBaseDice3, EffectDicePerLevel1, EffectDicePerLevel2, EffectDicePerLevel3, EffectRealPointsPerLevel1, EffectRealPointsPerLevel2, EffectRealPointsPerLevel3, EffectBasePoints1, EffectBasePoints2, EffectBasePoints3, EffectMechanic1, EffectMechanic2, EffectMechanic3, EffectImplicitTargetA1, EffectImplicitTargetA2, EffectImplicitTargetA3, EffectImplicitTargetB1, EffectImplicitTargetB2, EffectImplicitTargetB3, EffectRadiusIndex1, EffectRadiusIndex2, EffectRadiusIndex3, EffectApplyAuraName1, EffectApplyAuraName2, EffectApplyAuraName3, EffectAmplitude1, EffectAmplitude2, EffectAmplitude3, EffectMultipleValue1, EffectMultipleValue2, EffectMultipleValue3, EffectChainTarget1, EffectChainTarget2, EffectChainTarget3, EffectItemType1, EffectItemType2, EffectItemType3, EffectMiscValue1, EffectMiscValue2, EffectMiscValue3, EffectMiscValueB1, EffectMiscValueB2, EffectMiscValueB3, EffectTriggerSpell1, EffectTriggerSpell2, EffectTriggerSpell3, EffectPointsPerComboPoint1, EffectPointsPerComboPoint2, EffectPointsPerComboPoint3, SpellVisual, SpellIconID, activeIconID, spellPriority, SpellName, SpellName2, SpellName3, SpellName4, SpellName5, SpellName6, SpellName7, SpellName8, ManaCostPercentage, StartRecoveryCategory, StartRecoveryTime, MaxTargetLevel, SpellFamilyName, SpellFamilyFlags, MaxAffectedTargets, DmgClass, PreventionType, DmgMultiplier1, DmgMultiplier2, DmgMultiplier3, TotemCategory1, TotemCategory2, AreaId) VALUES
('35284', '64', '0', '0', '0', '256', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1', '0', '0', '0', '0', '0', '0', '101', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '4', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '-1', '0', '0', '77', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1489', '0', '0', 'Summon Nether Wraiths', '', '', '', '', '', '', '', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1', '0', '0', '0', '0', '0');

-- custom made serversides for T5 warlock bonus 4-piece
INSERT INTO spell_template(Id, SchoolMask, Category, Dispel, Mechanic, Attributes, AttributesEx, AttributesEx2, AttributesEx3, AttributesEx4, AttributesEx5, Stances, StancesNot, Targets, TargetCreatureType, RequiresSpellFocus, CasterAuraState, TargetAuraState, CasterAuraStateNot, TargetAuraStateNot, CastingTimeIndex, RecoveryTime, CategoryRecoveryTime, InterruptFlags, AuraInterruptFlags, ChannelInterruptFlags, procFlags, procChance, procCharges, maxLevel, baseLevel, spellLevel, DurationIndex, powerType, manaCost, manaCostPerLevel, manaPerSecond, manaPerSecondPerLevel, rangeIndex, speed, StackAmount, Totem1, Totem2, Reagent1, Reagent2, Reagent3, Reagent4, Reagent5, Reagent6, Reagent7, Reagent8, ReagentCount1, ReagentCount2, ReagentCount3, ReagentCount4, ReagentCount5, ReagentCount6, ReagentCount7, ReagentCount8, EquippedItemClass, EquippedItemSubClassMask, EquippedItemInventoryTypeMask, Effect1, Effect2, Effect3, EffectDieSides1, EffectDieSides2, EffectDieSides3, EffectBaseDice1, EffectBaseDice2, EffectBaseDice3, EffectDicePerLevel1, EffectDicePerLevel2, EffectDicePerLevel3, EffectRealPointsPerLevel1, EffectRealPointsPerLevel2, EffectRealPointsPerLevel3, EffectBasePoints1, EffectBasePoints2, EffectBasePoints3, EffectMechanic1, EffectMechanic2, EffectMechanic3, EffectImplicitTargetA1, EffectImplicitTargetA2, EffectImplicitTargetA3, EffectImplicitTargetB1, EffectImplicitTargetB2, EffectImplicitTargetB3, EffectRadiusIndex1, EffectRadiusIndex2, EffectRadiusIndex3, EffectApplyAuraName1, EffectApplyAuraName2, EffectApplyAuraName3, EffectAmplitude1, EffectAmplitude2, EffectAmplitude3, EffectMultipleValue1, EffectMultipleValue2, EffectMultipleValue3, EffectChainTarget1, EffectChainTarget2, EffectChainTarget3, EffectItemType1, EffectItemType2, EffectItemType3, EffectMiscValue1, EffectMiscValue2, EffectMiscValue3, EffectMiscValueB1, EffectMiscValueB2, EffectMiscValueB3, EffectTriggerSpell1, EffectTriggerSpell2, EffectTriggerSpell3, EffectPointsPerComboPoint1, EffectPointsPerComboPoint2, EffectPointsPerComboPoint3, SpellVisual, SpellIconID, activeIconID, spellPriority, SpellName, SpellName2, SpellName3, SpellName4, SpellName5, SpellName6, SpellName7, SpellName8, ManaCostPercentage, StartRecoveryCategory, StartRecoveryTime, MaxTargetLevel, SpellFamilyName, SpellFamilyFlags, MaxAffectedTargets, DmgClass, PreventionType, DmgMultiplier1, DmgMultiplier2, DmgMultiplier3, TotemCategory1, TotemCategory2, AreaId, IsServerSide) VALUES
('37401', '1', '0', '0', '0', '192', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '21', '0', '0', '0', '0', '0', '1', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '-1', '0', '0', '6', '0', '0', '1', '0', '0', '1', '0', '0', '0', '0', '0', '0', '0', '0', '9', '0', '0', '0', '0', '0', '6', '0', '0', '0', '0', '0', '0', '0', '0', '4', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1', '0', '0', 'Improved Corruption and Immolate - Corruption', '', '', '', '', '', '', '', '0', '0', '0', '0', '5', '0', '0', '0', '0', '1', '1', '1', '0', '0', '0', 2),
('37402', '1', '0', '0', '0', '192', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '21', '0', '0', '0', '0', '0', '1', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '-1', '0', '0', '6', '0', '0', '1', '0', '0', '1', '0', '0', '0', '0', '0', '0', '0', '0', '9', '0', '0', '0', '0', '0', '6', '0', '0', '0', '0', '0', '0', '0', '0', '4', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1', '0', '0', 'Improved Corruption and Immolate - Immolate', '', '', '', '', '', '', '', '0', '0', '0', '0', '5', '0', '0', '0', '0', '1', '1', '1', '0', '0', '0', 2);


-- ============================================================
-- WOTLK section
-- ============================================================
26 changes: 19 additions & 7 deletions sql/scriptdev2/spell.sql
Original file line number Diff line number Diff line change
Expand Up @@ -205,11 +205,12 @@ INSERT INTO spell_scripts(Id, ScriptName) VALUES
(43706,'spell_drink'),
(46755,'spell_drink'),
(49472,'spell_drink'),
(28851,'spell_increased_healing_done_dummy'),
(28853,'spell_increased_healing_done_dummy'),
(32403,'spell_increased_healing_done_dummy'),
(34246,'spell_increased_healing_done_dummy'),
(34294,'spell_increased_healing_done_dummy'),
(32401,'spell_increased_healing_done_dummy'),
(32402,'spell_increased_healing_done_dummy'),
(37182,'spell_increased_healing_done_dummy'),
(15600,'spell_reduced_proc_chance_past60'),
(42144,'spell_horseman_create_water_bucket'),
(42074,'spell_horseman_fire'),
Expand Down Expand Up @@ -616,11 +617,14 @@ INSERT INTO spell_scripts(Id, ScriptName) VALUES
(47514,'spell_summon_mole_machine'),
(46649,'spell_maximize_pet_loyalty_and_happiness'),
(42919,'spell_tricky_treat'),
(32401,'spell_increased_healing_done_dummy'),
(32402,'spell_increased_healing_done_dummy'),
(32403,'spell_increased_healing_done_dummy'),
(34246,'spell_increased_healing_done_dummy'),
(37182,'spell_increased_healing_done_dummy'),
(27859,'spell_increased_spell_damage_done_dummy'),
(33556,'spell_increased_spell_damage_done_dummy'),
(28857,'spell_increased_spell_damage_done_dummy'),
(34230,'spell_increased_spell_damage_done_dummy'),
(41040,'spell_increased_spell_damage_done_dummy'),
(28854,'spell_increased_spell_damage_done_dummy'),
(34252,'spell_increased_spell_damage_done_dummy'),
(34292,'spell_increased_spell_damage_done_dummy'),
(28695,'spell_gameobject_call_for_help_on_usage'), -- Herb Gathering (Master)
(29354,'spell_gameobject_call_for_help_on_usage'), -- Mining (Master)
(30434,'spell_gameobject_call_for_help_on_usage'); -- Elemental Seaforium Charge
Expand Down Expand Up @@ -742,6 +746,11 @@ INSERT INTO spell_scripts(Id, ScriptName) VALUES
(19736,'spell_devour_magic'),
(27276,'spell_devour_magic'),
(27277,'spell_devour_magic'),
(17804,'spell_soul_siphon'),
(17805,'spell_soul_siphon'),
(37384,'spell_improved_corruption_and_immolate'),
(37401,'spell_increased_spell_damage_taken_dummy'),
(37402,'spell_increased_spell_damage_taken_dummy'),
(1714,'spell_curse_diminishing_duration'),
(11719,'spell_curse_diminishing_duration');

Expand Down Expand Up @@ -815,6 +824,8 @@ INSERT INTO spell_scripts(Id, ScriptName) VALUES
(12983,'spell_shatter_mage'),
(12984,'spell_shatter_mage'),
(12985,'spell_shatter_mage'),
(31679,'spell_molten_fury'),
(31680,'spell_molten_fury'),
(30455,'spell_ice_lance'),
(42208,'spell_blizzard'),
(42209,'spell_blizzard'),
Expand Down Expand Up @@ -847,6 +858,7 @@ INSERT INTO spell_scripts(Id, ScriptName) VALUES
(33983,'spell_mangle_druid_tbc'),
(33986,'spell_mangle_druid_tbc'),
(33987,'spell_mangle_druid_tbc'),
(37327,'spell_starfire_bonus'),
(1178,'spell_druid_form_scaling_ap_auras'),
(3025,'spell_druid_form_scaling_ap_auras'),
(9635,'spell_druid_form_scaling_ap_auras'),
Expand Down
14 changes: 14 additions & 0 deletions src/game/AI/ScriptDevAI/scripts/world/spell_scripts.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -777,6 +777,19 @@ struct IncreasedHealingDoneDummy : public AuraScript
}
};

struct IncreasedSpellDamageDoneDummy : public AuraScript
{
void OnApply(Aura* aura, bool apply) const override
{
aura->GetTarget()->RegisterScriptedLocationAura(aura, SCRIPT_LOCATION_SPELL_DAMAGE_DONE, apply);
}

void OnDamageCalculate(Aura* aura, Unit* /*attacker*/, Unit* /*victim*/, int32& advertisedBenefit, float& /*totalMod*/) const override
{
advertisedBenefit += aura->GetModifier()->m_amount;
}
};

struct spell_scourge_strike : public SpellScript
{
bool OnCheckTarget(const Spell* /*spell*/, Unit* target, SpellEffectIndex /*eff*/) const override
Expand Down Expand Up @@ -1184,6 +1197,7 @@ void AddSC_spell_scripts()
RegisterSpellScript<spell_effect_summon_no_follow_movement>("spell_effect_summon_no_follow_movement");
RegisterSpellScript<SpellHasteHealerTrinket>("spell_spell_haste_healer_trinket");
RegisterSpellScript<IncreasedHealingDoneDummy>("spell_increased_healing_done_dummy");
RegisterSpellScript<IncreasedSpellDamageDoneDummy>("spell_increased_spell_damage_done_dummy");
RegisterSpellScript<spell_scourge_strike>("spell_scourge_strike");
RegisterSpellScript<TribalDeath>("spell_tribal_death");
RegisterSpellScript<PreventSpellIfSameAuraOnCaster>("spell_prevent_spell_if_same_aura_on_caster");
Expand Down
63 changes: 0 additions & 63 deletions src/game/Entities/Unit.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -7403,69 +7403,6 @@ uint32 Unit::SpellDamageBonusDone(Unit* victim, SpellSchoolMask schoolMask, Spel
i->OnDamageCalculate(this, victim, DoneAdvertisedBenefit, DoneTotalMod);
}

AuraList const& mOverrideClassScript = owner->GetAurasByType(SPELL_AURA_OVERRIDE_CLASS_SCRIPTS);
for (auto i : mOverrideClassScript)
{
if (!i->isAffectedOnSpell(spellInfo))
continue;
switch (i->GetModifier()->m_miscvalue)
{
// Molten Fury
case 4920:
case 4919:
{
if (victim->HasAuraState(AURA_STATE_HEALTHLESS_20_PERCENT))
DoneTotalMod *= (100.0f + i->GetModifier()->m_amount) / 100.0f;
break;
}
// Soul Siphon
case 4992:
case 4993:
{
// effect 1 m_amount
int32 maxPercent = i->GetModifier()->m_amount;
// effect 0 m_amount
int32 stepPercent = CalculateSpellEffectValue(this, i->GetSpellProto(), EFFECT_INDEX_0);
// count affliction effects and calc additional damage in percentage
int32 modPercent = 0;
SpellAuraHolderMap const& victimAuras = victim->GetSpellAuraHolderMap();
for (const auto& victimAura : victimAuras)
{
SpellEntry const* m_spell = victimAura.second->GetSpellProto();
if (m_spell->SpellFamilyName != SPELLFAMILY_WARLOCK || !(m_spell->SpellFamilyFlags & uint64(0x0000871B804CC41A)))
continue;
modPercent += stepPercent * victimAura.second->GetStackAmount();
if (modPercent >= maxPercent)
{
modPercent = maxPercent;
break;
}
}
DoneTotalMod *= (modPercent + 100.0f) / 100.0f;
break;
}
// Starfire Bonus
case 5481:
{
if (victim->GetAura(SPELL_AURA_PERIODIC_DAMAGE, SPELLFAMILY_DRUID, uint64(0x0000000000200002)))
DoneTotalMod *= (i->GetModifier()->m_amount + 100.0f) / 100.0f;
break;
}
// Subject to downranking, i.e. normal per spell spelldamage
case 4418: // Increased Shock Damage
case 4554: // Increased Lightning Damage
case 4555: // Improved Moonfire
case 5142: // Increased Lightning Damage
case 5147: // Improved Consecration
case 5148: // Idol of the Shooting Star
case 6008: // Increased Lightning Damage / Totem of Hex
{
DoneAdvertisedBenefit += i->GetModifier()->m_amount;
break;
}
}
}

// apply ap bonus and benefit affected by spell power implicit coeffs and spell level penalties
DoneTotal = SpellBonusWithCoeffs(spellInfo, DoneTotal, DoneAdvertisedBenefit, 0, damagetype, true);

Expand Down
16 changes: 16 additions & 0 deletions src/game/Spells/Scripts/Scripting/ClassScripts/Druid.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -136,11 +136,27 @@ struct MangleDruidTBC : public AuraScript
}
};

// 37327 - Starfire Bonus
struct StarfireBonus : public AuraScript
{
void OnApply(Aura* aura, bool apply) const override
{
aura->GetTarget()->RegisterScriptedLocationAura(aura, SCRIPT_LOCATION_SPELL_DAMAGE_DONE, apply);
}

void OnDamageCalculate(Aura* aura, Unit* /*attacker*/, Unit* victim, int32& /*advertisedBenefit*/, float& totalMod) const override
{
if (victim->GetAura(SPELL_AURA_PERIODIC_DAMAGE, SPELLFAMILY_DRUID, uint64(0x0000000000200002)))
totalMod *= (aura->GetModifier()->m_amount + 100.0f) / 100.0f;
}
};

void LoadDruidScripts()
{
RegisterSpellScript<Regrowth>("spell_regrowth");
RegisterSpellScript<FormScalingAttackPowerAuras>("spell_druid_form_scaling_ap_auras");
RegisterSpellScript<ForceOfNatureSummon>("spell_force_of_nature_summon");
RegisterSpellScript<GuardianAggroSpell>("spell_guardian_aggro_spell");
RegisterSpellScript<MangleDruidTBC>("spell_mangle_druid_tbc");
RegisterSpellScript<StarfireBonus>("spell_starfire_bonus");
}
11 changes: 11 additions & 0 deletions src/game/Spells/Scripts/Scripting/ClassScripts/Mage.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,16 @@ struct Blizzard : public SpellScript
}
};

// 31679 - Molten Fury
struct MoltenFury : public AuraScript
{
void OnDamageCalculate(Aura* aura, Unit* /*attacker*/, Unit* victim, int32& /*advertisedBenefit*/, float& totalMod) const override
{
if (victim->HasAuraState(AURA_STATE_HEALTHLESS_20_PERCENT))
totalMod *= (100.0f + aura->GetModifier()->m_amount) / 100.0f;
}
};

// 30455 - Ice Lance
struct IceLance : public SpellScript
{
Expand All @@ -104,5 +114,6 @@ void LoadMageScripts()
RegisterSpellScript<ArcaneConcentration>("spell_arcane_concentration");
RegisterSpellScript<ShatterMage>("spell_shatter_mage");
RegisterSpellScript<Blizzard>("spell_blizzard");
RegisterSpellScript<MoltenFury>("spell_molten_fury");
RegisterSpellScript<IceLance>("spell_ice_lance");
}
68 changes: 68 additions & 0 deletions src/game/Spells/Scripts/Scripting/ClassScripts/Warlock.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -331,6 +331,71 @@ struct CurseDiminishingDuration : public AuraScript
}
};

// 17804 - Soul Siphon
struct SoulSiphon : public AuraScript
{
void OnApply(Aura* aura, bool apply) const override
{
if (aura->GetEffIndex() == EFFECT_INDEX_1)
aura->GetTarget()->RegisterScriptedLocationAura(aura, SCRIPT_LOCATION_SPELL_DAMAGE_DONE, apply);
}

void OnDamageCalculate(Aura* aura, Unit* attacker, Unit* victim, int32& /*advertisedBenefit*/, float& totalMod) const override
{
// effect 1 m_amount
int32 maxPercent = aura->GetModifier()->m_amount;
// effect 0 m_amount
int32 stepPercent = attacker->CalculateSpellEffectValue(attacker, aura->GetSpellProto(), EFFECT_INDEX_0);
// count affliction effects and calc additional damage in percentage
int32 modPercent = 0;
Unit::SpellAuraHolderMap const& victimAuras = victim->GetSpellAuraHolderMap();
for (const auto& victimAura : victimAuras)
{
SpellEntry const* m_spell = victimAura.second->GetSpellProto();
if (m_spell->SpellFamilyName != SPELLFAMILY_WARLOCK || !(m_spell->SpellFamilyFlags & uint64(0x0000871B804CC41A)))
continue;
modPercent += stepPercent * victimAura.second->GetStackAmount();
if (modPercent >= maxPercent)
{
modPercent = maxPercent;
break;
}
}
totalMod *= (modPercent + 100.0f) / 100.0f;
}
};

// 37384 - Improved Corruption and Immolate
struct ImprovedCorruptionAndImmolate : public AuraScript
{
SpellAuraProcResult OnProc(Aura* aura, ProcExecutionData& procData) const override
{
if (procData.spell)
{
procData.triggerTarget = procData.victim;
if (procData.spellInfo->SchoolMask & SPELL_SCHOOL_MASK_SHADOW)
procData.triggeredSpellId = 37401; // corruption
else
procData.triggeredSpellId = 37402; // immolate
}
return SPELL_AURA_PROC_OK;
}
};

// 37401, 37402 - Improved Corruption and Immolate
struct IncreasedSpellDamageTakenWarlock : public AuraScript
{
void OnApply(Aura* aura, bool apply) const override
{
aura->GetTarget()->RegisterScriptedLocationAura(aura, SCRIPT_LOCATION_SPELL_DAMAGE_TAKEN, apply);
}

void OnDamageCalculate(Aura* aura, Unit* /*attacker*/, Unit* /*victim*/, int32& /*advertisedBenefit*/, float& totalMod) const override
{
totalMod *= (100.0f + aura->GetModifier()->m_amount) / 100.0f;
}
};

void LoadWarlockScripts()
{
RegisterSpellScript<UnstableAffliction>("spell_unstable_affliction");
Expand All @@ -349,4 +414,7 @@ void LoadWarlockScripts()
RegisterSpellScript<CurseOfDoom>("spell_curse_of_doom");
RegisterSpellScript<CurseOfDoomEffect>("spell_curse_of_doom_effect");
RegisterSpellScript<CurseDiminishingDuration>("spell_curse_diminishing_duration");
RegisterSpellScript<SoulSiphon>("spell_soul_siphon");
RegisterSpellScript<ImprovedCorruptionAndImmolate>("spell_improved_corruption_and_immolate");
RegisterSpellScript<IncreasedSpellDamageTakenWarlock>("spell_increased_spell_damage_taken_dummy");
}

0 comments on commit 3a2451d

Please sign in to comment.