summaryrefslogtreecommitdiffstats
path: root/src/core/re3.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/re3.cpp')
-rw-r--r--src/core/re3.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/core/re3.cpp b/src/core/re3.cpp
index d3b1f266..672cca98 100644
--- a/src/core/re3.cpp
+++ b/src/core/re3.cpp
@@ -775,12 +775,14 @@ FixCar(void)
static void
TeleportToWaypoint(void)
{
+ CStreaming::LoadScene(CRadar::TargetMarkerPos);
+ CStreaming::LoadSceneCollision(CRadar::TargetMarkerPos);
if (FindPlayerVehicle()) {
if (CRadar::TargetMarkerId != -1)
- FindPlayerVehicle()->Teleport(CRadar::TargetMarkerPos + CVector(0.0f, 0.0f, FindPlayerVehicle()->GetColModel()->boundingSphere.center.z));
+ FindPlayerVehicle()->Teleport(CRadar::TargetMarkerPos + CVector(0.0f, 0.0f, CWorld::FindGroundZForCoord(CRadar::TargetMarkerPos.x, CRadar::TargetMarkerPos.y) + FindPlayerVehicle()->GetColModel()->boundingSphere.radius));
} else
if(CRadar::TargetMarkerId != -1)
- FindPlayerPed()->Teleport(CRadar::TargetMarkerPos + CVector(0.0f, 0.0f, FEET_OFFSET));
+ FindPlayerPed()->Teleport(CRadar::TargetMarkerPos + CVector(0.0f, 0.0f, CWorld::FindGroundZForCoord(CRadar::TargetMarkerPos.x, CRadar::TargetMarkerPos.y) + FEET_OFFSET));
}
#endif