mirror of
https://github.com/mod-playerbots/azerothcore-wotlk.git
synced 2026-02-18 09:44:34 +00:00
fix(Scripts/VioletHold): Activation Crystals (#13176)
* fix(Scripts/Activation Crystals): Instance The Violet Hold * update * Update violet_hold.cpp
This commit is contained in:
@@ -0,0 +1,27 @@
|
||||
--
|
||||
UPDATE `creature_template` SET `AIName`='', `ScriptName`='npc_violet_hold_defense_system' WHERE `entry`=30837;
|
||||
|
||||
DELETE FROM `smart_scripts` WHERE (`source_type` = 0 AND `entryorguid` = 30837);
|
||||
|
||||
DELETE FROM `conditions` WHERE `SourceTypeOrReferenceId`=13 and `SourceEntry` IN (57912, 57930, 58152);
|
||||
INSERT INTO `conditions` (`SourceTypeOrReferenceId`,`SourceGroup`,`SourceEntry`,`SourceId`,`ElseGroup`,`ConditionTypeOrReference`,`ConditionTarget`,`ConditionValue1`,`ConditionValue2`,`ConditionValue3`,`NegativeCondition`,`ErrorType`,`ErrorTextId`,`ScriptName`,`Comment`) VALUES
|
||||
(13,1,57912,0,0,31,0,3,29425,0,0,0,0,'','Defense System - Arcane Lightning'),
|
||||
(13,1,57930,0,0,31,0,3,30857,0,0,0,0,'','Defense System - Arcane Lightning'),
|
||||
(13,1,58152,0,0,31,0,3,30661,0,0,0,0,'','Defense System - Arcane Lightning'),
|
||||
(13,1,58152,0,1,31,0,3,30662,0,0,0,0,'','Defense System - Arcane Lightning'),
|
||||
(13,1,58152,0,2,31,0,3,30663,0,0,0,0,'','Defense System - Arcane Lightning'),
|
||||
(13,1,58152,0,3,31,0,3,30664,0,0,0,0,'','Defense System - Arcane Lightning'),
|
||||
(13,1,58152,0,4,31,0,3,30665,0,0,0,0,'','Defense System - Arcane Lightning'),
|
||||
(13,1,58152,0,5,31,0,3,30666,0,0,0,0,'','Defense System - Arcane Lightning'),
|
||||
(13,1,58152,0,6,31,0,3,30667,0,0,0,0,'','Defense System - Arcane Lightning'),
|
||||
(13,1,58152,0,7,31,0,3,30668,0,0,0,0,'','Defense System - Arcane Lightning'),
|
||||
(13,1,58152,0,8,31,0,3,30918,0,0,0,0,'','Defense System - Arcane Lightning'),
|
||||
(13,1,58152,0,9,31,0,3,30961,0,0,0,0,'','Defense System - Arcane Lightning'),
|
||||
(13,1,58152,0,10,31,0,3,30962,0,0,0,0,'','Defense System - Arcane Lightning'),
|
||||
(13,1,58152,0,11,31,0,3,30963,0,0,0,0,'','Defense System - Arcane Lightning'),
|
||||
(13,1,58152,0,12,31,0,3,31007,0,0,0,0,'','Defense System - Arcane Lightning'),
|
||||
(13,1,58152,0,13,31,0,3,31008,0,0,0,0,'','Defense System - Arcane Lightning'),
|
||||
(13,1,58152,0,14,31,0,3,31009,0,0,0,0,'','Defense System - Arcane Lightning'),
|
||||
(13,1,58152,0,15,31,0,3,31010,0,0,0,0,'','Defense System - Arcane Lightning'),
|
||||
(13,1,58152,0,16,31,0,3,31118,0,0,0,0,'','Defense System - Arcane Lightning'),
|
||||
(13,1,58152,0,17,31,0,3,32191,0,0,0,0,'','Defense System - Arcane Lightning');
|
||||
@@ -1184,6 +1184,36 @@ public:
|
||||
}
|
||||
};
|
||||
|
||||
struct npc_violet_hold_defense_system : public ScriptedAI
|
||||
{
|
||||
npc_violet_hold_defense_system(Creature* creature) : ScriptedAI(creature) { }
|
||||
|
||||
void Reset() override
|
||||
{
|
||||
DoCast(RAND(SPELL_DEFENSE_SYSTEM_SPAWN_EFFECT, SPELL_DEFENSE_SYSTEM_VISUAL));
|
||||
events.ScheduleEvent(EVENT_ARCANE_LIGHTNING, 4s);
|
||||
events.ScheduleEvent(EVENT_ARCANE_LIGHTNING_INSTAKILL, 4s);
|
||||
me->DespawnOrUnsummon(7s, 0s);
|
||||
}
|
||||
|
||||
void UpdateAI(uint32 diff) override
|
||||
{
|
||||
events.Update(diff);
|
||||
|
||||
switch (events.ExecuteEvent())
|
||||
{
|
||||
case EVENT_ARCANE_LIGHTNING:
|
||||
DoCastAOE(RAND(SPELL_ARCANE_LIGHTNING, SPELL_ARCANE_LIGHTNING_VISUAL));
|
||||
events.RepeatEvent(2000);
|
||||
break;
|
||||
case EVENT_ARCANE_LIGHTNING_INSTAKILL:
|
||||
DoCastAOE(SPELL_ARCANE_LIGHTNING_INSTAKILL);
|
||||
events.RepeatEvent(1000);
|
||||
break;
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
void AddSC_violet_hold()
|
||||
{
|
||||
new go_vh_activation_crystal();
|
||||
@@ -1201,4 +1231,5 @@ void AddSC_violet_hold()
|
||||
new npc_azure_stalker();
|
||||
|
||||
new spell_destroy_door_seal();
|
||||
RegisterCreatureAI(npc_violet_hold_defense_system);
|
||||
}
|
||||
|
||||
@@ -98,13 +98,16 @@ enum VHWorldStates
|
||||
|
||||
enum Spells
|
||||
{
|
||||
SPELL_CONTROL_CRYSTAL_ACTIVATION = 57804,
|
||||
SPELL_ARCANE_LIGHTNING = 57912,
|
||||
SPELL_ARCANE_LIGHTNING_VISUAL = 57930,
|
||||
SPELL_PORTAL_CHANNEL = 58012,
|
||||
SPELL_DESTROY_DOOR_SEAL = 58040,
|
||||
SPELL_CYANIGOSA_TRANSFORM = 58668,
|
||||
SPELL_CYANIGOSA_BLUE_AURA = 45870,
|
||||
SPELL_CONTROL_CRYSTAL_ACTIVATION = 57804,
|
||||
SPELL_DEFENSE_SYSTEM_SPAWN_EFFECT = 57886,
|
||||
SPELL_DEFENSE_SYSTEM_VISUAL = 57887,
|
||||
SPELL_ARCANE_LIGHTNING = 57912,
|
||||
SPELL_ARCANE_LIGHTNING_VISUAL = 57930,
|
||||
SPELL_ARCANE_LIGHTNING_INSTAKILL = 58152,
|
||||
SPELL_PORTAL_CHANNEL = 58012,
|
||||
SPELL_DESTROY_DOOR_SEAL = 58040,
|
||||
SPELL_CYANIGOSA_TRANSFORM = 58668,
|
||||
SPELL_CYANIGOSA_BLUE_AURA = 45870
|
||||
};
|
||||
|
||||
enum Events
|
||||
@@ -117,6 +120,10 @@ enum Events
|
||||
EVENT_SUMMON_PORTAL,
|
||||
EVENT_CYANIGOSSA_TRANSFORM,
|
||||
EVENT_CYANIGOSA_ATTACK,
|
||||
|
||||
// Event defense system
|
||||
EVENT_ARCANE_LIGHTNING,
|
||||
EVENT_ARCANE_LIGHTNING_INSTAKILL
|
||||
};
|
||||
|
||||
enum Data
|
||||
|
||||
Reference in New Issue
Block a user