fix (DB/Script/Scarlet Enclave) Corrects some spell timers and adds a new spell for Darion Mograine. (#22324)

This commit is contained in:
Rocco Silipo
2025-06-21 23:45:59 +02:00
committed by GitHub
parent d68b0913a1
commit f30a821b7f
2 changed files with 20 additions and 7 deletions

View File

@@ -0,0 +1,11 @@
-- Defender of the Light (update comments and edit Holy Wrath cd).
UPDATE `creature_template` SET `AIName` = 'SmartAI' WHERE `entry` = 29174;
DELETE FROM `smart_scripts` WHERE (`source_type` = 0 AND `entryorguid` = 29174);
INSERT INTO `smart_scripts` (`entryorguid`, `source_type`, `id`, `link`, `event_type`, `event_phase_mask`, `event_chance`, `event_flags`, `event_param1`, `event_param2`, `event_param3`, `event_param4`, `event_param5`, `event_param6`, `action_type`, `action_param1`, `action_param2`, `action_param3`, `action_param4`, `action_param5`, `action_param6`, `target_type`, `target_param1`, `target_param2`, `target_param3`, `target_param4`, `target_x`, `target_y`, `target_z`, `target_o`, `comment`) VALUES
(29174, 0, 0, 0, 0, 0, 100, 0, 10000, 20000, 10000, 20000, 0, 0, 11, 53625, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 'Defender of the Light - In Combat - Cast \'Heroic Leap\''),
(29174, 0, 1, 0, 0, 0, 100, 0, 10000, 20000, 10000, 20000, 0, 0, 11, 53643, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 'Defender of the Light - In Combat - Cast \'Holy Strike\''),
(29174, 0, 2, 0, 0, 0, 100, 0, 10000, 30000, 45000, 60000, 0, 0, 11, 53638, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 'Defender of the Light - In Combat - Cast \'Holy Wrath\''),
(29174, 0, 3, 0, 0, 0, 100, 0, 10000, 20000, 10000, 20000, 0, 0, 11, 53629, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 'Defender of the Light - In Combat - Cast \'Uppercut\''),
(29174, 0, 4, 0, 74, 0, 100, 0, 0, 0, 5000, 10000, 20, 0, 11, 29427, 1, 0, 0, 0, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 'Defender of the Light - On Friendly Below 20% Health - Cast \'Holy Light\'');

View File

@@ -121,7 +121,7 @@ enum LightOfDawnEncounter
EVENT_SPELL_DEATH_STRIKE,
EVENT_SPELL_DEATH_EMBRACE,
EVENT_SPELL_UNHOLY_BLIGHT,
EVENT_SPELL_TALK,
EVENT_SPELL_DARION_MOD_DAMAGE,
// Positioning
EVENT_FINISH_FIGHT_1,
EVENT_FINISH_FIGHT_2,
@@ -253,6 +253,7 @@ enum LightOfDawnSpells
SPELL_DEATH_EMBRACE = 53635,
SPELL_ICY_TOUCH1 = 49723,
SPELL_UNHOLY_BLIGHT = 53640,
SPELL_DARION_MOD_DAMAGE = 53645,
// Outro
SPELL_THE_LIGHT_OF_DAWN = 53658,
@@ -524,7 +525,7 @@ public:
events.RescheduleEvent(EVENT_SPELL_DEATH_STRIKE, 8000);
events.RescheduleEvent(EVENT_SPELL_DEATH_EMBRACE, 5000);
events.RescheduleEvent(EVENT_SPELL_UNHOLY_BLIGHT, 10000);
events.RescheduleEvent(EVENT_SPELL_TALK, 10000);
events.RescheduleEvent(EVENT_SPELL_DARION_MOD_DAMAGE, 500);
}
void Reset() override
@@ -1146,23 +1147,24 @@ public:
{
case EVENT_SPELL_ANTI_MAGIC_ZONE:
DoCast(me, SPELL_ANTI_MAGIC_ZONE1);
events.RescheduleEvent(eventId, 25s, 30s);
events.RescheduleEvent(eventId, 30s, 45s);
break;
case EVENT_SPELL_DEATH_STRIKE:
DoCastVictim(SPELL_DEATH_STRIKE);
events.RescheduleEvent(eventId, 5s, 10s);
events.RescheduleEvent(eventId, 5s, 35s);
break;
case EVENT_SPELL_DEATH_EMBRACE:
DoCastVictim(SPELL_DEATH_EMBRACE);
events.RescheduleEvent(eventId, 15s, 20s);
events.RescheduleEvent(eventId, 45s, 60s);
break;
case EVENT_SPELL_UNHOLY_BLIGHT:
DoCast(me, SPELL_UNHOLY_BLIGHT);
events.RescheduleEvent(eventId, 60s);
break;
case EVENT_SPELL_TALK:
case EVENT_SPELL_DARION_MOD_DAMAGE:
DoCast(me, SPELL_DARION_MOD_DAMAGE);
Talk(SAY_LIGHT_OF_DAWN09);
events.RescheduleEvent(eventId, 15s, 20s);
events.RescheduleEvent(eventId, 15s, 25s);
break;
}