diff options
author | DanVS <33371360+DanVS@users.noreply.github.com> | 2018-08-22 14:25:36 +0000 |
---|---|---|
committer | jackpoz <giacomopoz@gmail.com> | 2018-08-22 16:25:36 +0200 |
commit | afc25d22ef2c08d55e28e41778c6867dd2b2577d (patch) | |
tree | 211b56c469185b3a2e903c7c44047fcd5ad21e3b | |
parent | c4166dfd006e3516d0e6584c2075845ac0e96d9f (diff) |
Scripts/Scarlet Enclave: Death Comes From On High
-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 f4facc19d0e..95e6a925ddd 100644 --- a/src/server/scripts/EasternKingdoms/ScarletEnclave/chapter1.cpp +++ b/src/server/scripts/EasternKingdoms/ScarletEnclave/chapter1.cpp @@ -377,15 +377,17 @@ class npc_eye_of_acherus : public CreatureScript npc_eye_of_acherusAI(Creature* creature) : ScriptedAI(creature) { me->SetDisplayId(me->GetCreatureTemplate()->Modelid1); - if (Player* owner = me->GetCharmerOrOwner()->ToPlayer()) - 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 { } @@ -400,9 +402,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) @@ -422,7 +424,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()) @@ -434,14 +435,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); } } |