mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-21 09:44:45 +01:00
Scripts/BoT: added berserk timers to bosses
This commit is contained in:
@@ -160,6 +160,11 @@ enum BoTGameObjects
|
||||
GO_GRIM_BATOL_RAID_TRAP_DOOR = 205898
|
||||
};
|
||||
|
||||
enum BoTSpells
|
||||
{
|
||||
SPELL_BERSERK = 26662
|
||||
};
|
||||
|
||||
enum BoTActions
|
||||
{
|
||||
// Halfus Wyrmbreaker
|
||||
@@ -183,7 +188,7 @@ enum BoTActions
|
||||
ACTION_TALK_ASCENDANT_COUNCIL_INTRO_1 = 3,
|
||||
ACTION_TALK_ASCENDANT_COUNCIL_INTRO_2 = 4,
|
||||
ACTION_TALK_ASCENDANT_COUNCIL_INTRO_3 = 5,
|
||||
ACTION_TALK_CHOGALL_INTRO = 6,
|
||||
ACTION_TALK_CHOGALL_INTRO = 6
|
||||
};
|
||||
|
||||
enum BoTEvents
|
||||
|
||||
@@ -131,6 +131,7 @@ enum Events
|
||||
EVENT_CHECK_BLOOD_OF_THE_OLD_GOD_BUFF,
|
||||
EVENT_DARKENED_CREATIONS,
|
||||
EVENT_SUMMON_SPIKED_TENTACLE,
|
||||
EVENT_BERSERK,
|
||||
|
||||
// Corrupting Adherent / Blood of the Old God
|
||||
EVENT_ENGAGE_PLAYERS,
|
||||
@@ -310,6 +311,7 @@ struct boss_chogall : public BossAI
|
||||
events.ScheduleEvent(EVENT_SHADOWS_ORDERS, 20s + 800ms, 0, PHASE_1);
|
||||
events.ScheduleEvent(EVENT_SUMMON_CORRUPTING_ADHERENT, 2min + 4s, 0, PHASE_1);
|
||||
events.ScheduleEvent(EVENT_CONVERSION, 11s, 0, PHASE_1);
|
||||
events.ScheduleEvent(EVENT_BERSERK, 10min);
|
||||
|
||||
if (instance->GetData(DATA_FULL_HEROIC_ID) && IsHeroic())
|
||||
_allowDeath = false;
|
||||
@@ -538,6 +540,9 @@ struct boss_chogall : public BossAI
|
||||
DoCastAOE(SPELL_SUMMON_SPIKED_TENTACLE_TRIGGER);
|
||||
events.Repeat(20s);
|
||||
break;
|
||||
case EVENT_BERSERK:
|
||||
DoCastSelf(SPELL_BERSERK, true);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -64,6 +64,7 @@ enum Events
|
||||
EVENT_SHADOW_NOVA = 1,
|
||||
EVENT_FURIOUS_ROAR,
|
||||
EVENT_RESET_ACHIEVEMT,
|
||||
EVENT_BERSERK,
|
||||
|
||||
// Proto-Behemoth
|
||||
EVENT_FIREBALL,
|
||||
@@ -185,6 +186,7 @@ class boss_halfus_wyrmbreaker : public CreatureScript
|
||||
_JustEngagedWith();
|
||||
Talk(SAY_AGGRO);
|
||||
instance->SendEncounterUnit(ENCOUNTER_FRAME_ENGAGE, me);
|
||||
events.ScheduleEvent(EVENT_BERSERK, 10min);
|
||||
|
||||
if (Creature* protoBehemoth = instance->GetCreature(DATA_PROTO_BEHEMOTH))
|
||||
protoBehemoth->AI()->DoZoneInCombat();
|
||||
@@ -336,6 +338,9 @@ class boss_halfus_wyrmbreaker : public CreatureScript
|
||||
case EVENT_RESET_ACHIEVEMT:
|
||||
_theOnlyEscapeAchievementState = NOT_STARTED;
|
||||
break;
|
||||
case EVENT_BERSERK:
|
||||
DoCastSelf(SPELL_BERSERK, true);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -115,6 +115,7 @@ enum Events
|
||||
EVENT_LAND,
|
||||
EVENT_ATTACK_PLAYERS,
|
||||
EVENT_RESPOND_TO_SIBLING,
|
||||
EVENT_BERSERK,
|
||||
|
||||
// Theralion
|
||||
EVENT_TWILIGHT_BLAST,
|
||||
@@ -245,6 +246,7 @@ class boss_theralion : public CreatureScript
|
||||
{
|
||||
_JustEngagedWith();
|
||||
instance->SendEncounterUnit(ENCOUNTER_FRAME_ENGAGE, me);
|
||||
events.ScheduleEvent(EVENT_BERSERK, 10min);
|
||||
|
||||
if (Creature* valiona = instance->GetCreature(DATA_VALIONA))
|
||||
valiona->AI()->AttackStart(who);
|
||||
@@ -445,6 +447,9 @@ class boss_theralion : public CreatureScript
|
||||
Talk(SAY_ANNOUNCE_ENGULFING_MAGIC);
|
||||
events.Repeat(Seconds(40));
|
||||
break;
|
||||
case EVENT_BERSERK:
|
||||
DoCastSelf(SPELL_BERSERK, true);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
@@ -497,6 +502,7 @@ class boss_valiona : public CreatureScript
|
||||
events.SetPhase(PHASE_GROUND);
|
||||
events.ScheduleEvent(EVENT_BLACKOUT, Seconds(10) + Milliseconds(500));
|
||||
events.ScheduleEvent(EVENT_DEVOURING_FLAMES, Seconds(25));
|
||||
events.ScheduleEvent(EVENT_BERSERK, 10min);
|
||||
|
||||
if (IsHeroic())
|
||||
DoCastSelf(SPELL_TWILIGHT_SHIFT, true);
|
||||
@@ -779,6 +785,9 @@ class boss_valiona : public CreatureScript
|
||||
if (Unit* target = me->GetVictim())
|
||||
AttackStart(target);
|
||||
break;
|
||||
case EVENT_BERSERK:
|
||||
DoCastSelf(SPELL_BERSERK, true);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user