Scripts/BlackTemple: Updates on Illidan encounter

- Fixed issues related with Parasitic Shadowfiend
- Updated script to new model
- Fixed loop of Parasitic Shadowfiend Summon
- Added a new spell (SPELL_REMOVE_PARASITIC_SHADOWFIEND)
- Fixed illidari elite attacking players
- SPELL_PARASITIC_SHADOWFIEND now is a negative aura

(cherry picked from commit 90f07bd948)
This commit is contained in:
Keader
2017-10-26 23:10:00 -03:00
committed by funjoker
parent b17a23635d
commit 8a6fdb7a21
4 changed files with 1591 additions and 1804 deletions

View File

@@ -0,0 +1,13 @@
UPDATE `creature_template` SET `ScriptName`='npc_illidari_elite' WHERE `entry`=23226;
DELETE FROM `spell_script_names` WHERE `ScriptName`='spell_illidan_remove_parasitic_shadowfiend';
INSERT INTO `spell_script_names` (`spell_id`, `ScriptName`) VALUES
(41923,'spell_illidan_remove_parasitic_shadowfiend');
DELETE FROM `spell_dbc` WHERE `Id`=41923;
INSERT INTO `spell_dbc` (`Id`, `Attributes`, `AttributesEx`, `AttributesEx2`, `AttributesEx3`, `AttributesEx4`, `AttributesEx5`, `AttributesEx6`, `AttributesEx7`, `AttributesEx8`, `AttributesEx9`, `AttributesEx10`, `CastingTimeIndex`, `DurationIndex`, `RangeIndex`, `SchoolMask`, `SpellAuraOptionsId`, `SpellCastingRequirementsId`, `SpellCategoriesId`, `SpellClassOptionsId`, `SpellEquippedItemsId`, `SpellLevelsId`, `SpellTargetRestrictionsId`, `SpellInterruptsId`, `Comment`) VALUES
(41923, 536871296, 268435592, 4, 256, 0, 8, 0, 0, 0, 0, 0, 1, 27, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 'Remove Parasitic Shadowfiends');
DELETE FROM `spelleffect_dbc` WHERE `Id`=155918;
INSERT INTO `spelleffect_dbc` (`Id`, `Effect`, `EffectValueMultiplier`, `EffectApplyAuraName`, `EffectAmplitude`, `EffectBasePoints`, `EffectBonusMultiplier`, `EffectDamageMultiplier`, `EffectChainTarget`, `EffectDieSides`, `EffectItemType`, `EffectMechanic`, `EffectMiscValue`, `EffectMiscValueB`, `EffectRadiusIndex`, `EffectRadiusIndexMax`, `EffectRealPointsPerLevel`, `EffectSpellClassMaskA`, `EffectSpellClassMaskB`, `EffectSpellClassMaskC`, `EffectTriggerSpell`, `EffectImplicitTargetA`, `EffectImplicitTargetB`, `EffectSpellId`, `EffectIndex`) VALUES
(155918, 6, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28, 0, 0, 0, 0, 0, 0, 22, 15, 41923, 0);

View File

@@ -4219,6 +4219,10 @@ bool SpellInfo::_IsPositiveEffect(uint32 effIndex, bool deep) const
case 29214: // Wrath of the Plaguebringer
case 34700: // Allergic Reaction
case 54836: // Wrath of the Plaguebringer
case 61987: // Avenging Wrath Marker
case 61988: // Divine Shield exclude aura
case 41914: // Parasitic Shadowfiend (Illidan)
case 41917: // Parasitic Shadowfiend (Illidan)
return false;
case 30877: // Tag Murloc
case 61716: // Rabbit Costume

View File

@@ -105,7 +105,8 @@ enum BTCreatureIds
NPC_ILLIDARI_ELITE = 23226,
NPC_GLAIVE_TARGET = 23448,
NPC_GLAIVE_WORLD_TRIGGER = 22515,
NPC_DEMON_FIRE = 23069
NPC_DEMON_FIRE = 23069,
NPC_PARASITIC_SHADOWFIEND = 23498
};
enum BTGameObjectIds
@@ -143,4 +144,6 @@ inline AI* GetBlackTempleAI(T* obj)
return GetInstanceAI<AI>(obj, BTScriptName);
}
#define RegisterBlackTempleCreatureAI(ai_name) RegisterCreatureAIWithFactory(ai_name, GetBlackTempleAI)
#endif // BLACK_TEMPLE_H_

File diff suppressed because it is too large Load Diff