@@ -520,26 +520,15 @@ function getPedOccupiedVehicle(player)
520
520
return data and data .vehicle
521
521
end
522
522
523
+ local _removePedFromVehicle = removePedFromVehicle
523
524
function removePedFromVehicle (player )
524
525
local playerdata = g_Players [getElemID (player )]
525
526
if not playerdata .vehicle then
526
527
return false
527
528
end
528
- -- Built-in removePlayerFromVehicle is simply too unreliable
529
- local health , armor = getElementHealth (player ), getPedArmor (player )
530
- local weapons , currentslot = playerdata .weapons , getPedWeaponSlot (player )
531
- playerdata .beingremovedfromvehicle = true
532
- local x , y , z = getElementPosition (playerdata .vehicle )
533
- local rx , ry , rz = getVehicleRotation (playerdata .vehicle )
534
529
procCallOnAll (' OnPlayerExitVehicle' , getElemID (player ), getElemID (playerdata .vehicle ))
535
- spawnPlayerBySelectedClass (player , x + 4 * math.cos (math.rad (rz + 180 )), y + 4 * math.sin (math.rad (rz + 180 )), z + 1 , rz )
536
- playerdata .beingremovedfromvehicle = nil
537
530
playerdata .vehicle = nil
538
- setElementHealth (player , health )
539
- setPedArmor (player , armor )
540
- if weapons then
541
- giveWeapons (player , weapons , currentslot )
542
- end
531
+ setTimer (_removePedFromVehicle , 500 , 1 , player )
543
532
return true
544
533
end
545
534
---- ---------------------------
0 commit comments