mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-16 07:30:42 +01:00
Scripts/Black Temple: Some little fixes
- Fixed Reliquary of Souls ignoring boundary
- Fixed Maiev texts timer
- Fixed Shadow Prison hitting every single npc on black temple
Many thanks to Ovahlord
(cherry picked from commit 83e0a70ddc)
This commit is contained in:
@@ -0,0 +1,4 @@
|
||||
--
|
||||
DELETE FROM `conditions` WHERE `SourceEntry`= 40647 AND `SourceTypeOrReferenceId`= 13;
|
||||
INSERT INTO `conditions` (`SourceTypeOrReferenceId`, `SourceGroup`, `SourceEntry`, `SourceId`, `ElseGroup`, `ConditionTypeOrReference`, `ConditionTarget`, `ConditionValue1`, `ConditionValue2`, `ConditionValue3`, `NegativeCondition`, `ErrorType`, `ScriptName`, `Comment`) VALUES
|
||||
(13, 4, 40647, 0, 0, 31, 0, 3, 23089, 0, 0, 0, '', 'Shadow Prison - Target Akama');
|
||||
@@ -235,7 +235,8 @@ enum IllidanPhases
|
||||
PHASE_MINIONS,
|
||||
PHASE_2,
|
||||
PHASE_3,
|
||||
PHASE_4
|
||||
PHASE_4,
|
||||
PHASE_OUTRO
|
||||
};
|
||||
|
||||
enum IllidanSplineMovement
|
||||
@@ -1621,12 +1622,12 @@ struct npc_maiev : public ScriptedAI
|
||||
{
|
||||
npc_maiev(Creature* creature) : ScriptedAI(creature), _instance(creature->GetInstanceScript()), _canDown(true) { }
|
||||
|
||||
void Reset() override
|
||||
void JustAppeared() override
|
||||
{
|
||||
if (Creature* illidan = _instance->GetCreature(DATA_ILLIDAN_STORMRAGE))
|
||||
me->SetFacingToObject(illidan);
|
||||
me->SetReactState(REACT_PASSIVE);
|
||||
_events.SetPhase(PHASE_INTRO);
|
||||
_events.SetPhase(PHASE_OUTRO);
|
||||
_events.ScheduleEvent(EVENT_MAIEV_APPEAR, 1s);
|
||||
_events.ScheduleEvent(EVENT_MAIEV_EXCLAMATION, 2s);
|
||||
_events.ScheduleEvent(EVENT_MAIEV_JUSTICE_TEXT, 14s);
|
||||
@@ -1647,6 +1648,7 @@ struct npc_maiev : public ScriptedAI
|
||||
if (actionId == ACTION_START_OUTRO)
|
||||
{
|
||||
_events.Reset();
|
||||
_events.SetPhase(PHASE_OUTRO);
|
||||
me->SetReactState(REACT_PASSIVE);
|
||||
me->AttackStop();
|
||||
if (Creature* illidan = _instance->GetCreature(DATA_ILLIDAN_STORMRAGE))
|
||||
@@ -1671,7 +1673,7 @@ struct npc_maiev : public ScriptedAI
|
||||
|
||||
void UpdateAI(uint32 diff) override
|
||||
{
|
||||
if (!UpdateVictim() && !_events.IsInPhase(PHASE_INTRO))
|
||||
if (!_events.IsInPhase(PHASE_OUTRO) && !UpdateVictim())
|
||||
return;
|
||||
|
||||
if (me->HasUnitState(UNIT_STATE_CASTING))
|
||||
|
||||
@@ -656,6 +656,12 @@ struct npc_reliquary_combat_trigger : public ScriptedAI
|
||||
{
|
||||
SetCombatMovement(false);
|
||||
creature->m_SightDistance = 70.0f;
|
||||
SetBoundary(_instance->GetBossBoundary(DATA_RELIQUARY_OF_SOULS));
|
||||
}
|
||||
|
||||
bool CanAIAttack(Unit const* who) const override
|
||||
{
|
||||
return ScriptedAI::CanAIAttack(who) && IsInBoundary(who);
|
||||
}
|
||||
|
||||
void Reset() override
|
||||
|
||||
Reference in New Issue
Block a user