Skip to content

Commit 1fcd732

Browse files
authored
Fix #3026 Changing vehicle model can cause network trouble (#3784)
1 parent 3333a11 commit 1fcd732

File tree

2 files changed

+10
-1
lines changed

2 files changed

+10
-1
lines changed

Client/mods/deathmatch/logic/CClientPed.cpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1394,6 +1394,10 @@ void CClientPed::WarpIntoVehicle(CClientVehicle* pVehicle, unsigned int uiSeat)
13941394
}
13951395
}
13961396

1397+
// Wrong seat or undefined passengers count?
1398+
if ((uiSeat > 0 && uiSeat > pVehicle->m_ucMaxPassengers) || (uiSeat > 0 && pVehicle->m_ucMaxPassengers == 255))
1399+
return;
1400+
13971401
// Transfer WaitingForGroundToLoad state to vehicle
13981402
if (m_bIsLocalPlayer)
13991403
{

Client/mods/deathmatch/logic/CClientVehicle.cpp

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2656,7 +2656,12 @@ void CClientVehicle::Create()
26562656
{
26572657
if (m_pPassengers[i])
26582658
{
2659-
m_pPassengers[i]->WarpIntoVehicle(this, i + 1);
2659+
// Undefined passengers count?
2660+
if (m_ucMaxPassengers != 255)
2661+
m_pPassengers[i]->WarpIntoVehicle(this, i + 1);
2662+
else
2663+
m_pPassengers[i]->SetWarpInToVehicleRequired(false);
2664+
26602665
if (m_pPassengers[i])
26612666
m_pPassengers[i]->StreamIn(true);
26622667
}

0 commit comments

Comments
 (0)