Skip to content

Commit 6cc5d3a

Browse files
authored
Fix #2184: Client vehicle blocks entering to server vehicle (#2188)
* Update CClientPed.cpp * Renamed function and added comment
1 parent 104538d commit 6cc5d3a

File tree

2 files changed

+7
-3
lines changed

2 files changed

+7
-3
lines changed

Client/mods/deathmatch/logic/CClientPed.cpp

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1110,7 +1110,7 @@ CClientVehicle* CClientPed::GetRealOccupiedVehicle()
11101110
return NULL;
11111111
}
11121112

1113-
CClientVehicle* CClientPed::GetClosestVehicleInRange(bool bGetPositionFromClosestDoor, bool bCheckDriverDoor, bool bCheckPassengerDoors,
1113+
CClientVehicle* CClientPed::GetClosestEnterableVehicle(bool bGetPositionFromClosestDoor, bool bCheckDriverDoor, bool bCheckPassengerDoors,
11141114
bool bCheckStreamedOutVehicles, unsigned int* uiClosestDoor, CVector* pClosestDoorPosition,
11151115
float fWithinRange)
11161116
{
@@ -1144,6 +1144,10 @@ CClientVehicle* CClientPed::GetClosestVehicleInRange(bool bGetPositionFromCloses
11441144
for (; iter != listEnd; iter++)
11451145
{
11461146
pTempVehicle = *iter;
1147+
// Skip clientside vehicles as they are not enterable
1148+
if (pTempVehicle->IsLocalEntity())
1149+
continue;
1150+
11471151
CVehicle* pGameVehicle = pTempVehicle->GetGameVehicle();
11481152

11491153
if (!pGameVehicle && bGetPositionFromClosestDoor)
@@ -6470,7 +6474,7 @@ bool CClientPed::EnterVehicle(CClientVehicle* pVehicle, bool bPassenger)
64706474
if (!pVehicle)
64716475
{
64726476
// Find the closest vehicle and door
6473-
CClientVehicle* pClosestVehicle = GetClosestVehicleInRange(true, !bPassenger, bPassenger, false, &uiDoor, nullptr, 20.0f);
6477+
CClientVehicle* pClosestVehicle = GetClosestEnterableVehicle(true, !bPassenger, bPassenger, false, &uiDoor, nullptr, 20.0f);
64746478
if (pClosestVehicle)
64756479
{
64766480
pVehicle = pClosestVehicle;

Client/mods/deathmatch/logic/CClientPed.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -241,7 +241,7 @@ class CClientPed : public CClientStreamElement, public CAntiCheatModule
241241
CClientVehicle* GetOccupyingVehicle() { return m_pOccupyingVehicle; };
242242

243243
CClientVehicle* GetRealOccupiedVehicle();
244-
CClientVehicle* GetClosestVehicleInRange(bool bGetPositionFromClosestDoor, bool bCheckDriverDoor, bool bCheckPassengerDoors, bool bCheckStreamedOutVehicles,
244+
CClientVehicle* GetClosestEnterableVehicle(bool bGetPositionFromClosestDoor, bool bCheckDriverDoor, bool bCheckPassengerDoors, bool bCheckStreamedOutVehicles,
245245
unsigned int* uiClosestDoor = NULL, CVector* pClosestDoorPosition = NULL, float fWithinRange = 6000.0f);
246246
bool GetClosestDoor(CClientVehicle* pVehicle, bool bCheckDriverDoor, bool bCheckPassengerDoors, unsigned int& uiClosestDoor,
247247
CVector* pClosestDoorPosition = NULL);

0 commit comments

Comments
 (0)