diff options
author | Nikolay <nickvnuk@gmail.com> | 2021-01-09 15:43:47 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-01-09 15:43:47 +0100 |
commit | 3a2a4dee5c26be15cfca7f3a8bbeff085b00d026 (patch) | |
tree | 4cbea1fb214622f77142b99a1b55d71dbf77453c /src/control/CarAI.cpp | |
parent | Change window name (diff) | |
parent | fix (diff) | |
download | re3-3a2a4dee5c26be15cfca7f3a8bbeff085b00d026.tar re3-3a2a4dee5c26be15cfca7f3a8bbeff085b00d026.tar.gz re3-3a2a4dee5c26be15cfca7f3a8bbeff085b00d026.tar.bz2 re3-3a2a4dee5c26be15cfca7f3a8bbeff085b00d026.tar.lz re3-3a2a4dee5c26be15cfca7f3a8bbeff085b00d026.tar.xz re3-3a2a4dee5c26be15cfca7f3a8bbeff085b00d026.tar.zst re3-3a2a4dee5c26be15cfca7f3a8bbeff085b00d026.zip |
Diffstat (limited to 'src/control/CarAI.cpp')
-rw-r--r-- | src/control/CarAI.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/control/CarAI.cpp b/src/control/CarAI.cpp index e7f3a546..06438e0a 100644 --- a/src/control/CarAI.cpp +++ b/src/control/CarAI.cpp @@ -4,6 +4,7 @@ #include "Accident.h" #include "AutoPilot.h" +#include "Bridge.h" #include "CarCtrl.h" #include "General.h" #include "HandlingMgr.h" @@ -74,6 +75,18 @@ void CCarAI::UpdateCarAI(CVehicle* pVehicle) case STATUS_PLAYER_DISABLED: break; case STATUS_SIMPLE: + { + if (pVehicle->m_pCurGroundEntity && CBridge::ThisIsABridgeObjectMovingUp(pVehicle->m_pCurGroundEntity->GetModelIndex())) + pVehicle->SetStatus(STATUS_PHYSICS); + CColPoint colPoint; + CEntity* pEntity; + if ((pVehicle->m_randomSeed & 0x3F) == (CTimer::GetFrameCounter() & 0x3F) && + !CWorld::ProcessVerticalLine(pVehicle->GetPosition(), -2.0f, colPoint, pEntity, true, false, false, false, true, false, nil)) { + debug("FLOATING CAR TURNED INTO PHYSICS CAR!\n"); + pVehicle->SetStatus(STATUS_PHYSICS); + } + } + // fallthough case STATUS_PHYSICS: switch (pVehicle->AutoPilot.m_nCarMission) { case MISSION_RAMPLAYER_FARAWAY: |