aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorazazel <none@none>2010-09-21 23:59:45 +0600
committerazazel <none@none>2010-09-21 23:59:45 +0600
commit5eb0fd80acfb0fe93b6e0e1af09d8129534120c2 (patch)
treefe546aadaf823b8373283524c55df21227d23d3c /src
parent38be7aab55bd3cf09c8cc3f8832a018faf009338 (diff)
Scripts/Spells: move implementation of some spells into scripts.
* 41337 Aura of Anger * 46394 Burn (Brutallus) * 53302 Sniper Training * 45472 Parachute * 66118 Leeching Swarm * 51685 Prey on the Weak * 20911 Blessing of Sanctuary * 25899 Greater Blessing of Sanctuary Scripts/Spells: remove several spells implementations from core to table (requires DB data) * 31231 Cheat Death * 51662 Hunger for Blood --HG-- branch : trunk
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Spells/Auras/SpellAuraEffects.cpp111
-rw-r--r--src/server/scripts/Spells/spell_generic.cpp154
-rw-r--r--src/server/scripts/Spells/spell_hunter.cpp67
-rw-r--r--src/server/scripts/Spells/spell_paladin.cpp45
-rw-r--r--src/server/scripts/Spells/spell_rogue.cpp122
5 files changed, 318 insertions, 181 deletions
diff --git a/src/server/game/Spells/Auras/SpellAuraEffects.cpp b/src/server/game/Spells/Auras/SpellAuraEffects.cpp
index 7788ace3435..36345e431a5 100644
--- a/src/server/game/Spells/Auras/SpellAuraEffects.cpp
+++ b/src/server/game/Spells/Auras/SpellAuraEffects.cpp
@@ -1057,22 +1057,6 @@ void AuraEffect::UpdatePeriodic(Unit * caster)
{
switch(GetAuraType())
{
- case SPELL_AURA_PERIODIC_DAMAGE:
- switch (GetId())
- {
- case 41337: // Aura of Anger
- if (AuraEffect * aurEff = GetBase()->GetEffect(1))
- aurEff->ChangeAmount(aurEff->GetAmount()+5);
- SetAmount(100 * m_tickNumber);
- break;
- case 46394: // Brutallus Burn
- if (m_tickNumber % 11 == 0)
- SetAmount(GetAmount() * 2);
- break;
- default:
- break;
- }
- break;
case SPELL_AURA_DUMMY:
// Haunting Spirits
if (GetId() == 7057)
@@ -1081,24 +1065,6 @@ void AuraEffect::UpdatePeriodic(Unit * caster)
m_amplitude *= IN_MILLISECONDS;
}
break;
- case SPELL_AURA_PERIODIC_TRIGGER_SPELL:
- switch (GetId())
- {
- // Sniper training
- case 53302:
- case 53303:
- case 53304:
- Unit * target = GetBase()->GetUnitOwner();
- if (target->GetTypeId() != TYPEID_PLAYER)
- break;
-
- if (target->ToPlayer()->isMoving())
- m_amount = target->CalculateSpellDamage(target, m_spellProto,m_effIndex, &m_baseAmount);
- else
- --m_amount;
- break;
- }
- break;
case SPELL_AURA_PERIODIC_DUMMY:
switch(GetSpellProto()->SpellFamilyName)
{
@@ -1913,32 +1879,6 @@ void AuraEffect::PeriodicDummyTick(Unit * target, Unit * caster) const
// 7053 Forsaken Skill: Shadow
return;
}
- case 45472: // Parachute
- if (target->GetTypeId() == TYPEID_PLAYER)
- {
- Player *plr = (Player*)target;
- if (plr->IsFalling())
- {
- plr->RemoveAurasDueToSpell(45472);
- plr->CastSpell(plr, 44795, true);
- }
- }
- break;
-
- case 51685: // Prey on the Weak
- case 51686:
- case 51687:
- case 51688:
- case 51689:
- if (target->getVictim() && (target->GetHealthPct() > target->getVictim()->GetHealthPct())) {
- if (!target->HasAura(58670)) {
- int32 basepoints = SpellMgr::CalculateSpellEffectAmount(GetSpellProto(), 0);
- target->CastCustomSpell(target, 58670, &basepoints, 0, 0, true);
- }
- }
- else
- target->RemoveAurasDueToSpell(58670);
- break;
case 62292: // Blaze (Pool of Tar)
// should we use custom damage?
target->CastSpell((Unit*)NULL, m_spellProto->EffectTriggerSpell[m_effIndex], true);
@@ -1958,14 +1898,6 @@ void AuraEffect::PeriodicDummyTick(Unit * target, Unit * caster) const
target->RemoveAura(64821);
}
break;
- case 66118: // Leeching Swarm (Anub'arak)
- int32 lifeLeeched = target->GetHealth() * GetAmount() / 100;
- if (lifeLeeched < 250) lifeLeeched = 250;
- // Damage
- caster->CastCustomSpell(target, 66240, &lifeLeeched, 0, 0, false);
- // Heal
- caster->CastCustomSpell(caster, 66125, &lifeLeeched, 0, 0, false);
- break;
}
break;
case SPELLFAMILY_MAGE:
@@ -2329,27 +2261,6 @@ void AuraEffect::TriggerSpell(Unit * target, Unit * caster) const
}
break;
}
- case SPELLFAMILY_HUNTER:
- {
- switch (auraId)
- {
- // Sniper training
- case 53302:
- case 53303:
- case 53304:
- // We are standing at the moment
- if (GetAmount() > 0)
- return;
-
- triggerSpellId = 64418 + auraId - 53302;
-
- // If aura is active - no need to continue
- if (target->HasAura(triggerSpellId))
- return;
- break;
- }
- break;
- }
case SPELLFAMILY_SHAMAN:
{
switch(auraId)
@@ -6158,26 +6069,8 @@ void AuraEffect::HandleAuraDummy(AuraApplication const * aurApp, uint8 mode, boo
break;
}
case SPELLFAMILY_PALADIN:
- if (!(mode & AURA_EFFECT_HANDLE_REAL))
- break;
- switch (GetSpellProto()->SpellIconID)
- {
- // Blessing of Sanctuary
- // Greater Blessing of Sanctuary
- case 19:
- case 1804:
- {
- if (!caster)
- break;
-
- if (apply)
- caster->CastSpell(target, 67480, true);
- else
- target->RemoveAura(67480, GetCasterGUID());
-
- break;
- }
- }
+ // if (!(mode & AURA_EFFECT_HANDLE_REAL))
+ // break;
break;
}
diff --git a/src/server/scripts/Spells/spell_generic.cpp b/src/server/scripts/Spells/spell_generic.cpp
index b1daada093f..bcd9960a8c5 100644
--- a/src/server/scripts/Spells/spell_generic.cpp
+++ b/src/server/scripts/Spells/spell_generic.cpp
@@ -23,6 +23,106 @@
*/
#include "ScriptPCH.h"
+#include "SpellAuraEffects.h"
+
+// 41337 Aura of Anger
+class spell_gen_aura_of_anger : public SpellScriptLoader
+{
+public:
+ spell_gen_aura_of_anger() : SpellScriptLoader("spell_gen_aura_of_anger") { }
+
+ class spell_gen_aura_of_anger_AuraScript : public AuraScript
+ {
+ void HandleEffectPeriodicUpdate(AuraEffect * aurEff)
+ {
+ if (AuraEffect * aurEff1 = aurEff->GetBase()->GetEffect(EFFECT_1))
+ aurEff1->ChangeAmount(aurEff1->GetAmount() + 5);
+ aurEff->SetAmount(100 * aurEff->GetTickNumber());
+ }
+
+ void Register()
+ {
+ OnEffectUpdatePeriodic += AuraEffectUpdatePeriodicFn(spell_gen_aura_of_anger_AuraScript::HandleEffectPeriodicUpdate, EFFECT_0, SPELL_AURA_PERIODIC_DAMAGE);
+ }
+ };
+
+ AuraScript *GetAuraScript() const
+ {
+ return new spell_gen_aura_of_anger_AuraScript();
+ }
+};
+
+// 46394 Brutallus Burn
+class spell_gen_burn_brutallus : public SpellScriptLoader
+{
+public:
+ spell_gen_burn_brutallus() : SpellScriptLoader("spell_gen_burn_brutallus") { }
+
+ class spell_gen_burn_brutallus_AuraScript : public AuraScript
+ {
+ void HandleEffectPeriodicUpdate(AuraEffect * aurEff)
+ {
+ if (aurEff->GetTickNumber() % 11 == 0)
+ aurEff->SetAmount(aurEff->GetAmount() * 2);
+ }
+
+ void Register()
+ {
+ OnEffectUpdatePeriodic += AuraEffectUpdatePeriodicFn(spell_gen_burn_brutallus_AuraScript::HandleEffectPeriodicUpdate, EFFECT_0, SPELL_AURA_PERIODIC_DAMAGE);
+ }
+ };
+
+ AuraScript *GetAuraScript() const
+ {
+ return new spell_gen_burn_brutallus_AuraScript();
+ }
+};
+
+// 45472 Parachute
+enum eParachuteSpells
+{
+ SPELL_PARACHUTE = 45472,
+ SPELL_PARACHUTE_BUFF = 44795,
+};
+
+class spell_gen_parachute : public SpellScriptLoader
+{
+public:
+ spell_gen_parachute() : SpellScriptLoader("spell_gen_parachute") { }
+
+ class spell_gen_parachute_AuraScript : public AuraScript
+ {
+ bool Validate(SpellEntry const * /*spellEntry*/)
+ {
+ if (!sSpellStore.LookupEntry(SPELL_PARACHUTE))
+ return false;
+ if (!sSpellStore.LookupEntry(SPELL_PARACHUTE_BUFF))
+ return false;
+ return true;
+ }
+
+ void HandleEffectPeriodic(AuraEffect const * /*aurEff*/, AuraApplication const * aurApp)
+ {
+ if (Unit* pTarget = aurApp->GetTarget())
+ if (Player* pPlayerTarget = pTarget->ToPlayer())
+ if (pPlayerTarget->IsFalling())
+ {
+ pPlayerTarget->RemoveAurasDueToSpell(SPELL_PARACHUTE);
+ pPlayerTarget->CastSpell(pPlayerTarget, SPELL_PARACHUTE_BUFF, true);
+ }
+ }
+
+ void Register()
+ {
+ OnEffectPeriodic += AuraEffectPeriodicFn(spell_gen_parachute_AuraScript::HandleEffectPeriodic, EFFECT_0, SPELL_AURA_PERIODIC_DUMMY);
+ }
+ };
+
+ AuraScript *GetAuraScript() const
+ {
+ return new spell_gen_parachute_AuraScript();
+ }
+};
enum NPCEntries
{
@@ -115,6 +215,56 @@ public:
}
};
+// 66118 Leeching Swarm
+enum eLeechingSwarmSpells
+{
+ SPELL_LEECHING_SWARM_DMG = 66240,
+ SPELL_LEECHING_SWARM_HEAL = 66125,
+};
+
+class spell_gen_leeching_swarm : public SpellScriptLoader
+{
+public:
+ spell_gen_leeching_swarm() : SpellScriptLoader("spell_gen_leeching_swarm") { }
+
+ class spell_gen_leeching_swarm_AuraScript : public AuraScript
+ {
+ bool Validate(SpellEntry const * /*spellEntry*/)
+ {
+ if (!sSpellStore.LookupEntry(SPELL_LEECHING_SWARM_DMG))
+ return false;
+ if (!sSpellStore.LookupEntry(SPELL_LEECHING_SWARM_HEAL))
+ return false;
+ return true;
+ }
+
+ void HandleEffectPeriodic(AuraEffect const * aurEff, AuraApplication const * aurApp)
+ {
+ if (Unit* pTarget = aurApp->GetTarget())
+ if (Unit* pCaster = GetCaster())
+ {
+ int32 lifeLeeched = pTarget->CountPctFromMaxHealth(aurEff->GetAmount());
+ if (lifeLeeched < 250)
+ lifeLeeched = 250;
+ // Damage
+ pCaster->CastCustomSpell(pTarget, SPELL_LEECHING_SWARM_DMG, &lifeLeeched, 0, 0, false);
+ // Heal
+ pCaster->CastCustomSpell(pCaster, SPELL_LEECHING_SWARM_HEAL, &lifeLeeched, 0, 0, false);
+ }
+ }
+
+ void Register()
+ {
+ OnEffectPeriodic += AuraEffectPeriodicFn(spell_gen_leeching_swarm_AuraScript::HandleEffectPeriodic, EFFECT_0, SPELL_AURA_PERIODIC_DUMMY);
+ }
+ };
+
+ AuraScript *GetAuraScript() const
+ {
+ return new spell_gen_leeching_swarm_AuraScript();
+ }
+};
+
// 24750 Trick
enum eTrickSpells
{
@@ -320,6 +470,10 @@ public:
void AddSC_generic_spell_scripts()
{
+ new spell_gen_aura_of_anger();
+ new spell_gen_burn_brutallus();
+ new spell_gen_leeching_swarm();
+ new spell_gen_parachute();
new spell_gen_pet_summoned();
new spell_gen_remove_flight_auras();
new spell_gen_trick();
diff --git a/src/server/scripts/Spells/spell_hunter.cpp b/src/server/scripts/Spells/spell_hunter.cpp
index 2416cbc0a73..9c4a339da6a 100644
--- a/src/server/scripts/Spells/spell_hunter.cpp
+++ b/src/server/scripts/Spells/spell_hunter.cpp
@@ -329,6 +329,72 @@ public:
}
};
+// 53302, 53303, 53304 Sniper Training
+enum eSniperTrainingSpells
+{
+ SPELL_SNIPER_TRAINING_R1 = 53302,
+ SPELL_SNIPER_TRAINING_BUFF_R1 = 64418,
+};
+
+class spell_hun_sniper_training : public SpellScriptLoader
+{
+public:
+ spell_hun_sniper_training() : SpellScriptLoader("spell_hun_sniper_training") { }
+
+ class spell_hun_sniper_training_AuraScript : public AuraScript
+ {
+ bool Validate(SpellEntry const * entry)
+ {
+ if (!sSpellStore.LookupEntry(SPELL_SNIPER_TRAINING_R1))
+ return false;
+ if (!sSpellStore.LookupEntry(SPELL_SNIPER_TRAINING_BUFF_R1))
+ return false;
+ return true;
+ }
+
+ void HandlePeriodic(AuraEffect const * aurEff, AuraApplication const * aurApp)
+ {
+ if (aurEff->GetAmount() > 0)
+ return;
+
+ if (Unit* pTarget = aurApp->GetTarget())
+ {
+ uint32 spellId = SPELL_SNIPER_TRAINING_BUFF_R1 + GetId() - SPELL_SNIPER_TRAINING_R1;
+ if (!pTarget->HasAura(spellId))
+ {
+ const SpellEntry* triggeredSpellInfo = sSpellStore.LookupEntry(spellId);
+ Unit* triggerCaster = GetTriggeredSpellCaster(triggeredSpellInfo, GetCaster(), pTarget);
+ triggerCaster->CastSpell(pTarget, triggeredSpellInfo, true, 0, aurEff);
+ }
+ }
+ }
+
+ void HandleUpdatePeriodic(AuraEffect * aurEff)
+ {
+ if (Unit* pTarget = GetUnitOwner())
+ if (Player* pPlayerTarget = pTarget->ToPlayer())
+ {
+ int32 baseAmount = aurEff->GetBaseAmount();
+ int32 amount = pPlayerTarget->isMoving() ?
+ pTarget->CalculateSpellDamage(pTarget, GetSpellProto(), aurEff->GetEffIndex(), &baseAmount) :
+ aurEff->GetAmount() - 1;
+ aurEff->SetAmount(amount);
+ }
+ }
+
+ void Register()
+ {
+ OnEffectPeriodic += AuraEffectPeriodicFn(spell_hun_sniper_training_AuraScript::HandlePeriodic, EFFECT_0, SPELL_AURA_PERIODIC_TRIGGER_SPELL);
+ OnEffectUpdatePeriodic += AuraEffectUpdatePeriodicFn(spell_hun_sniper_training_AuraScript::HandleUpdatePeriodic, EFFECT_0, SPELL_AURA_PERIODIC_TRIGGER_SPELL);
+ }
+ };
+
+ AuraScript *GetAuraScript() const
+ {
+ return new spell_hun_sniper_training_AuraScript();
+ }
+};
+
class spell_hun_pet_heart_of_the_phoenix : public SpellScriptLoader
{
public:
@@ -424,6 +490,7 @@ void AddSC_hunter_spell_scripts()
new spell_hun_masters_call();
new spell_hun_readiness();
new spell_hun_scatter_shot();
+ new spell_hun_sniper_training();
new spell_hun_pet_heart_of_the_phoenix();
new spell_hun_pet_carrion_feeder();
}
diff --git a/src/server/scripts/Spells/spell_paladin.cpp b/src/server/scripts/Spells/spell_paladin.cpp
index b128016f0e6..a0706ed3ac8 100644
--- a/src/server/scripts/Spells/spell_paladin.cpp
+++ b/src/server/scripts/Spells/spell_paladin.cpp
@@ -27,6 +27,7 @@
enum PaladinSpells
{
PALADIN_SPELL_DIVINE_PLEA = 54428,
+ PALADIN_SPELL_BLESSING_OF_SANCTUARY_BUFF = 67480,
PALADIN_SPELL_HOLY_SHOCK_R1 = 20473,
PALADIN_SPELL_HOLY_SHOCK_R1_DAMAGE = 25912,
@@ -89,6 +90,49 @@ public:
}
};
+// 20911 Blessing of Sanctuary
+// 25899 Greater Blessing of Sanctuary
+class spell_pal_blessing_of_sanctuary : public SpellScriptLoader
+{
+public:
+ spell_pal_blessing_of_sanctuary() : SpellScriptLoader("spell_pal_blessing_of_sanctuary") { }
+
+ class spell_pal_blessing_of_sanctuary_AuraScript : public AuraScript
+ {
+ bool Validate(SpellEntry const * entry)
+ {
+ if (!sSpellStore.LookupEntry(PALADIN_SPELL_BLESSING_OF_SANCTUARY_BUFF))
+ return false;
+ return true;
+ }
+
+ void HandleEffectApply(AuraEffect const * /*aurEff*/, AuraApplication const * aurApp, AuraEffectHandleModes /*mode*/)
+ {
+ if (Unit* pCaster = GetCaster())
+ if (Unit* pTarget = aurApp->GetTarget())
+ pCaster->CastSpell(pTarget, PALADIN_SPELL_BLESSING_OF_SANCTUARY_BUFF, true);
+ }
+
+ void HandleEffectRemove(AuraEffect const * /*aurEff*/, AuraApplication const * aurApp, AuraEffectHandleModes /*mode*/)
+ {
+ if (GetCaster())
+ if (Unit* pTarget = aurApp->GetTarget())
+ pTarget->RemoveAura(PALADIN_SPELL_BLESSING_OF_SANCTUARY_BUFF, GetCasterGUID());
+ }
+
+ void Register()
+ {
+ OnEffectApply += AuraEffectApplyFn(spell_pal_blessing_of_sanctuary_AuraScript::HandleEffectApply, EFFECT_0, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL);
+ OnEffectRemove += AuraEffectRemoveFn(spell_pal_blessing_of_sanctuary_AuraScript::HandleEffectRemove, EFFECT_0, SPELL_AURA_DUMMY, AURA_EFFECT_HANDLE_REAL);
+ }
+ };
+
+ AuraScript *GetAuraScript() const
+ {
+ return new spell_pal_blessing_of_sanctuary_AuraScript();
+ }
+};
+
// 63521 Guarded by The Light
class spell_pal_guarded_by_the_light : public SpellScriptLoader
{
@@ -206,6 +250,7 @@ public:
void AddSC_paladin_spell_scripts()
{
new spell_pal_blessing_of_faith();
+ new spell_pal_blessing_of_sanctuary();
new spell_pal_guarded_by_the_light();
new spell_pal_holy_shock();
new spell_pal_judgement_of_command();
diff --git a/src/server/scripts/Spells/spell_rogue.cpp b/src/server/scripts/Spells/spell_rogue.cpp
index 0ccd1dd586b..8ad97c135ca 100644
--- a/src/server/scripts/Spells/spell_rogue.cpp
+++ b/src/server/scripts/Spells/spell_rogue.cpp
@@ -25,76 +25,9 @@
enum RogueSpells
{
- ROGUE_SPELL_HUNGER_FOR_BLOOD_BUFF = 63848,
ROGUE_SPELL_SHIV_TRIGGERED = 5940,
- ROGUE_SPELL_CHEATING_DEATH = 45182,
ROGUE_SPELL_GLYPH_OF_PREPARATION = 56819,
-};
-
-class spell_rog_cheat_death : public SpellScriptLoader
-{
- public:
- spell_rog_cheat_death() : SpellScriptLoader("spell_rog_cheat_death") { }
-
- class spell_rog_cheat_death_SpellScript : public SpellScript
- {
- bool Validate(SpellEntry const * /*spellEntry*/)
- {
- if (!sSpellStore.LookupEntry(ROGUE_SPELL_CHEATING_DEATH))
- return false;
- return true;
- }
-
- void HandleDummy(SpellEffIndex /*effIndex*/)
- {
- Unit *caster = GetCaster();
- caster->CastSpell(caster, ROGUE_SPELL_CHEATING_DEATH, true);
- }
-
- void Register()
- {
- // add dummy effect spell handler to Cheat Death
- OnEffect += SpellEffectFn(spell_rog_cheat_death_SpellScript::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY);
- }
- };
-
- SpellScript *GetSpellScript() const
- {
- return new spell_rog_cheat_death_SpellScript;
- }
-};
-
-class spell_rog_hunger_for_blood : public SpellScriptLoader
-{
- public:
- spell_rog_hunger_for_blood() : SpellScriptLoader("spell_rog_hunger_for_blood") { }
-
- class spell_rog_hunger_for_blood_SpellScript : public SpellScript
- {
- bool Validate(SpellEntry const * /*spellEntry*/)
- {
- if (!sSpellStore.LookupEntry(ROGUE_SPELL_HUNGER_FOR_BLOOD_BUFF))
- return false;
- return true;
- }
-
- void HandleDummy(SpellEffIndex /*effIndex*/)
- {
- Unit *caster = GetCaster();
- caster->CastSpell(caster, ROGUE_SPELL_HUNGER_FOR_BLOOD_BUFF, true);
- }
-
- void Register()
- {
- // add dummy effect spell handler to Hunger for Blood
- OnEffect += SpellEffectFn(spell_rog_hunger_for_blood_SpellScript::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY);
- }
- };
-
- SpellScript *GetSpellScript() const
- {
- return new spell_rog_hunger_for_blood_SpellScript();
- }
+ ROGUE_SPELL_PREY_ON_THE_WEAK = 58670,
};
class spell_rog_preparation : public SpellScriptLoader
@@ -159,6 +92,52 @@ class spell_rog_preparation : public SpellScriptLoader
}
};
+// 51685-51689 Prey on the Weak
+class spell_rog_prey_on_the_weak : public SpellScriptLoader
+{
+public:
+ spell_rog_prey_on_the_weak() : SpellScriptLoader("spell_rog_prey_on_the_weak") { }
+
+ class spell_rog_prey_on_the_weak_AuraScript : public AuraScript
+ {
+ bool Validate(SpellEntry const * /*spellEntry*/)
+ {
+ if (!sSpellStore.LookupEntry(ROGUE_SPELL_PREY_ON_THE_WEAK))
+ return false;
+ return true;
+ }
+
+ void HandleEffectPeriodic(AuraEffect const * /*aurEff*/, AuraApplication const * aurApp)
+ {
+ if (Unit* pTarget = aurApp->GetTarget())
+ {
+ Unit* pVictim = pTarget->getVictim();
+ if (pVictim && (pTarget->GetHealthPct() > pVictim->GetHealthPct()))
+ {
+ if (!pTarget->HasAura(ROGUE_SPELL_PREY_ON_THE_WEAK))
+ {
+ int32 bp = SpellMgr::CalculateSpellEffectAmount(GetSpellProto(), 0);
+ pTarget->CastCustomSpell(pTarget, ROGUE_SPELL_PREY_ON_THE_WEAK, &bp, 0, 0, true);
+ }
+ }
+ else
+ pTarget->RemoveAurasDueToSpell(ROGUE_SPELL_PREY_ON_THE_WEAK);
+ }
+ }
+
+ void Register()
+ {
+ OnEffectPeriodic += AuraEffectPeriodicFn(spell_rog_prey_on_the_weak_AuraScript::HandleEffectPeriodic, EFFECT_0, SPELL_AURA_PERIODIC_DUMMY);
+ }
+ };
+
+ AuraScript *GetAuraScript() const
+ {
+ return new spell_rog_prey_on_the_weak_AuraScript();
+ }
+};
+
+
class spell_rog_shiv : public SpellScriptLoader
{
public:
@@ -198,8 +177,7 @@ class spell_rog_shiv : public SpellScriptLoader
void AddSC_rogue_spell_scripts()
{
- new spell_rog_cheat_death;
- new spell_rog_hunger_for_blood;
- new spell_rog_preparation;
- new spell_rog_shiv;
+ new spell_rog_preparation();
+ new spell_rog_prey_on_the_weak();
+ new spell_rog_shiv();
}