diff options
author | Gacko <gacko28@gmx.de> | 2012-12-20 09:55:59 +0100 |
---|---|---|
committer | Gacko <gacko28@gmx.de> | 2012-12-20 10:01:07 +0100 |
commit | 699354d8efdb95b24ca91e804885449b79c6a665 (patch) | |
tree | 3d1d104ff78c49eee648057208bedd5cc68a6c09 /src | |
parent | 05c38b20ea4db679e16808f5407cf1f7a9e79e73 (diff) |
Core/Spell: Shadow's Fate should hit every unit
See #8723 for further information
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Entities/Unit/Unit.cpp | 38 |
1 files changed, 4 insertions, 34 deletions
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index a5a36001855..1ca40671afe 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -9038,40 +9038,10 @@ bool Unit::HandleProcTriggerSpell(Unit* victim, uint32 damage, AuraEffect* trigg // Shadow's Fate (Shadowmourne questline) case 71169: { - if (GetTypeId() != TYPEID_PLAYER) - return false; - - Player* player = ToPlayer(); - if (player->GetQuestStatus(24547) != QUEST_STATUS_INCOMPLETE) - { - uint32 spellId = 0; - uint32 questId = 0; - switch (victim->GetEntry()) - { - case 36678: // NPC: Professor Putricide - questId = 24749; // Quest: Unholy Infusion - spellId = 71516; // Spell: Shadow Infusion - break; - case 37955: // NPC: Blood-Queen Lana'thel - questId = 24756; // Quest: Blood Infusion - spellId = 72154; // Spell: Thirst Quenched - break; - case 36853: // NPC: Sindragosa - questId = 24757; // Quest: Frost Infusion - spellId = 72290; // Spell: Frost-Imbued Blade - break; - default: - return false; - } - - if (player->GetQuestStatus(questId) != QUEST_STATUS_INCOMPLETE || !player->HasAura(spellId)) - return false; - } - - if (victim->GetTypeId() != TYPEID_UNIT) - return false; - // critters are not allowed - if (victim->GetCreatureType() == CREATURE_TYPE_CRITTER) + // These lines handle on which targets the Shadow's Fate debuff could be applied to. + // The aura is already restricted to ICC, but it should not be applied to NPCs like + // bugs, rats or summons for example which don't give reputation. + if (GetTypeId() != TYPEID_PLAYER || victim->GetTypeId() != TYPEID_UNIT || victim->GetCreatureType() == CREATURE_TYPE_CRITTER) return false; break; } |