diff options
author | DanVS <33371360+DanVS@users.noreply.github.com> | 2018-08-22 14:25:36 +0000 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2021-10-22 21:38:42 +0200 |
commit | 1195e2cf1a8521f5ad2e2fa8f51ee98b3da8bb88 (patch) | |
tree | d1fc77fd3b9e52cb1b633fd3b6dfddc756d64edd /src | |
parent | 389791d497f3fa161eab72e012c98cdac6a06b75 (diff) |
Scripts/Scarlet Enclave: Death Comes From On High
(cherry picked from commit afc25d22ef2c08d55e28e41778c6867dd2b2577d)
Diffstat (limited to 'src')
-rw-r--r-- | src/server/scripts/EasternKingdoms/ScarletEnclave/chapter1.cpp | 22 |
1 files changed, 8 insertions, 14 deletions
diff --git a/src/server/scripts/EasternKingdoms/ScarletEnclave/chapter1.cpp b/src/server/scripts/EasternKingdoms/ScarletEnclave/chapter1.cpp index d94bf9c3ce5..95543c71159 100644 --- a/src/server/scripts/EasternKingdoms/ScarletEnclave/chapter1.cpp +++ b/src/server/scripts/EasternKingdoms/ScarletEnclave/chapter1.cpp @@ -381,17 +381,19 @@ class npc_eye_of_acherus : public CreatureScript { me->SetDisplayFromModel(0); if (Player* owner = me->GetCharmerOrOwner()->ToPlayer()) - { me->GetCharmInfo()->InitPossessCreateSpells(); - owner->SendAutoRepeatCancel(me); - } + DoCastSelf(SPELL_EYE_VISUAL); me->SetReactState(REACT_PASSIVE); + me->SetDisableGravity(true); + me->SetControlled(true, UNIT_STATE_ROOT); Movement::MoveSplineInit init(me); init.MoveTo(EyeOFAcherusFallPoint.GetPositionX(), EyeOFAcherusFallPoint.GetPositionY(), EyeOFAcherusFallPoint.GetPositionZ(), false); init.SetFall(); me->GetMotionMaster()->LaunchMoveSpline(std::move(init), POINT_EYE_FALL, MOTION_PRIORITY_NORMAL, POINT_MOTION_TYPE); + + _events.ScheduleEvent(EVENT_MOVE_START, 7s); } void OnCharmed(bool /*apply*/) override { } @@ -406,9 +408,9 @@ class npc_eye_of_acherus : public CreatureScript { case EVENT_MOVE_START: { - DoCast(me, SPELL_EYE_FLIGHT_BOOST); - + DoCastSelf(SPELL_EYE_FLIGHT_BOOST); me->SetControlled(false, UNIT_STATE_ROOT); + if (Player* owner = me->GetCharmerOrOwner()->ToPlayer()) { for (uint8 i = 0; i < MAX_MOVE_TYPE; ++i) @@ -428,7 +430,6 @@ class npc_eye_of_acherus : public CreatureScript { if (movementType == WAYPOINT_MOTION_TYPE && pointId == POINT_EYE_MOVE_END - 1) { - me->SetSheath(SHEATH_STATE_MELEE); me->RemoveAllAuras(); if (Player* owner = me->GetCharmerOrOwner()->ToPlayer()) @@ -440,14 +441,7 @@ class npc_eye_of_acherus : public CreatureScript Talk(TALK_CONTROL, owner); } me->SetDisableGravity(false); - DoCast(me, SPELL_EYE_FLIGHT); - } - - if (movementType == POINT_MOTION_TYPE && pointId == POINT_EYE_FALL) - { - me->SetDisableGravity(true); - me->SetControlled(true, UNIT_STATE_ROOT); - _events.ScheduleEvent(EVENT_MOVE_START, 5000); + DoCastSelf(SPELL_EYE_FLIGHT); } } |