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()
|
void AddSC_violet_hold()
|
||||||
{
|
{
|
||||||
new go_vh_activation_crystal();
|
new go_vh_activation_crystal();
|
||||||
@@ -1201,4 +1231,5 @@ void AddSC_violet_hold()
|
|||||||
new npc_azure_stalker();
|
new npc_azure_stalker();
|
||||||
|
|
||||||
new spell_destroy_door_seal();
|
new spell_destroy_door_seal();
|
||||||
|
RegisterCreatureAI(npc_violet_hold_defense_system);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -98,13 +98,16 @@ enum VHWorldStates
|
|||||||
|
|
||||||
enum Spells
|
enum Spells
|
||||||
{
|
{
|
||||||
SPELL_CONTROL_CRYSTAL_ACTIVATION = 57804,
|
SPELL_CONTROL_CRYSTAL_ACTIVATION = 57804,
|
||||||
SPELL_ARCANE_LIGHTNING = 57912,
|
SPELL_DEFENSE_SYSTEM_SPAWN_EFFECT = 57886,
|
||||||
SPELL_ARCANE_LIGHTNING_VISUAL = 57930,
|
SPELL_DEFENSE_SYSTEM_VISUAL = 57887,
|
||||||
SPELL_PORTAL_CHANNEL = 58012,
|
SPELL_ARCANE_LIGHTNING = 57912,
|
||||||
SPELL_DESTROY_DOOR_SEAL = 58040,
|
SPELL_ARCANE_LIGHTNING_VISUAL = 57930,
|
||||||
SPELL_CYANIGOSA_TRANSFORM = 58668,
|
SPELL_ARCANE_LIGHTNING_INSTAKILL = 58152,
|
||||||
SPELL_CYANIGOSA_BLUE_AURA = 45870,
|
SPELL_PORTAL_CHANNEL = 58012,
|
||||||
|
SPELL_DESTROY_DOOR_SEAL = 58040,
|
||||||
|
SPELL_CYANIGOSA_TRANSFORM = 58668,
|
||||||
|
SPELL_CYANIGOSA_BLUE_AURA = 45870
|
||||||
};
|
};
|
||||||
|
|
||||||
enum Events
|
enum Events
|
||||||
@@ -117,6 +120,10 @@ enum Events
|
|||||||
EVENT_SUMMON_PORTAL,
|
EVENT_SUMMON_PORTAL,
|
||||||
EVENT_CYANIGOSSA_TRANSFORM,
|
EVENT_CYANIGOSSA_TRANSFORM,
|
||||||
EVENT_CYANIGOSA_ATTACK,
|
EVENT_CYANIGOSA_ATTACK,
|
||||||
|
|
||||||
|
// Event defense system
|
||||||
|
EVENT_ARCANE_LIGHTNING,
|
||||||
|
EVENT_ARCANE_LIGHTNING_INSTAKILL
|
||||||
};
|
};
|
||||||
|
|
||||||
enum Data
|
enum Data
|
||||||
|
|||||||
Reference in New Issue
Block a user