aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMachiavelli <machiavelli.trinity@gmail.com>2011-02-23 04:08:11 +0100
committerMachiavelli <machiavelli.trinity@gmail.com>2011-02-23 04:08:11 +0100
commita6da435b848d76fb8c685d05acade98893259320 (patch)
tree050a51231a822bd0edd541b3d6e572ba94565535
parent867f6d3513a2f8a8f6acc6b4006241ad7ade9378 (diff)
Core/Vehicles: Also remove MOVEMENTFLAG_ROOT on ExitVehicle (thanks to Anubisss), and slight refactoring of code.
-rwxr-xr-xsrc/server/game/Entities/Unit/Unit.cpp7
-rwxr-xr-xsrc/server/game/Entities/Vehicle/Vehicle.cpp7
2 files changed, 7 insertions, 7 deletions
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp
index 81f048771c9..521ee929484 100755
--- a/src/server/game/Entities/Unit/Unit.cpp
+++ b/src/server/game/Entities/Unit/Unit.cpp
@@ -16535,13 +16535,6 @@ void Unit::ExitVehicle()
SetControlled(false, UNIT_STAT_ROOT);
- RemoveUnitMovementFlag(MOVEMENTFLAG_ONTRANSPORT | MOVEMENTFLAG_ROOT);
- m_movementInfo.t_pos.Relocate(0, 0, 0, 0);
- m_movementInfo.t_time = 0;
- m_movementInfo.t_seat = 0;
-
- Relocate(vehicle->GetBase());
-
//Send leave vehicle, not correct
if (GetTypeId() == TYPEID_PLAYER)
{
diff --git a/src/server/game/Entities/Vehicle/Vehicle.cpp b/src/server/game/Entities/Vehicle/Vehicle.cpp
index f391967f6a1..b12af97531d 100755
--- a/src/server/game/Entities/Vehicle/Vehicle.cpp
+++ b/src/server/game/Entities/Vehicle/Vehicle.cpp
@@ -437,6 +437,13 @@ void Vehicle::RemovePassenger(Unit *unit)
data << uint32(2); // Counter
me->SendMessageToSet(&data, false);
}
+
+ unit->RemoveUnitMovementFlag(MOVEMENTFLAG_ONTRANSPORT);
+ unit->m_movementInfo.t_pos.Relocate(0, 0, 0, 0);
+ unit->m_movementInfo.t_time = 0;
+ unit->m_movementInfo.t_seat = 0;
+
+ unit->Relocate(GetBase());
}
if (me->GetTypeId() == TYPEID_UNIT && me->ToCreature()->IsAIEnabled)