diff options
Diffstat (limited to '')
-rw-r--r-- | src/control/AutoPilot.h | 8 | ||||
-rw-r--r-- | src/control/CarAI.cpp | 110 | ||||
-rw-r--r-- | src/control/CarAI.h | 10 | ||||
-rw-r--r-- | src/control/CarCtrl.cpp | 2 | ||||
-rw-r--r-- | src/control/CarCtrl.h | 2 |
5 files changed, 1 insertions, 131 deletions
diff --git a/src/control/AutoPilot.h b/src/control/AutoPilot.h index 48a0c4de..24e7cc53 100644 --- a/src/control/AutoPilot.h +++ b/src/control/AutoPilot.h @@ -26,7 +26,6 @@ enum eCarMission : uint8 MISSION_BLOCKCAR_FARAWAY, MISSION_BLOCKCAR_CLOSE, MISSION_BLOCKCAR_HANDBRAKESTOP, -#ifdef MIAMI MISSION_HELI_FLYTOCOORS, MISSION_ATTACKPLAYER, MISSION_PLANE_FLYTOCOORS, @@ -34,7 +33,6 @@ enum eCarMission : uint8 MISSION_SLOWLY_DRIVE_TOWARDS_PLAYER_1, MISSION_SLOWLY_DRIVE_TOWARDS_PLAYER_2, MISSION_BLOCKPLAYER_FORWARDANDBACK -#endif }; enum eCarTempAction : uint8 @@ -84,18 +82,14 @@ public: uint32 m_nTimeTempAction; float m_fMaxTrafficSpeed; uint8 m_nCruiseSpeed; -#ifdef MIAMI uint8 m_nCruiseSpeedMultiplierType; float m_fCruiseSpeedMultiplier; -#endif uint8 m_bSlowedDownBecauseOfCars : 1; uint8 m_bSlowedDownBecauseOfPeds : 1; uint8 m_bStayInCurrentLevel : 1; uint8 m_bStayInFastLane : 1; uint8 m_bIgnorePathfinding : 1; -#ifdef MIAMI uint8 m_nSwitchDistance; -#endif CVector m_vecDestinationCoors; CPathNode *m_aPathFindNodesInfo[NUM_PATH_NODES_IN_AUTOPILOT]; int16 m_nPathFindNodesCount; @@ -125,10 +119,8 @@ public: m_nTimeToStartMission = CTimer::GetTimeInMilliseconds(); m_nAntiReverseTimer = m_nTimeToStartMission; m_bStayInFastLane = false; -#ifdef MIAMI m_nCruiseSpeedMultiplierType = 0; m_fCruiseSpeedMultiplier = 1.0f; -#endif } void ModifySpeed(float); diff --git a/src/control/CarAI.cpp b/src/control/CarAI.cpp index d595feaf..465b0b33 100644 --- a/src/control/CarAI.cpp +++ b/src/control/CarAI.cpp @@ -24,11 +24,7 @@ //--MIAMI: done float CCarAI::FindSwitchDistanceClose(CVehicle* pVehicle) { -#ifndef MIAMI - return 30.0f; -#else return pVehicle->AutoPilot.m_nSwitchDistance; -#endif } //--MIAMI: done @@ -45,7 +41,6 @@ float CCarAI::FindSwitchDistanceFar(CVehicle* pVehicle) return FindSwitchDistanceFarNormalVehicle(pVehicle); } -#ifdef MIAMI //--MIAMI: done void CCarAI::BackToCruisingIfNoWantedLevel(CVehicle* pVehicle) { @@ -59,7 +54,6 @@ void CCarAI::BackToCruisingIfNoWantedLevel(CVehicle* pVehicle) pVehicle->AutoPilot.m_nCarMission = MISSION_NONE; } } -#endif //--MIAMI: done void CCarAI::UpdateCarAI(CVehicle* pVehicle) @@ -148,24 +142,9 @@ void CCarAI::UpdateCarAI(CVehicle* pVehicle) pVehicle->m_bSirenOrAlarm = false; pVehicle->m_nCarHornTimer = 0; } -#ifdef MIAMI if (pVehicle->bIsLawEnforcer) MellowOutChaseSpeed(pVehicle); BackToCruisingIfNoWantedLevel(pVehicle); -#else - if (FindPlayerPed()->m_pWanted->m_bIgnoredByEveryone || pVehicle->bIsLawEnforcer && - (FindPlayerPed()->m_pWanted->m_nWantedLevel == 0 || FindPlayerPed()->m_pWanted->m_bIgnoredByCops || CCullZones::NoPolice())){ - CCarCtrl::JoinCarWithRoadSystem(pVehicle); - pVehicle->AutoPilot.m_nCarMission = MISSION_CRUISE; - pVehicle->AutoPilot.m_nDrivingStyle = DRIVINGSTYLE_STOP_FOR_CARS; - pVehicle->m_bSirenOrAlarm = false; - if (CCullZones::NoPolice()) - pVehicle->AutoPilot.m_nCarMission = MISSION_NONE; - } - - else if (pVehicle->bIsLawEnforcer) - MellowOutChaseSpeed(pVehicle); -#endif break; case MISSION_BLOCKPLAYER_FARAWAY: if (FindSwitchDistanceClose(pVehicle) > (FindPlayerCoors() - pVehicle->GetPosition()).Magnitude2D() || @@ -174,19 +153,7 @@ void CCarAI::UpdateCarAI(CVehicle* pVehicle) if (pVehicle->UsesSiren(pVehicle->GetModelIndex())) pVehicle->m_bSirenOrAlarm = true; } -#ifndef MIAMI - if (FindPlayerPed()->m_pWanted->m_bIgnoredByEveryone || pVehicle->bIsLawEnforcer && - (FindPlayerPed()->m_pWanted->m_nWantedLevel == 0 || FindPlayerPed()->m_pWanted->m_bIgnoredByCops || CCullZones::NoPolice())) { - CCarCtrl::JoinCarWithRoadSystem(pVehicle); - pVehicle->AutoPilot.m_nCarMission = MISSION_CRUISE; - pVehicle->AutoPilot.m_nDrivingStyle = DRIVINGSTYLE_STOP_FOR_CARS; - pVehicle->m_bSirenOrAlarm = false; - if (CCullZones::NoPolice()) - pVehicle->AutoPilot.m_nCarMission = MISSION_NONE; - } -#else BackToCruisingIfNoWantedLevel(pVehicle); -#endif break; case MISSION_BLOCKPLAYER_CLOSE: if (FindSwitchDistanceFar(pVehicle) >= (FindPlayerCoors() - pVehicle->GetPosition()).Magnitude2D() || @@ -216,30 +183,12 @@ void CCarAI::UpdateCarAI(CVehicle* pVehicle) pVehicle->m_bSirenOrAlarm = false; pVehicle->m_nCarHornTimer = 0; } -#ifdef MIAMI if (pVehicle->bIsLawEnforcer) MellowOutChaseSpeed(pVehicle); BackToCruisingIfNoWantedLevel(pVehicle); -#else - if (FindPlayerPed()->m_pWanted->m_bIgnoredByEveryone || pVehicle->bIsLawEnforcer && - (FindPlayerPed()->m_pWanted->m_nWantedLevel == 0 || FindPlayerPed()->m_pWanted->m_bIgnoredByCops || CCullZones::NoPolice())) { - CCarCtrl::JoinCarWithRoadSystem(pVehicle); - pVehicle->AutoPilot.m_nCarMission = MISSION_CRUISE; - pVehicle->AutoPilot.m_nDrivingStyle = DRIVINGSTYLE_STOP_FOR_CARS; - pVehicle->m_bSirenOrAlarm = false; - if (CCullZones::NoPolice()) - pVehicle->AutoPilot.m_nCarMission = MISSION_NONE; - } - if (pVehicle->bIsLawEnforcer) - MellowOutChaseSpeed(pVehicle); -#endif break; case MISSION_GOTOCOORDS: -#ifdef MIAMI if ((pVehicle->AutoPilot.m_vecDestinationCoors - pVehicle->GetPosition()).Magnitude2D() < FindSwitchDistanceClose(pVehicle) || -#else - if ((pVehicle->AutoPilot.m_vecDestinationCoors - pVehicle->GetPosition()).Magnitude2D() < DISTANCE_TO_SWITCH_DISTANCE_GOTO || -#endif pVehicle->AutoPilot.m_bIgnorePathfinding) pVehicle->AutoPilot.m_nCarMission = MISSION_GOTOCOORDS_STRAIGHT; break; @@ -251,12 +200,10 @@ void CCarAI::UpdateCarAI(CVehicle* pVehicle) if (distance < 5.0f){ pVehicle->AutoPilot.m_nCarMission = MISSION_NONE; pVehicle->AutoPilot.m_nTempAction = TEMPACT_NONE; -#ifdef MIAMI if (pVehicle->bParking) { TellOccupantsToLeaveCar(pVehicle); pVehicle->bParking = false; } -#endif } else if (distance > FindSwitchDistanceFarNormalVehicle(pVehicle) && !pVehicle->AutoPilot.m_bIgnorePathfinding && (CTimer::GetFrameCounter() & 7) == 0){ pVehicle->AutoPilot.m_nTempAction = TEMPACT_NONE; @@ -313,12 +260,10 @@ void CCarAI::UpdateCarAI(CVehicle* pVehicle) if (distance < 1.0f) { pVehicle->AutoPilot.m_nCarMission = MISSION_NONE; pVehicle->AutoPilot.m_nTempAction = TEMPACT_NONE; -#ifdef MIAMI if (pVehicle->bParking) { TellOccupantsToLeaveCar(pVehicle); pVehicle->bParking = false; } -#endif } else if (distance > FindSwitchDistanceFarNormalVehicle(pVehicle) && !pVehicle->AutoPilot.m_bIgnorePathfinding && (CTimer::GetFrameCounter() & 7) == 0) { pVehicle->AutoPilot.m_nTempAction = TEMPACT_NONE; @@ -338,30 +283,10 @@ void CCarAI::UpdateCarAI(CVehicle* pVehicle) break; case MISSION_RAMCAR_CLOSE: if (pVehicle->AutoPilot.m_pTargetCar){ -#ifndef MIAMI - if -#ifdef FIX_BUGS - (FindPlayerVehicle() == pVehicle->AutoPilot.m_pTargetCar && -#endif - (FindPlayerPed()->m_pWanted->m_bIgnoredByEveryone || pVehicle->bIsLawEnforcer && - (FindPlayerPed()->m_pWanted->m_nWantedLevel == 0 || FindPlayerPed()->m_pWanted->m_bIgnoredByCops || CCullZones::NoPolice())) -#ifdef FIX_BUGS - ) -#endif - { - CCarCtrl::JoinCarWithRoadSystem(pVehicle); - pVehicle->AutoPilot.m_nCarMission = MISSION_CRUISE; - pVehicle->AutoPilot.m_nDrivingStyle = DRIVINGSTYLE_STOP_FOR_CARS; - pVehicle->m_bSirenOrAlarm = false; - if (CCullZones::NoPolice()) - pVehicle->AutoPilot.m_nCarMission = MISSION_NONE; - } -#else #ifdef FIX_BUGS // btw fixed in SA if (FindPlayerVehicle() == pVehicle->AutoPilot.m_pTargetCar) #endif BackToCruisingIfNoWantedLevel(pVehicle); -#endif if ((pVehicle->AutoPilot.m_pTargetCar->GetPosition() - pVehicle->GetPosition()).Magnitude2D() <= FindSwitchDistanceFar(pVehicle) || pVehicle->AutoPilot.m_bIgnorePathfinding){ if (pVehicle->GetHasCollidedWith(pVehicle->AutoPilot.m_pTargetCar)){ @@ -403,7 +328,6 @@ void CCarAI::UpdateCarAI(CVehicle* pVehicle) pVehicle->AutoPilot.m_nCarMission = MISSION_NONE; } break; -#ifdef MIAMI case MISSION_ATTACKPLAYER: if (pVehicle->bIsLawEnforcer) MellowOutChaseSpeedBoat(pVehicle); @@ -438,7 +362,6 @@ void CCarAI::UpdateCarAI(CVehicle* pVehicle) pVehicle->AutoPilot.m_nCarMission = MISSION_BLOCKPLAYER_CLOSE; BackToCruisingIfNoWantedLevel(pVehicle); } -#endif default: if (pVehicle->bIsLawEnforcer && FindPlayerPed()->m_pWanted->m_nWantedLevel > 0 && !CCullZones::NoPolice()){ if (ABS(FindPlayerCoors().x - pVehicle->GetPosition().x) > 10.0f || @@ -446,10 +369,7 @@ void CCarAI::UpdateCarAI(CVehicle* pVehicle) pVehicle->AutoPilot.m_nCruiseSpeed = FindPoliceCarSpeedForWantedLevel(pVehicle); pVehicle->SetStatus(STATUS_PHYSICS); pVehicle->AutoPilot.m_nCarMission = -#ifdef MIAMI - pVehicle->GetVehicleAppearance() == VEHICLE_BOAT ? FindPoliceBoatMissionForWantedLevel() : -#endif - FindPoliceCarMissionForWantedLevel(); + pVehicle->GetVehicleAppearance() == VEHICLE_BOAT ? FindPoliceBoatMissionForWantedLevel() : FindPoliceCarMissionForWantedLevel(); pVehicle->AutoPilot.m_nTempAction = TEMPACT_NONE; pVehicle->AutoPilot.m_nDrivingStyle = DRIVINGSTYLE_AVOID_CARS; }else if (pVehicle->AutoPilot.m_nCarMission == MISSION_CRUISE){ @@ -470,13 +390,11 @@ void CCarAI::UpdateCarAI(CVehicle* pVehicle) pVehicle->AutoPilot.m_nCruiseSpeed = 0; break; } -#ifdef MIAMI if (pVehicle->bIsLawEnforcer && FindPlayerPed()->m_pWanted->m_nWantedLevel >= 1 && CCullZones::PoliceAbandonCars()) { TellOccupantsToLeaveCar(pVehicle); pVehicle->AutoPilot.m_nCruiseSpeed = 0; pVehicle->AutoPilot.m_nCarMission = MISSION_NONE; } -#endif float flatSpeed = pVehicle->GetMoveSpeed().MagnitudeSqr2D(); if (flatSpeed > SQR(0.018f)){ pVehicle->AutoPilot.m_nTimeToStartMission = CTimer::GetTimeInMilliseconds(); @@ -485,16 +403,12 @@ void CCarAI::UpdateCarAI(CVehicle* pVehicle) if (pVehicle->GetStatus() == STATUS_PHYSICS && pVehicle->AutoPilot.m_nTempAction == TEMPACT_NONE){ if (pVehicle->AutoPilot.m_nCarMission != MISSION_NONE){ if (pVehicle->AutoPilot.m_nCarMission != MISSION_STOP_FOREVER && -#ifdef MIAMI pVehicle->AutoPilot.m_nCarMission != MISSION_BLOCKPLAYER_HANDBRAKESTOP && -#endif pVehicle->AutoPilot.m_nCruiseSpeed != 0 && (pVehicle->VehicleCreatedBy != RANDOM_VEHICLE || pVehicle->AutoPilot.m_nCarMission != MISSION_CRUISE)){ if (pVehicle->AutoPilot.m_nDrivingStyle != DRIVINGSTYLE_STOP_FOR_CARS -#ifdef MIAMI && pVehicle->AutoPilot.m_nDrivingStyle != DRIVINGSTYLE_STOP_FOR_CARS_IGNORE_LIGHTS || pVehicle->VehicleCreatedBy == MISSION_VEHICLE -#endif ) { if (CTimer::GetTimeInMilliseconds() - pVehicle->m_nLastTimeCollided > 500) pVehicle->AutoPilot.m_nAntiReverseTimer = CTimer::GetTimeInMilliseconds(); @@ -526,7 +440,6 @@ void CCarAI::UpdateCarAI(CVehicle* pVehicle) pVehicle->AutoPilot.m_nTimeTempAction = CTimer::GetTimeInMilliseconds() + 400; } } -#ifdef MIAMI if (pVehicle->bIsLawEnforcer) { if (pVehicle->AutoPilot.m_nCarMission == MISSION_RAMPLAYER_FARAWAY || pVehicle->AutoPilot.m_nCarMission == MISSION_RAMPLAYER_CLOSE) { @@ -534,7 +447,6 @@ void CCarAI::UpdateCarAI(CVehicle* pVehicle) pVehicle->AutoPilot.m_nCarMission = MISSION_BLOCKPLAYER_FARAWAY; } } -#endif if (pVehicle->GetUp().z < 0.7f){ pVehicle->AutoPilot.m_nTempAction = TEMPACT_WAIT; pVehicle->AutoPilot.m_nTimeTempAction = CTimer::GetTimeInMilliseconds() + 1000; @@ -574,7 +486,6 @@ void CCarAI::UpdateCarAI(CVehicle* pVehicle) if ((uint8)(pVehicle->m_randomSeed ^ CGeneral::GetRandomNumber()) == 0xAD) pVehicle->m_nCarHornTimer = 45; } -#ifdef MIAMI float target = 1.0f; if (pVehicle->AutoPilot.m_nCarMission == MISSION_CRUISE) target = CCarCtrl::FindSpeedMultiplierWithSpeedFromNodes(pVehicle->AutoPilot.m_nCruiseSpeedMultiplierType); @@ -603,7 +514,6 @@ void CCarAI::UpdateCarAI(CVehicle* pVehicle) } } } -#endif } //--MIAMI: done @@ -630,7 +540,6 @@ float CCarAI::GetCarToGoToCoors(CVehicle* pVehicle, CVector* pTarget) return (pVehicle->GetPosition() - *pTarget).Magnitude2D(); } -#ifdef MIAMI //--MIAMI: done float CCarAI::GetCarToParkAtCoors(CVehicle* pVehicle, CVector* pTarget) { @@ -639,7 +548,6 @@ float CCarAI::GetCarToParkAtCoors(CVehicle* pVehicle, CVector* pTarget) pVehicle->AutoPilot.m_nCruiseSpeed = 10; return (pVehicle->GetPosition() - *pTarget).Magnitude2D(); } -#endif //--MIAMI: TODO: MI_VICECHEE void CCarAI::AddPoliceCarOccupants(CVehicle* pVehicle) @@ -661,7 +569,6 @@ void CCarAI::AddPoliceCarOccupants(CVehicle* pVehicle) if (FindPlayerPed()->m_pWanted->m_nWantedLevel > 1) pVehicle->SetupPassenger(0); return; -#ifdef MIAMI case MI_PREDATOR: pVehicle->SetUpDriver(); return; @@ -677,7 +584,6 @@ void CCarAI::AddPoliceCarOccupants(CVehicle* pVehicle) return; } */ -#endif default: return; } @@ -708,18 +614,13 @@ void CCarAI::TellOccupantsToLeaveCar(CVehicle* pVehicle) int timer = 100; for (int i = 0; i < pVehicle->m_nNumMaxPassengers; i++){ if (pVehicle->pPassengers[i]) { -#ifdef MIAMI pVehicle->pPassengers[i]->m_leaveCarTimer = timer; pVehicle->pPassengers[i]->SetObjective(OBJECTIVE_LEAVE_VEHICLE, pVehicle); timer += CGeneral::GetRandomNumberInRange(200, 400); -#else - pVehicle->pPassengers[i]->SetObjective(OBJECTIVE_LEAVE_VEHICLE, pVehicle); -#endif } } } -#ifdef MIAMI //--MIAMI: done void CCarAI::TellOccupantsToFleeCar(CVehicle* pVehicle) { @@ -737,7 +638,6 @@ void CCarAI::TellOccupantsToFleeCar(CVehicle* pVehicle) } } } -#endif //--MIAMI: done void CCarAI::TellCarToRamOtherCar(CVehicle* pVehicle, CVehicle* pTarget) @@ -774,7 +674,6 @@ eCarMission CCarAI::FindPoliceCarMissionForWantedLevel() } } -#ifdef MIAMI //--MIAMI: done eCarMission CCarAI::FindPoliceBoatMissionForWantedLevel() { @@ -789,7 +688,6 @@ eCarMission CCarAI::FindPoliceBoatMissionForWantedLevel() default: return MISSION_BLOCKPLAYER_FARAWAY; } } -#endif //--MIAMI: done int32 CCarAI::FindPoliceCarSpeedForWantedLevel(CVehicle* pVehicle) @@ -845,15 +743,12 @@ void CCarAI::MellowOutChaseSpeed(CVehicle* pVehicle) pVehicle->AutoPilot.m_nCruiseSpeed = 34; } } -#ifdef MIAMI if (!FindPlayerVehicle() && FindPlayerPed()->GetMoveSpeed().Magnitude() < 0.07f) { if ((FindPlayerCoors() - pVehicle->GetPosition()).Magnitude() < 30.0f) pVehicle->AutoPilot.m_nCruiseSpeed = Min(10, pVehicle->AutoPilot.m_nCruiseSpeed); } -#endif } -#ifdef MIAMI //--MIAMI: done void CCarAI::MellowOutChaseSpeedBoat(CVehicle* pVehicle) { @@ -867,7 +762,6 @@ void CCarAI::MellowOutChaseSpeedBoat(CVehicle* pVehicle) case 6: pVehicle->AutoPilot.m_nCruiseSpeed = 40; break; } } -#endif //--MIAMI: done void CCarAI::MakeWayForCarWithSiren(CVehicle *pVehicle) @@ -892,10 +786,8 @@ void CCarAI::MakeWayForCarWithSiren(CVehicle *pVehicle) continue; if (vehicle == pVehicle) continue; -#ifdef MIAMI if (vehicle->AutoPilot.m_nDrivingStyle == DRIVINGSTYLE_AVOID_CARS) return; -#endif if (Abs(pVehicle->GetPosition().z - vehicle->GetPosition().z) >= 5.0f) continue; CVector2D distance = vehicle->GetPosition() - pVehicle->GetPosition(); diff --git a/src/control/CarAI.h b/src/control/CarAI.h index 9c3cb196..d4af1806 100644 --- a/src/control/CarAI.h +++ b/src/control/CarAI.h @@ -10,32 +10,22 @@ public: static float FindSwitchDistanceClose(CVehicle*); static float FindSwitchDistanceFarNormalVehicle(CVehicle*); static float FindSwitchDistanceFar(CVehicle*); -#ifdef MIAMI static void BackToCruisingIfNoWantedLevel(CVehicle*); -#endif static void UpdateCarAI(CVehicle*); static void CarHasReasonToStop(CVehicle*); static float GetCarToGoToCoors(CVehicle*, CVector*); -#ifdef MIAMI static float GetCarToParkAtCoors(CVehicle*, CVector*); -#endif static void AddPoliceCarOccupants(CVehicle*); static void AddAmbulanceOccupants(CVehicle*); static void AddFiretruckOccupants(CVehicle*); static void TellOccupantsToLeaveCar(CVehicle*); -#ifdef MIAMI static void TellOccupantsToFleeCar(CVehicle*); -#endif static void TellCarToRamOtherCar(CVehicle*, CVehicle*); static void TellCarToBlockOtherCar(CVehicle*, CVehicle*); static eCarMission FindPoliceCarMissionForWantedLevel(); -#ifdef MIAMI static eCarMission FindPoliceBoatMissionForWantedLevel(); -#endif static int32 FindPoliceCarSpeedForWantedLevel(CVehicle*); static void MellowOutChaseSpeed(CVehicle*); -#ifdef MIAMI static void MellowOutChaseSpeedBoat(CVehicle*); -#endif static void MakeWayForCarWithSiren(CVehicle *veh); }; diff --git a/src/control/CarCtrl.cpp b/src/control/CarCtrl.cpp index 927a0070..f0f95941 100644 --- a/src/control/CarCtrl.cpp +++ b/src/control/CarCtrl.cpp @@ -2752,7 +2752,6 @@ bool CCarCtrl::MapCouldMoveInThisArea(float x, float y) #endif } -#ifdef MIAMI float CCarCtrl::FindSpeedMultiplierWithSpeedFromNodes(int8 type) { switch (type) @@ -2762,4 +2761,3 @@ float CCarCtrl::FindSpeedMultiplierWithSpeedFromNodes(int8 type) } return 1.0f; } -#endif diff --git a/src/control/CarCtrl.h b/src/control/CarCtrl.h index 8ac8664a..4f92bdcf 100644 --- a/src/control/CarCtrl.h +++ b/src/control/CarCtrl.h @@ -104,9 +104,7 @@ public: static void ClearInterestingVehicleList(); static void FindLinksToGoWithTheseNodes(CVehicle*); static bool GenerateOneEmergencyServicesCar(uint32, CVector); -#ifdef MIAMI static float FindSpeedMultiplierWithSpeedFromNodes(int8); -#endif static float GetPositionAlongCurrentCurve(CVehicle* pVehicle) { |