From 5126c0ad8ba2ba18866226ad7829f4301c90d4b6 Mon Sep 17 00:00:00 2001 From: Gacko Date: Sun, 11 Nov 2012 18:43:04 +0100 Subject: Core/DB: Utgarde Keep - Proto Drake --- .../Northrend/UtgardeKeep/UtgardeKeep/utgarde_keep.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'src/server/scripts') diff --git a/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/utgarde_keep.cpp b/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/utgarde_keep.cpp index 885cf410032..a982032e0ee 100644 --- a/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/utgarde_keep.cpp +++ b/src/server/scripts/Northrend/UtgardeKeep/UtgardeKeep/utgarde_keep.cpp @@ -246,6 +246,8 @@ enum EnslavedProtoDrake SPELL_REND = 43931, SPELL_FLAME_BREATH = 50653, SPELL_KNOCK_AWAY = 49722, + + POINT_LAST = 5, }; const Position protodrakeCheckPos = { 206.24f, -190.28f, 200.11f }; @@ -270,11 +272,20 @@ public: _events.ScheduleEvent(EVENT_KNOCKAWAY, urand(3500, 6000)); } + void MovementInform(uint32 type, uint32 id) + { + if (type == WAYPOINT_MOTION_TYPE && id == POINT_LAST) + { + me->RemoveByteFlag(UNIT_FIELD_BYTES_1, 3, UNIT_BYTE1_FLAG_ALWAYS_STAND | UNIT_BYTE1_FLAG_HOVER); + } + } + void SetData(uint32 type, uint32 data) { if (type == TYPE_PROTODRAKE_AT && data == DATA_PROTODRAKE_MOVE && !_setData && me->GetDistance(protodrakeCheckPos) < 5.0f) { _setData = true; + me->SetByteFlag(UNIT_FIELD_BYTES_1, 3, UNIT_BYTE1_FLAG_ALWAYS_STAND | UNIT_BYTE1_FLAG_HOVER); me->GetMotionMaster()->MovePath(PATH_PROTODRAKE, false); } } -- cgit v1.2.3