aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2015-04-06 00:40:56 +0200
committerShauren <shauren.trinity@gmail.com>2015-04-06 00:40:56 +0200
commit01cc5d8c05bbf2180d4577974b0e39cea7aed876 (patch)
tree7d687916bec244b5da08f1bf1698b64f16e9809f /src
parent38fcea46dad9445be791777be718619624934319 (diff)
Core/PacketIO: Updated and enabled SMSG_SET_VEHICLE_REC_ID and SMSG_ON_CANCEL_EXPECTED_RIDE_VEHICLE_AURA
* Implemented SMSG_MOVE_SET_VEHICLE_REC_ID and CMSG_MOVE_SET_VEHICLE_REC_ID_ACK
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Entities/Creature/Creature.cpp4
-rw-r--r--src/server/game/Entities/Player/Player.cpp4
-rw-r--r--src/server/game/Entities/Unit/Unit.cpp42
-rw-r--r--src/server/game/Entities/Unit/Unit.h5
-rw-r--r--src/server/game/Entities/Vehicle/Vehicle.h4
-rw-r--r--src/server/game/Handlers/VehicleHandler.cpp6
-rw-r--r--src/server/game/Server/Packets/VehiclePackets.cpp41
-rw-r--r--src/server/game/Server/Packets/VehiclePackets.h73
-rw-r--r--src/server/game/Server/Protocol/Opcodes.cpp9
-rw-r--r--src/server/game/Server/WorldSession.h6
-rw-r--r--src/server/game/Spells/Auras/SpellAuraEffects.cpp5
-rw-r--r--src/server/scripts/Northrend/IcecrownCitadel/boss_icecrown_gunship_battle.cpp6
12 files changed, 168 insertions, 37 deletions
diff --git a/src/server/game/Entities/Creature/Creature.cpp b/src/server/game/Entities/Creature/Creature.cpp
index 5ee5e64a7b2..61be7790ba1 100644
--- a/src/server/game/Entities/Creature/Creature.cpp
+++ b/src/server/game/Entities/Creature/Creature.cpp
@@ -1012,7 +1012,7 @@ void Creature::SaveToDB(uint32 mapid, uint32 spawnMask, uint32 phaseMask)
data.npcflag = npcflag;
data.unit_flags = unit_flags;
data.dynamicflags = dynamicflags;
-
+
data.phaseid = GetDBPhase() > 0 ? GetDBPhase() : 0;
data.phaseGroup = GetDBPhase() < 0 ? abs(GetDBPhase()) : 0;
@@ -1220,7 +1220,7 @@ bool Creature::CreateFromProto(ObjectGuid::LowType guidlow, uint32 entry, Creatu
}
if (vehId)
- CreateVehicleKit(vehId, entry);
+ CreateVehicleKit(vehId, entry, true);
return true;
}
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp
index f2f0bc0f5a0..7e49ddd007d 100644
--- a/src/server/game/Entities/Player/Player.cpp
+++ b/src/server/game/Entities/Player/Player.cpp
@@ -97,6 +97,7 @@
#include "QuestPackets.h"
#include "LootPackets.h"
#include "TradePackets.h"
+#include "VehiclePackets.h"
#define ZONE_UPDATE_INTERVAL (1*IN_MILLISECONDS)
@@ -20298,8 +20299,7 @@ bool Player::RemoveMItem(ObjectGuid::LowType id)
void Player::SendOnCancelExpectedVehicleRideAura()
{
- WorldPacket data(SMSG_ON_CANCEL_EXPECTED_RIDE_VEHICLE_AURA, 0);
- GetSession()->SendPacket(&data);
+ GetSession()->SendPacket(WorldPackets::Vehicle::OnCancelExpectedRideVehicleAura().Write());
}
void Player::PetSpellInitialize()
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp
index f0e4907a93a..6a17f4f34c8 100644
--- a/src/server/game/Entities/Unit/Unit.cpp
+++ b/src/server/game/Entities/Unit/Unit.cpp
@@ -67,6 +67,7 @@
#include "MovementPackets.h"
#include "CombatPackets.h"
#include "CombatLogPackets.h"
+#include "VehiclePackets.h"
#include <cmath>
@@ -9546,12 +9547,6 @@ void Unit::Mount(uint32 mount, uint32 VehicleId, uint32 creatureEntry)
{
if (CreateVehicleKit(VehicleId, creatureEntry))
{
- // Send others that we now have a vehicle
- WorldPacket data(SMSG_SET_VEHICLE_REC_ID, GetPackGUID().size() + 4);
- data << GetPackGUID();
- data << uint32(VehicleId);
- SendMessageToSet(&data, true);
-
player->SendOnCancelExpectedVehicleRideAura();
// mounts can also have accessories
@@ -9595,11 +9590,6 @@ void Unit::Dismount()
// dismount as a vehicle
if (GetTypeId() == TYPEID_PLAYER && GetVehicleKit())
{
- // Send other players that we are no longer a vehicle
- data.Initialize(SMSG_SET_VEHICLE_REC_ID, 8 + 4);
- data << GetPackGUID();
- data << uint32(0);
- ToPlayer()->SendMessageToSet(&data, true);
// Remove vehicle from player
RemoveVehicleKit();
}
@@ -11585,7 +11575,7 @@ void Unit::RemoveFromWorld()
{
m_duringRemoveFromWorld = true;
if (IsVehicle())
- RemoveVehicleKit();
+ RemoveVehicleKit(true);
RemoveCharmAuras();
RemoveBindSightAuras();
@@ -14163,7 +14153,7 @@ Unit* Unit::GetRedirectThreatTarget()
return !_redirectThreadInfo.GetTargetGUID().IsEmpty() ? ObjectAccessor::GetUnit(*this, _redirectThreadInfo.GetTargetGUID()) : NULL;
}
-bool Unit::CreateVehicleKit(uint32 id, uint32 creatureEntry)
+bool Unit::CreateVehicleKit(uint32 id, uint32 creatureEntry, bool loading /*= false*/)
{
VehicleEntry const* vehInfo = sVehicleStore.LookupEntry(id);
if (!vehInfo)
@@ -14172,14 +14162,21 @@ bool Unit::CreateVehicleKit(uint32 id, uint32 creatureEntry)
m_vehicleKit = new Vehicle(this, vehInfo, creatureEntry);
m_updateFlag |= UPDATEFLAG_VEHICLE;
m_unitTypeMask |= UNIT_MASK_VEHICLE;
+
+ if (!loading)
+ SendSetVehicleRecId(id);
+
return true;
}
-void Unit::RemoveVehicleKit()
+void Unit::RemoveVehicleKit(bool onRemoveFromWorld /*= false*/)
{
if (!m_vehicleKit)
return;
+ if (!onRemoveFromWorld)
+ SendSetVehicleRecId(0);
+
m_vehicleKit->Uninstall();
delete m_vehicleKit;
@@ -15972,6 +15969,23 @@ bool Unit::SetHover(bool enable, bool packetOnly /*= false*/)
return true;
}
+void Unit::SendSetVehicleRecId(uint32 vehicleId)
+{
+ if (Player* player = ToPlayer())
+ {
+ WorldPackets::Vehicle::MoveSetVehicleRecID moveSetVehicleRec;
+ moveSetVehicleRec.MoverGUID = GetGUID();
+ moveSetVehicleRec.SequenceIndex = m_movementCounter++;
+ moveSetVehicleRec.VehicleRecID = vehicleId;
+ player->SendDirectMessage(moveSetVehicleRec.Write());
+ }
+
+ WorldPackets::Vehicle::SetVehicleRecID setVehicleRec;
+ setVehicleRec.VehicleGUID = GetGUID();
+ setVehicleRec.VehicleRecID = vehicleId;
+ SendMessageToSet(setVehicleRec.Write(), true);
+}
+
void Unit::SendSetPlayHoverAnim(bool enable)
{
ObjectGuid guid = GetGUID();
diff --git a/src/server/game/Entities/Unit/Unit.h b/src/server/game/Entities/Unit/Unit.h
index b009fd7a0a6..87254d230e6 100644
--- a/src/server/game/Entities/Unit/Unit.h
+++ b/src/server/game/Entities/Unit/Unit.h
@@ -1661,6 +1661,7 @@ class Unit : public WorldObject
bool SetWaterWalking(bool enable, bool packetOnly = false);
bool SetFeatherFall(bool enable, bool packetOnly = false);
bool SetHover(bool enable, bool packetOnly = false);
+ void SendSetVehicleRecId(uint32 vehicleId);
void SetInFront(WorldObject const* target);
void SetFacingTo(float ori);
@@ -2135,8 +2136,8 @@ class Unit : public WorldObject
friend class VehicleJoinEvent;
bool IsAIEnabled, NeedChangeAI;
ObjectGuid LastCharmerGUID;
- bool CreateVehicleKit(uint32 id, uint32 creatureEntry);
- void RemoveVehicleKit();
+ bool CreateVehicleKit(uint32 id, uint32 creatureEntry, bool loading = false);
+ void RemoveVehicleKit(bool onRemoveFromWorld = false);
Vehicle* GetVehicleKit()const { return m_vehicleKit; }
Vehicle* GetVehicle() const { return m_vehicle; }
void SetVehicle(Vehicle* vehicle) { m_vehicle = vehicle; }
diff --git a/src/server/game/Entities/Vehicle/Vehicle.h b/src/server/game/Entities/Vehicle/Vehicle.h
index edec4ea161c..a08827cf9a9 100644
--- a/src/server/game/Entities/Vehicle/Vehicle.h
+++ b/src/server/game/Entities/Vehicle/Vehicle.h
@@ -32,10 +32,10 @@ class VehicleJoinEvent;
class Vehicle : public TransportBase
{
protected:
- friend bool Unit::CreateVehicleKit(uint32 id, uint32 creatureEntry);
+ friend bool Unit::CreateVehicleKit(uint32 id, uint32 creatureEntry, bool);
Vehicle(Unit* unit, VehicleEntry const* vehInfo, uint32 creatureEntry);
- friend void Unit::RemoveVehicleKit();
+ friend void Unit::RemoveVehicleKit(bool);
~Vehicle();
public:
diff --git a/src/server/game/Handlers/VehicleHandler.cpp b/src/server/game/Handlers/VehicleHandler.cpp
index 54d574f31c4..475aabe01d0 100644
--- a/src/server/game/Handlers/VehicleHandler.cpp
+++ b/src/server/game/Handlers/VehicleHandler.cpp
@@ -22,6 +22,7 @@
#include "Player.h"
#include "Log.h"
#include "ObjectAccessor.h"
+#include "VehiclePackets.h"
void WorldSession::HandleDismissControlledVehicle(WorldPacket &recvData)
{
@@ -188,3 +189,8 @@ void WorldSession::HandleRequestVehicleExit(WorldPacket& /*recvData*/)
}
}
}
+
+void WorldSession::HandleMoveSetVehicleRecAck(WorldPackets::Vehicle::MoveSetVehicleRecIdAck& setVehicleRecIdAck)
+{
+ GetPlayer()->ValidateMovementInfo(&setVehicleRecIdAck.Data.movementInfo);
+}
diff --git a/src/server/game/Server/Packets/VehiclePackets.cpp b/src/server/game/Server/Packets/VehiclePackets.cpp
new file mode 100644
index 00000000000..1118b440697
--- /dev/null
+++ b/src/server/game/Server/Packets/VehiclePackets.cpp
@@ -0,0 +1,41 @@
+/*
+ * Copyright (C) 2008-2015 TrinityCore <http://www.trinitycore.org/>
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation; either version 2 of the License, or (at your
+ * option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#include "VehiclePackets.h"
+
+WorldPacket const* WorldPackets::Vehicle::MoveSetVehicleRecID::Write()
+{
+ _worldPacket << MoverGUID;
+ _worldPacket << uint32(SequenceIndex);
+ _worldPacket << int32(VehicleRecID);
+
+ return &_worldPacket;
+}
+
+void WorldPackets::Vehicle::MoveSetVehicleRecIdAck::Read()
+{
+ _worldPacket >> Data;
+ _worldPacket >> VehicleRecID;
+}
+
+WorldPacket const* WorldPackets::Vehicle::SetVehicleRecID::Write()
+{
+ _worldPacket << VehicleGUID;
+ _worldPacket << int32(VehicleRecID);
+
+ return &_worldPacket;
+}
diff --git a/src/server/game/Server/Packets/VehiclePackets.h b/src/server/game/Server/Packets/VehiclePackets.h
new file mode 100644
index 00000000000..72206331720
--- /dev/null
+++ b/src/server/game/Server/Packets/VehiclePackets.h
@@ -0,0 +1,73 @@
+/*
+ * Copyright (C) 2008-2015 TrinityCore <http://www.trinitycore.org/>
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the
+ * Free Software Foundation; either version 2 of the License, or (at your
+ * option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+#ifndef VehiclePackets_h__
+#define VehiclePackets_h__
+
+#include "Packet.h"
+#include "MovementPackets.h"
+
+namespace WorldPackets
+{
+ namespace Vehicle
+ {
+
+ class MoveSetVehicleRecID final : public ServerPacket
+ {
+ public:
+ MoveSetVehicleRecID() : ServerPacket(SMSG_MOVE_SET_VEHICLE_REC_ID) { }
+
+ WorldPacket const* Write() override;
+
+ ObjectGuid MoverGUID;
+ uint32 SequenceIndex = 0;
+ int32 VehicleRecID = 0;
+ };
+
+ class MoveSetVehicleRecIdAck final : public ClientPacket
+ {
+ public:
+ MoveSetVehicleRecIdAck(WorldPacket&& packet) : ClientPacket(CMSG_MOVE_SET_VEHICLE_REC_ID_ACK, std::move(packet)) { }
+
+ void Read() override;
+
+ WorldPackets::Movement::MovementAck Data;
+ int32 VehicleRecID = 0;
+ };
+
+ class SetVehicleRecID final : public ServerPacket
+ {
+ public:
+ SetVehicleRecID() : ServerPacket(SMSG_SET_VEHICLE_REC_ID) { }
+
+ WorldPacket const* Write() override;
+
+ ObjectGuid VehicleGUID;
+ int32 VehicleRecID = 0;
+ };
+
+ class OnCancelExpectedRideVehicleAura final : public ServerPacket
+ {
+ public:
+ OnCancelExpectedRideVehicleAura() : ServerPacket(SMSG_ON_CANCEL_EXPECTED_RIDE_VEHICLE_AURA, 0) { }
+
+ WorldPacket const* Write() override { return &_worldPacket; }
+ };
+ }
+}
+
+#endif // VehiclePackets_h__
diff --git a/src/server/game/Server/Protocol/Opcodes.cpp b/src/server/game/Server/Protocol/Opcodes.cpp
index b09bcc64d4c..01a31a313c3 100644
--- a/src/server/game/Server/Protocol/Opcodes.cpp
+++ b/src/server/game/Server/Protocol/Opcodes.cpp
@@ -46,6 +46,7 @@
#include "Packets/TalentPackets.h"
#include "Packets/TradePackets.h"
#include "Packets/TicketPackets.h"
+#include "Packets/VehiclePackets.h"
#include "Packets/WhoPackets.h"
template<class PacketClass, void(WorldSession::*HandlerFunction)(PacketClass&)>
@@ -547,7 +548,7 @@ void OpcodeTable::Initialize()
DEFINE_HANDLER(CMSG_MOVE_SET_PITCH, STATUS_LOGGEDIN, PROCESS_THREADSAFE, WorldPackets::Movement::ClientPlayerMovement, &WorldSession::HandleMovementOpcodes);
DEFINE_OPCODE_HANDLER_OLD(CMSG_MOVE_SET_RELATIVE_POSITION, STATUS_UNHANDLED, PROCESS_THREADSAFE, &WorldSession::Handle_NULL );
DEFINE_HANDLER(CMSG_MOVE_SET_RUN_MODE, STATUS_LOGGEDIN, PROCESS_THREADSAFE, WorldPackets::Movement::ClientPlayerMovement, &WorldSession::HandleMovementOpcodes);
- DEFINE_OPCODE_HANDLER_OLD(CMSG_MOVE_SET_VEHICLE_REC_ID_ACK, STATUS_UNHANDLED, PROCESS_THREADSAFE, &WorldSession::Handle_NULL );
+ DEFINE_HANDLER(CMSG_MOVE_SET_VEHICLE_REC_ID_ACK, STATUS_LOGGEDIN, PROCESS_THREADSAFE, WorldPackets::Vehicle::MoveSetVehicleRecIdAck, &WorldSession::HandleMoveSetVehicleRecAck);
DEFINE_HANDLER(CMSG_MOVE_SET_WALK_MODE, STATUS_LOGGEDIN, PROCESS_THREADSAFE, WorldPackets::Movement::ClientPlayerMovement, &WorldSession::HandleMovementOpcodes);
DEFINE_OPCODE_HANDLER_OLD(CMSG_MOVE_SPLINE_DONE, STATUS_UNHANDLED, PROCESS_THREADSAFE, &WorldSession::HandleMoveSplineDoneOpcode );
DEFINE_HANDLER(CMSG_MOVE_START_ASCEND, STATUS_LOGGEDIN, PROCESS_THREADSAFE, WorldPackets::Movement::ClientPlayerMovement, &WorldSession::HandleMovementOpcodes);
@@ -1349,7 +1350,7 @@ void OpcodeTable::Initialize()
DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_SWIM_BACK_SPEED, STATUS_NEVER, CONNECTION_TYPE_INSTANCE);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_SWIM_SPEED, STATUS_NEVER, CONNECTION_TYPE_INSTANCE);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_TURN_RATE, STATUS_NEVER, CONNECTION_TYPE_INSTANCE);
- DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_VEHICLE_REC_ID, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE);
+ DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_VEHICLE_REC_ID, STATUS_NEVER, CONNECTION_TYPE_INSTANCE);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_WALK_SPEED, STATUS_NEVER, CONNECTION_TYPE_INSTANCE);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SET_WATER_WALK, STATUS_NEVER, CONNECTION_TYPE_INSTANCE);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_MOVE_SKIP_TIME, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE);
@@ -1410,7 +1411,7 @@ void OpcodeTable::Initialize()
DEFINE_SERVER_OPCODE_HANDLER(SMSG_NOTIFY_MONEY, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_NOTIFY_RECEIVED_MAIL, STATUS_NEVER, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_OFFER_PETITION_ERROR, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
- DEFINE_SERVER_OPCODE_HANDLER(SMSG_ON_CANCEL_EXPECTED_RIDE_VEHICLE_AURA, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
+ DEFINE_SERVER_OPCODE_HANDLER(SMSG_ON_CANCEL_EXPECTED_RIDE_VEHICLE_AURA, STATUS_NEVER, CONNECTION_TYPE_INSTANCE);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_ON_MONSTER_MOVE, STATUS_NEVER, CONNECTION_TYPE_INSTANCE);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_OPEN_CONTAINER, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_OPEN_LFG_DUNGEON_FINDER, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
@@ -1615,7 +1616,7 @@ void OpcodeTable::Initialize()
DEFINE_SERVER_OPCODE_HANDLER(SMSG_SET_SPELL_CHARGES, STATUS_UNHANDLED, CONNECTION_TYPE_INSTANCE);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_SET_TASK_COMPLETE, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_SET_TIME_ZONE_INFORMATION, STATUS_NEVER, CONNECTION_TYPE_REALM);
- DEFINE_SERVER_OPCODE_HANDLER(SMSG_SET_VEHICLE_REC_ID, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
+ DEFINE_SERVER_OPCODE_HANDLER(SMSG_SET_VEHICLE_REC_ID, STATUS_NEVER, CONNECTION_TYPE_INSTANCE);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_SHOW_BANK, STATUS_NEVER, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_SHOW_MAILBOX, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
DEFINE_SERVER_OPCODE_HANDLER(SMSG_SHOW_NEUTRAL_PLAYER_FACTION_SELECT_UI, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
diff --git a/src/server/game/Server/WorldSession.h b/src/server/game/Server/WorldSession.h
index 9067ebe491c..c02c3d412aa 100644
--- a/src/server/game/Server/WorldSession.h
+++ b/src/server/game/Server/WorldSession.h
@@ -414,6 +414,11 @@ namespace WorldPackets
class TradeStatus;
}
+ namespace Vehicle
+ {
+ class MoveSetVehicleRecIdAck;
+ }
+
namespace Who
{
class WhoIsRequest;
@@ -942,6 +947,7 @@ class WorldSession
void HandleSetActiveMoverOpcode(WorldPackets::Movement::SetActiveMover& packet);
void HandleDismissControlledVehicle(WorldPacket& recvData);
void HandleRequestVehicleExit(WorldPacket& recvData);
+ void HandleMoveSetVehicleRecAck(WorldPackets::Vehicle::MoveSetVehicleRecIdAck& setVehicleRecIdAck);
void HandleChangeSeatsOnControlledVehicle(WorldPacket& recvData);
void HandleMoveTimeSkippedOpcode(WorldPacket& recvData);
diff --git a/src/server/game/Spells/Auras/SpellAuraEffects.cpp b/src/server/game/Spells/Auras/SpellAuraEffects.cpp
index 83e9dcbc2ef..e1dd5505eab 100644
--- a/src/server/game/Spells/Auras/SpellAuraEffects.cpp
+++ b/src/server/game/Spells/Auras/SpellAuraEffects.cpp
@@ -5415,11 +5415,6 @@ void AuraEffect::HandleAuraSetVehicle(AuraApplication const* aurApp, uint8 mode,
if (target->GetTypeId() != TYPEID_PLAYER)
return;
- WorldPacket data(SMSG_SET_VEHICLE_REC_ID, target->GetPackGUID().size() + 4);
- data << target->GetPackGUID();
- data << uint32(apply ? vehicleId : 0);
- target->SendMessageToSet(&data, true);
-
if (apply)
target->ToPlayer()->SendOnCancelExpectedVehicleRideAura();
}
diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_icecrown_gunship_battle.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_icecrown_gunship_battle.cpp
index 3150c089108..432a61b6279 100644
--- a/src/server/scripts/Northrend/IcecrownCitadel/boss_icecrown_gunship_battle.cpp
+++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_icecrown_gunship_battle.cpp
@@ -745,12 +745,6 @@ class npc_gunship : public CreatureScript
if (isVictory)
{
cannon->CastSpell(cannon, SPELL_EJECT_ALL_PASSENGERS_BELOW_ZERO, TRIGGERED_FULL_MASK);
-
- WorldPacket data(SMSG_SET_VEHICLE_REC_ID, cannon->GetPackGUID().size() + 4);
- data << cannon->GetPackGUID();
- data << uint32(0);
- cannon->SendMessageToSet(&data, true);
-
cannon->RemoveVehicleKit();
}
else