diff options
| -rw-r--r-- | src/server/scripts/Spells/spell_generic.cpp | 14 | ||||
| -rw-r--r-- | src/server/scripts/Spells/spell_item.cpp | 10 | ||||
| -rw-r--r-- | src/server/scripts/Spells/spell_quest.cpp | 20 | 
3 files changed, 17 insertions, 27 deletions
| diff --git a/src/server/scripts/Spells/spell_generic.cpp b/src/server/scripts/Spells/spell_generic.cpp index 638a17bc4f9..ec82dbc0e57 100644 --- a/src/server/scripts/Spells/spell_generic.cpp +++ b/src/server/scripts/Spells/spell_generic.cpp @@ -1585,19 +1585,17 @@ class spell_gen_spirit_healer_res : public SpellScriptLoader              bool Load()              { -                return GetOriginalCaster()->GetTypeId() == TYPEID_PLAYER; +                return GetOriginalCaster() && GetOriginalCaster()->GetTypeId() == TYPEID_PLAYER;              }              void HandleDummy(SpellEffIndex /* effIndex */)              { -                if (Player* originalCaster = GetOriginalCaster()->ToPlayer()) +                Player* originalCaster = GetOriginalCaster()->ToPlayer(); +                if (Unit* target = GetHitUnit())                  { -                    if (Unit* target = GetHitUnit()) -                    { -                        WorldPacket data(SMSG_SPIRIT_HEALER_CONFIRM, 8); -                        data << uint64(target->GetGUID()); -                        originalCaster->GetSession()->SendPacket(&data); -                    } +                    WorldPacket data(SMSG_SPIRIT_HEALER_CONFIRM, 8); +                    data << uint64(target->GetGUID()); +                    originalCaster->GetSession()->SendPacket(&data);                  }              } diff --git a/src/server/scripts/Spells/spell_item.cpp b/src/server/scripts/Spells/spell_item.cpp index 7829587b0ea..4e7b195621a 100644 --- a/src/server/scripts/Spells/spell_item.cpp +++ b/src/server/scripts/Spells/spell_item.cpp @@ -1509,7 +1509,7 @@ class spell_item_complete_raptor_capture : public SpellScriptLoader  enum ImpaleLeviroth  {      NPC_LEVIROTH                = 26452, -    SPELL_LEVIROTH_SELF_IMPALE  = 49882 +    SPELL_LEVIROTH_SELF_IMPALE  = 49882,  };  class spell_item_impale_leviroth : public SpellScriptLoader @@ -1530,11 +1530,9 @@ class spell_item_impale_leviroth : public SpellScriptLoader              void HandleDummy(SpellEffIndex /* effIndex */)              { -                Unit* target = GetHitCreature(); -                if (!target || target->GetEntry() != NPC_LEVIROTH || !target->HealthBelowPct(95)) -                    return; - -                target->CastSpell(target, SPELL_LEVIROTH_SELF_IMPALE, true); +                if (Unit* target = GetHitCreature()) +                    if (target->GetEntry() == NPC_LEVIROTH && target->HealthBelowPct(95)) +                        target->CastSpell(target, SPELL_LEVIROTH_SELF_IMPALE, true);              }              void Register() diff --git a/src/server/scripts/Spells/spell_quest.cpp b/src/server/scripts/Spells/spell_quest.cpp index 6de1ffa8376..a581980bf8e 100644 --- a/src/server/scripts/Spells/spell_quest.cpp +++ b/src/server/scripts/Spells/spell_quest.cpp @@ -1025,9 +1025,9 @@ class spell_q14112_14145_chum_the_water: public SpellScriptLoader  // http://old01.wowhead.com/quest=9452 - Red Snapper - Very Tasty!  enum RedSnapperVeryTasty  { -    SPELL_CAST_NET      = 29866, -    ITEM_RED_SNAPPER    = 23614, -    NPC_ANGRY_MURLOC    = 17102, +    SPELL_CAST_NET          = 29866, +    ITEM_RED_SNAPPER        = 23614, +    SPELL_NEW_SUMMON_TEST   = 49214,  };  class spell_q9452_cast_net: public SpellScriptLoader @@ -1047,16 +1047,10 @@ class spell_q9452_cast_net: public SpellScriptLoader              void HandleDummy(SpellEffIndex /*effIndex*/)              {                  Player* caster = GetCaster()->ToPlayer(); -                switch (urand(0, 2)) -                { -                    case 0: case 1: -                        caster->AddItem(ITEM_RED_SNAPPER, 1); -                        break; -                    case 2: -                        if (Creature* murloc = caster->SummonCreature(NPC_ANGRY_MURLOC, caster->GetPositionX()+5, caster->GetPositionY(), caster->GetPositionZ(), 0.0f, TEMPSUMMON_MANUAL_DESPAWN, 120000)) -                            murloc->AI()->AttackStart(caster); -                        break; -                } +                if (roll_chance_i(66)) +                    caster->AddItem(ITEM_RED_SNAPPER, 1); +                else +                    caster->CastSpell(caster, SPELL_NEW_SUMMON_TEST, true);              }              void Register() | 
