diff --git a/Client/mods/deathmatch/logic/CClientVehicle.cpp b/Client/mods/deathmatch/logic/CClientVehicle.cpp index 06b7f25e22..a084a662ac 100644 --- a/Client/mods/deathmatch/logic/CClientVehicle.cpp +++ b/Client/mods/deathmatch/logic/CClientVehicle.cpp @@ -1068,32 +1068,35 @@ void CClientVehicle::SetModelBlocking(unsigned short usModel, unsigned char ucVa m_ucMaxPassengers = CClientVehicleManager::GetMaxPassengerCount(usModel); // Reset handling to fit the vehicle - ushort usHandlingModelID = usModel; - if (usHandlingModelID < 400 || usHandlingModelID > 611) - usHandlingModelID = m_pModelInfo->GetParentID(); + if (IsLocalEntity() || !(usModel < 400 || usModel > 611)) + { + ushort usHandlingModelID = usModel; + if (usHandlingModelID < 400 || usHandlingModelID > 611) + usHandlingModelID = m_pModelInfo->GetParentID(); - m_pOriginalHandlingEntry = g_pGame->GetHandlingManager()->GetOriginalHandlingData((eVehicleTypes)usHandlingModelID); - m_pHandlingEntry->Assign(m_pOriginalHandlingEntry); + m_pOriginalHandlingEntry = g_pGame->GetHandlingManager()->GetOriginalHandlingData((eVehicleTypes)usHandlingModelID); + m_pHandlingEntry->Assign(m_pOriginalHandlingEntry); - m_pOriginalFlyingHandlingEntry = g_pGame->GetHandlingManager()->GetOriginalFlyingHandlingData((eVehicleTypes)usHandlingModelID); - m_pFlyingHandlingEntry->Assign(m_pOriginalFlyingHandlingEntry); + m_pOriginalFlyingHandlingEntry = g_pGame->GetHandlingManager()->GetOriginalFlyingHandlingData((eVehicleTypes)usHandlingModelID); + m_pFlyingHandlingEntry->Assign(m_pOriginalFlyingHandlingEntry); - m_pOriginalBoatHandlingEntry = g_pGame->GetHandlingManager()->GetOriginalBoatHandlingData((eVehicleTypes)usHandlingModelID); - if (m_pOriginalBoatHandlingEntry) - { - if (!m_pBoatHandlingEntry) - m_pBoatHandlingEntry = g_pGame->GetHandlingManager()->CreateBoatHandlingData(); + m_pOriginalBoatHandlingEntry = g_pGame->GetHandlingManager()->GetOriginalBoatHandlingData((eVehicleTypes)usHandlingModelID); + if (m_pOriginalBoatHandlingEntry) + { + if (!m_pBoatHandlingEntry) + m_pBoatHandlingEntry = g_pGame->GetHandlingManager()->CreateBoatHandlingData(); - m_pBoatHandlingEntry->Assign(m_pOriginalBoatHandlingEntry); - } + m_pBoatHandlingEntry->Assign(m_pOriginalBoatHandlingEntry); + } - m_pOriginalBikeHandlingEntry = g_pGame->GetHandlingManager()->GetOriginalBikeHandlingData((eVehicleTypes)usHandlingModelID); - if (m_pOriginalBikeHandlingEntry) - { - if (!m_pBikeHandlingEntry) - m_pBikeHandlingEntry = g_pGame->GetHandlingManager()->CreateBikeHandlingData(); + m_pOriginalBikeHandlingEntry = g_pGame->GetHandlingManager()->GetOriginalBikeHandlingData((eVehicleTypes)usHandlingModelID); + if (m_pOriginalBikeHandlingEntry) + { + if (!m_pBikeHandlingEntry) + m_pBikeHandlingEntry = g_pGame->GetHandlingManager()->CreateBikeHandlingData(); - m_pBikeHandlingEntry->Assign(m_pOriginalBikeHandlingEntry); + m_pBikeHandlingEntry->Assign(m_pOriginalBikeHandlingEntry); + } } ApplyHandling();