diff options
-rw-r--r-- | src/server/game/AI/CoreAI/CombatAI.cpp | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/src/server/game/AI/CoreAI/CombatAI.cpp b/src/server/game/AI/CoreAI/CombatAI.cpp index e08bd65c091..3ad52aedb34 100644 --- a/src/server/game/AI/CoreAI/CombatAI.cpp +++ b/src/server/game/AI/CoreAI/CombatAI.cpp @@ -330,18 +330,19 @@ void VehicleAI::CheckConditions(const uint32 diff) { if (!conditions.empty()) { - for (SeatMap::iterator itr = me->GetVehicleKit()->Seats.begin(); itr != me->GetVehicleKit()->Seats.end(); ++itr) - if (Unit* passenger = ObjectAccessor::GetUnit(*me, itr->second.Passenger.Guid)) - { - if (Player* player = passenger->ToPlayer()) + if( Vehicle* vehicleKit = me->GetVehicleKit()) + for (SeatMap::iterator itr = vehicleKit->Seats.begin(); itr != vehicleKit->Seats.end(); ++itr) + if (Unit* passenger = ObjectAccessor::GetUnit(*me, itr->second.Passenger.Guid)) { - if (!sConditionMgr->IsObjectMeetToConditions(player, me, conditions)) + if (Player* player = passenger->ToPlayer()) { - player->ExitVehicle(); - return;//check other pessanger in next tick + if (!sConditionMgr->IsObjectMeetToConditions(player, me, conditions)) + { + player->ExitVehicle(); + return;//check other pessanger in next tick + } } } - } } m_ConditionsTimer = VEHICLE_CONDITION_CHECK_TIME; } |