From 7ac891717cee851a137c3e4c36955c7c020a15c9 Mon Sep 17 00:00:00 2001 From: Shauren Date: Sat, 19 Feb 2011 22:50:09 +0100 Subject: Core/Vehicles: Send proper GUID in SMSG_BREAK_TARGET packet when an unit enters vehicle --- src/server/game/Entities/Player/Player.cpp | 7 ------- src/server/game/Entities/Player/Player.h | 1 - src/server/game/Entities/Unit/Unit.cpp | 11 +++++++++-- src/server/game/Entities/Unit/Unit.h | 2 ++ 4 files changed, 11 insertions(+), 10 deletions(-) (limited to 'src') diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index 3227e69771a..e49c4d4e9ff 100755 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -24515,10 +24515,3 @@ void Player::_SaveInstanceTimeRestrictions(SQLTransaction& trans) trans->Append(stmt); } } - -void Player::SendClearFocus(Unit* target) -{ - WorldPacket data(SMSG_BREAK_TARGET, target->GetPackGUID().size()); - data.append(target->GetPackGUID()); - GetSession()->SendPacket(&data); -} diff --git a/src/server/game/Entities/Player/Player.h b/src/server/game/Entities/Player/Player.h index aacfe1a31ee..d14082cc864 100755 --- a/src/server/game/Entities/Player/Player.h +++ b/src/server/game/Entities/Player/Player.h @@ -2280,7 +2280,6 @@ class Player : public Unit, public GridObject void SendCinematicStart(uint32 CinematicSequenceId); void SendMovieStart(uint32 MovieId); - void SendClearFocus(Unit* target); /*********************************************************/ /*** INSTANCE SYSTEM ***/ diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index 36a63e4ff33..e5684729f6e 100755 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -16461,10 +16461,10 @@ void Unit::EnterVehicle(Vehicle *vehicle, int8 seatId, AuraApplication const * a { WorldPacket data(SMSG_ON_CANCEL_EXPECTED_RIDE_VEHICLE_AURA, 0); thisPlr->GetSession()->SendPacket(&data); - - thisPlr->SendClearFocus(vehicle->GetBase()); } + SendClearTarget(); + SetControlled(true, UNIT_STAT_ROOT); //movementInfo is set in AddPassenger //packets are sent in AddPassenger @@ -16843,6 +16843,13 @@ uint32 Unit::GetRemainingDotDamage(uint64 caster, uint32 spellId, uint8 effectIn return amount; } +void Unit::SendClearTarget() +{ + WorldPacket data(SMSG_BREAK_TARGET, GetPackGUID().size()); + data.append(GetPackGUID()); + SendMessageToSet(&data, false); +} + void CharmInfo::SetIsCommandAttack(bool val) { m_isCommandAttack = val; diff --git a/src/server/game/Entities/Unit/Unit.h b/src/server/game/Entities/Unit/Unit.h index 3e496fec526..e546af981a3 100755 --- a/src/server/game/Entities/Unit/Unit.h +++ b/src/server/game/Entities/Unit/Unit.h @@ -1507,6 +1507,8 @@ class Unit : public WorldObject void SendRemoveFromThreatListOpcode(HostileReference* pHostileReference); void SendThreatListUpdate(); + void SendClearTarget(); + void BuildHeartBeatMsg(WorldPacket *data) const; bool isAlive() const { return (m_deathState == ALIVE); }; -- cgit v1.2.3