From 4c0744260d2a7c1d9e015359edc58affb975fa03 Mon Sep 17 00:00:00 2001
From: withmorten <morten.with@gmail.com>
Date: Mon, 7 Dec 2020 01:59:17 +0100
Subject: [PATCH] uint8 enums fixed

---
 src/audio/AudioLogic.cpp         |  4 ++--
 src/audio/AudioManager.h         |  2 +-
 src/control/AutoPilot.cpp        |  6 +++---
 src/control/AutoPilot.h          | 12 ++++++------
 src/control/CarAI.cpp            |  4 ++--
 src/control/CarAI.h              |  4 ++--
 src/control/Pickups.cpp          |  2 +-
 src/control/Pickups.h            |  4 ++--
 src/control/Script.cpp           |  4 ++--
 src/control/Script4.cpp          |  2 +-
 src/control/Script6.cpp          |  2 +-
 src/control/SetPieces.cpp        |  2 +-
 src/control/SetPieces.h          |  4 ++--
 src/core/PlayerInfo.h            |  4 ++--
 src/core/World.cpp               |  2 +-
 src/entities/Entity.h            | 12 ++++++------
 src/modelinfo/BaseModelInfo.h    |  7 +++----
 src/modelinfo/VehicleModelInfo.h |  2 +-
 src/peds/Ped.h                   |  4 ++--
 src/peds/PedFight.cpp            |  4 ++--
 src/vehicles/Cranes.h            |  8 ++++----
 src/vehicles/Vehicle.h           |  2 +-
 22 files changed, 48 insertions(+), 49 deletions(-)

diff --git a/src/audio/AudioLogic.cpp b/src/audio/AudioLogic.cpp
index 1ec33054..1ce30755 100644
--- a/src/audio/AudioLogic.cpp
+++ b/src/audio/AudioLogic.cpp
@@ -47,8 +47,8 @@ const int channels = ARRAY_SIZE(cAudioManager::m_asActiveSamples);
 const int policeChannel = channels + 1;
 const int allChannels = channels + 2;
 
-enum PLAY_STATUS : uint8 { PLAY_STATUS_STOPPED = 0, PLAY_STATUS_PLAYING, PLAY_STATUS_FINISHED };
-enum LOADING_STATUS : uint8 { LOADING_STATUS_NOT_LOADED = 0, LOADING_STATUS_LOADED, LOADING_STATUS_FAILED };
+enum PLAY_STATUS { PLAY_STATUS_STOPPED = 0, PLAY_STATUS_PLAYING, PLAY_STATUS_FINISHED };
+enum LOADING_STATUS { LOADING_STATUS_NOT_LOADED = 0, LOADING_STATUS_LOADED, LOADING_STATUS_FAILED };
 
 void
 cAudioManager::PreInitialiseGameSpecificSetup() const
diff --git a/src/audio/AudioManager.h b/src/audio/AudioManager.h
index 2e0af437..dff7d9c8 100644
--- a/src/audio/AudioManager.h
+++ b/src/audio/AudioManager.h
@@ -149,7 +149,7 @@ public:
 class cVehicleParams
 {
 public:
-	eVehicleType m_VehicleType;
+	uint8 m_VehicleType;
 	bool m_bDistanceCalculated;
 	float m_fDistance;
 	CVehicle *m_pVehicle;
diff --git a/src/control/AutoPilot.cpp b/src/control/AutoPilot.cpp
index 1b14e3d7..a899518b 100644
--- a/src/control/AutoPilot.cpp
+++ b/src/control/AutoPilot.cpp
@@ -109,9 +109,9 @@ void CAutoPilot::Load(uint8*& buf)
 	m_nNextDirection = ReadSaveBuf<int8>(buf);
 	m_nCurrentLane = ReadSaveBuf<int8>(buf);
 	m_nNextLane = ReadSaveBuf<int8>(buf);
-	m_nDrivingStyle = (eCarDrivingStyle)ReadSaveBuf<uint8>(buf);
-	m_nCarMission = (eCarMission)ReadSaveBuf<uint8>(buf);
-	m_nTempAction = (eCarTempAction)ReadSaveBuf<uint8>(buf);
+	m_nDrivingStyle = ReadSaveBuf<uint8>(buf);
+	m_nCarMission = ReadSaveBuf<uint8>(buf);
+	m_nTempAction = ReadSaveBuf<uint8>(buf);
 	m_nTimeTempAction = ReadSaveBuf<uint32>(buf);
 	m_fMaxTrafficSpeed = ReadSaveBuf<float>(buf);
 	m_nCruiseSpeed = ReadSaveBuf<uint8>(buf);
diff --git a/src/control/AutoPilot.h b/src/control/AutoPilot.h
index 25feb72d..aa14ccdd 100644
--- a/src/control/AutoPilot.h
+++ b/src/control/AutoPilot.h
@@ -4,7 +4,7 @@
 class CVehicle;
 struct CPathNode;
 
-enum eCarMission : uint8
+enum eCarMission
 {
 	MISSION_NONE,
 	MISSION_CRUISE,
@@ -35,7 +35,7 @@ enum eCarMission : uint8
 	MISSION_BLOCKPLAYER_FORWARDANDBACK
 };
 
-enum eCarTempAction : uint8
+enum eCarTempAction
 {
 	TEMPACT_NONE,
 	TEMPACT_WAIT,
@@ -50,7 +50,7 @@ enum eCarTempAction : uint8
 	TEMPACT_SWERVERIGHT
 };
 
-enum eCarDrivingStyle : uint8
+enum eCarDrivingStyle
 {
 	DRIVINGSTYLE_STOP_FOR_CARS,
 	DRIVINGSTYLE_SLOW_DOWN_FOR_CARS,
@@ -76,9 +76,9 @@ public:
 	int8 m_nNextDirection;
 	int8 m_nCurrentLane;
 	int8 m_nNextLane;
-	eCarDrivingStyle m_nDrivingStyle;
-	eCarMission m_nCarMission;
-	eCarTempAction m_nTempAction;
+	uint8 m_nDrivingStyle;
+	uint8 m_nCarMission;
+	uint8 m_nTempAction;
 	uint32 m_nTimeTempAction;
 	float m_fMaxTrafficSpeed;
 	uint8 m_nCruiseSpeed;
diff --git a/src/control/CarAI.cpp b/src/control/CarAI.cpp
index a3fcbf9a..e7f3a546 100644
--- a/src/control/CarAI.cpp
+++ b/src/control/CarAI.cpp
@@ -634,7 +634,7 @@ void CCarAI::TellCarToBlockOtherCar(CVehicle* pVehicle, CVehicle* pTarget)
 	pVehicle->AutoPilot.m_nCruiseSpeed = Max(6, pVehicle->AutoPilot.m_nCruiseSpeed);
 }
 
-eCarMission CCarAI::FindPoliceCarMissionForWantedLevel()
+uint8 CCarAI::FindPoliceCarMissionForWantedLevel()
 {
 	switch (CWorld::Players[CWorld::PlayerInFocus].m_pPed->m_pWanted->m_nWantedLevel){
 	case 0:
@@ -648,7 +648,7 @@ eCarMission CCarAI::FindPoliceCarMissionForWantedLevel()
 	}
 }
 
-eCarMission CCarAI::FindPoliceBoatMissionForWantedLevel()
+uint8 CCarAI::FindPoliceBoatMissionForWantedLevel()
 {
 	switch (CWorld::Players[CWorld::PlayerInFocus].m_pPed->m_pWanted->m_nWantedLevel) {
 	case 0:
diff --git a/src/control/CarAI.h b/src/control/CarAI.h
index d4af1806..dcd76d78 100644
--- a/src/control/CarAI.h
+++ b/src/control/CarAI.h
@@ -22,8 +22,8 @@ public:
 	static void TellOccupantsToFleeCar(CVehicle*);
 	static void TellCarToRamOtherCar(CVehicle*, CVehicle*);
 	static void TellCarToBlockOtherCar(CVehicle*, CVehicle*);
-	static eCarMission FindPoliceCarMissionForWantedLevel();
-	static eCarMission FindPoliceBoatMissionForWantedLevel();
+	static uint8 FindPoliceCarMissionForWantedLevel();
+	static uint8 FindPoliceBoatMissionForWantedLevel();
 	static int32 FindPoliceCarSpeedForWantedLevel(CVehicle*);
 	static void MellowOutChaseSpeed(CVehicle*);
 	static void MellowOutChaseSpeedBoat(CVehicle*);
diff --git a/src/control/Pickups.cpp b/src/control/Pickups.cpp
index 1ff4f8f6..c136c99f 100644
--- a/src/control/Pickups.cpp
+++ b/src/control/Pickups.cpp
@@ -852,7 +852,7 @@ CPickups::GenerateNewOne(CVector pos, uint32 modelIndex, uint8 type, uint32 quan
 
 	if (slot >= NUMPICKUPS) return -1;
 
-	aPickUps[slot].m_eType = (ePickupType)type;
+	aPickUps[slot].m_eType = type;
 	aPickUps[slot].m_bRemoved = false;
 	aPickUps[slot].m_nQuantity = quantity;
 	aPickUps[slot].m_nMoneySpeed = rate;
diff --git a/src/control/Pickups.h b/src/control/Pickups.h
index 36179f66..af9503e0 100644
--- a/src/control/Pickups.h
+++ b/src/control/Pickups.h
@@ -1,7 +1,7 @@
 #pragma once
 #include "Weapon.h"
 
-enum ePickupType : uint8
+enum ePickupType
 {
 	PICKUP_NONE = 0,
 	PICKUP_IN_SHOP,
@@ -43,7 +43,7 @@ public:
 	int16 m_eModelIndex;
 	uint16 m_nIndex;
 	char m_sTextKey[8];
-	ePickupType m_eType;
+	uint8 m_eType;
 	bool m_bRemoved;
 	uint8 m_bWasAmmoCollected:1;
 	uint8 m_bWasControlMessageShown:1;
diff --git a/src/control/Script.cpp b/src/control/Script.cpp
index be0e9bf0..ff72d664 100644
--- a/src/control/Script.cpp
+++ b/src/control/Script.cpp
@@ -4038,7 +4038,7 @@ int8 CRunningScript::ProcessCommands100To199(int32 command)
 		CollectParameters(&m_nIp, 2);
 		CVehicle* car = CPools::GetVehiclePool()->GetAt(ScriptParams[0]);
 		script_assert(car);
-		car->AutoPilot.m_nDrivingStyle = (eCarDrivingStyle)ScriptParams[1];
+		car->AutoPilot.m_nDrivingStyle = (uint8)ScriptParams[1];
 		return 0;
 	}
 	case COMMAND_SET_CAR_MISSION:
@@ -4046,7 +4046,7 @@ int8 CRunningScript::ProcessCommands100To199(int32 command)
 		CollectParameters(&m_nIp, 2);
 		CVehicle* car = CPools::GetVehiclePool()->GetAt(ScriptParams[0]);
 		script_assert(car);
-		car->AutoPilot.m_nCarMission = (eCarMission)ScriptParams[1];
+		car->AutoPilot.m_nCarMission = (uint8)ScriptParams[1];
 		car->AutoPilot.m_nAntiReverseTimer = CTimer::GetTimeInMilliseconds();
 		car->bEngineOn = true;
 		return 0;
diff --git a/src/control/Script4.cpp b/src/control/Script4.cpp
index 7de31528..9b8f854e 100644
--- a/src/control/Script4.cpp
+++ b/src/control/Script4.cpp
@@ -1513,7 +1513,7 @@ int8 CRunningScript::ProcessCommands900To999(int32 command)
 		CollectParameters(&m_nIp, 2);
 		CVehicle* pVehicle = CPools::GetVehiclePool()->GetAt(ScriptParams[0]);
 		script_assert(pVehicle);
-		pVehicle->SetStatus((eEntityStatus)ScriptParams[1]);
+		pVehicle->SetStatus(ScriptParams[1]);
 		return 0;
 	}
 	case COMMAND_IS_CHAR_MALE:
diff --git a/src/control/Script6.cpp b/src/control/Script6.cpp
index 53464804..50a7f745 100644
--- a/src/control/Script6.cpp
+++ b/src/control/Script6.cpp
@@ -1409,7 +1409,7 @@ int8 CRunningScript::ProcessCommands1100To1199(int32 command)
 		CollectParameters(&m_nIp, 3);
 		CVehicle* pVehicle = CPools::GetVehiclePool()->GetAt(ScriptParams[0]);
 		script_assert(pVehicle);
-		pVehicle->AutoPilot.m_nTempAction = (eCarTempAction)ScriptParams[1];
+		pVehicle->AutoPilot.m_nTempAction = (uint8)ScriptParams[1];
 		pVehicle->AutoPilot.m_nTimeTempAction = CTimer::GetTimeInMilliseconds() + ScriptParams[2];
 		return 0;
 	}
diff --git a/src/control/SetPieces.cpp b/src/control/SetPieces.cpp
index 9b4e0075..c5142a0a 100644
--- a/src/control/SetPieces.cpp
+++ b/src/control/SetPieces.cpp
@@ -29,7 +29,7 @@ void CSetPieces::AddOne(uint8 type, CVector2D vTriggerInf, CVector2D vTriggerSup
 {
 	if (NumSetPieces >= NUM_SETPIECES)
 		return;
-	aSetPieces[NumSetPieces].m_nType = (eSetPieceType)type;
+	aSetPieces[NumSetPieces].m_nType = type;
 	aSetPieces[NumSetPieces].m_vTriggerInf.x = Min(vTriggerInf.x, vTriggerSup.x);
 	aSetPieces[NumSetPieces].m_vTriggerInf.y = Min(vTriggerInf.y, vTriggerSup.y);
 	aSetPieces[NumSetPieces].m_vTriggerSup.x = Max(vTriggerInf.x, vTriggerSup.x);
diff --git a/src/control/SetPieces.h b/src/control/SetPieces.h
index 5776d35a..5c228d4c 100644
--- a/src/control/SetPieces.h
+++ b/src/control/SetPieces.h
@@ -5,7 +5,7 @@
 class CVehicle;
 class CCopPed;
 
-enum eSetPieceType : uint8
+enum eSetPieceType
 {
 	SETPIECE_NONE = 0,
 	SETPIECE_TWOCOPCARSINALLEY,
@@ -20,7 +20,7 @@ enum eSetPieceType : uint8
 class CSetPiece
 {
 public:
-	eSetPieceType m_nType;
+	uint8 m_nType;
 	uint32 m_nLastTimeCreated;
 	CVector2D m_vTriggerInf;
 	CVector2D m_vTriggerSup;
diff --git a/src/core/PlayerInfo.h b/src/core/PlayerInfo.h
index 7d99a4e0..68a50c82 100644
--- a/src/core/PlayerInfo.h
+++ b/src/core/PlayerInfo.h
@@ -10,7 +10,7 @@ enum eWastedBustedState
 	WBSTATE_FAILED_CRITICAL_MISSION,
 };
 
-enum eBustedAudioState : uint8
+enum eBustedAudioState
 {
 	BUSTEDAUDIO_NONE,
 	BUSTEDAUDIO_LOADING,
@@ -82,7 +82,7 @@ public:
 	bool m_bGetOutOfJailFree;
 	bool m_bGetOutOfHospitalFree;
 	bool m_bDriveByAllowed;
-	eBustedAudioState m_nBustedAudioStatus;
+	uint8 m_nBustedAudioStatus;
 	int16 m_nCurrentBustedAudio;
 	char m_aSkinName[32];
 	RwTexture *m_pSkinTexture;
diff --git a/src/core/World.cpp b/src/core/World.cpp
index bc104fe9..1d96163c 100644
--- a/src/core/World.cpp
+++ b/src/core/World.cpp
@@ -1580,7 +1580,7 @@ CWorld::CallOffChaseForAreaSectorListVehicles(CPtrList &list, float x1, float y1
 		if(pVehicle->m_scanCode != GetCurrentScanCode()) {
 			pVehicle->m_scanCode = GetCurrentScanCode();
 			const CVector &vehiclePos = pVehicle->GetPosition();
-			eCarMission carMission = pVehicle->AutoPilot.m_nCarMission;
+			uint8 carMission = pVehicle->AutoPilot.m_nCarMission;
 			if(pVehicle != FindPlayerVehicle() && vehiclePos.x > fStartX && vehiclePos.x < fEndX &&
 			   vehiclePos.y > fStartY && vehiclePos.y < fEndY && pVehicle->bIsLawEnforcer &&
 			   (carMission == MISSION_RAMPLAYER_FARAWAY || carMission == MISSION_RAMPLAYER_CLOSE ||
diff --git a/src/entities/Entity.h b/src/entities/Entity.h
index 08d1900a..b2ea7217 100644
--- a/src/entities/Entity.h
+++ b/src/entities/Entity.h
@@ -6,7 +6,7 @@
 struct CReference;
 class CPtrList;
 
-enum eEntityType : uint8
+enum eEntityType
 {
 	ENTITY_TYPE_NOTHING = 0,
 	ENTITY_TYPE_BUILDING,
@@ -16,7 +16,7 @@ enum eEntityType : uint8
 	ENTITY_TYPE_DUMMY,
 };
 
-enum eEntityStatus : uint8
+enum eEntityStatus
 {
 	STATUS_PLAYER,
 	STATUS_PLAYER_PLAYBACKFROMBUFFER,
@@ -99,10 +99,10 @@ public:
 	CReference *m_pFirstReference;
 
 public:
-	eEntityType GetType() const { return (eEntityType)m_type; }
-	void SetType(eEntityType type) { m_type = type; }
-	eEntityStatus GetStatus() const { return (eEntityStatus)m_status; }
-	void SetStatus(eEntityStatus status) { m_status = status; }
+	uint8 GetType() const { return m_type; }
+	void SetType(uint8 type) { m_type = type; }
+	uint8 GetStatus() const { return m_status; }
+	void SetStatus(uint8 status) { m_status = status; }
 	CColModel *GetColModel(void) { return CModelInfo::GetModelInfo(m_modelIndex)->GetColModel(); }
 	bool GetIsStatic(void) const { return bIsStatic || bIsStaticWaitingForCollision; }
 	void SetIsStatic(bool state) { bIsStatic = state; }
diff --git a/src/modelinfo/BaseModelInfo.h b/src/modelinfo/BaseModelInfo.h
index e7dd9e4b..3aa0857a 100644
--- a/src/modelinfo/BaseModelInfo.h
+++ b/src/modelinfo/BaseModelInfo.h
@@ -4,7 +4,7 @@
 
 #define MAX_MODEL_NAME (21)
 
-enum ModelInfoType : uint8
+enum ModelInfoType
 {
 	MITYPE_NA,
 	MITYPE_SIMPLE,
@@ -17,7 +17,6 @@ enum ModelInfoType : uint8
 	MITYPE_XTRACOMPS,	// unused but still in enum
 	MITYPE_HAND	// xbox and mobile
 };
-VALIDATE_SIZE(ModelInfoType, 1);
 
 class C2dEffect;
 
@@ -25,7 +24,7 @@ class CBaseModelInfo
 {
 protected:
 	char         m_name[MAX_MODEL_NAME];
-	ModelInfoType m_type;
+	uint8        m_type;
 	uint8        m_num2dEffects;
 	bool         m_bOwnsColModel;
 	CColModel   *m_colModel;
@@ -47,7 +46,7 @@ public:
 	virtual int GetAnimFileIndex(void) { return -1; }
 
 	// one day it becomes virtual
-	ModelInfoType GetModelType() const { return m_type; }
+	uint8 GetModelType() const { return m_type; }
 	bool IsBuilding(void) { return m_type == MITYPE_SIMPLE || m_type == MITYPE_TIME; }
 	bool IsSimple(void) { return m_type == MITYPE_SIMPLE || m_type == MITYPE_TIME || m_type == MITYPE_WEAPON; }
 	bool IsClump(void) { return m_type == MITYPE_CLUMP || m_type == MITYPE_PED || m_type == MITYPE_VEHICLE;	}
diff --git a/src/modelinfo/VehicleModelInfo.h b/src/modelinfo/VehicleModelInfo.h
index d03ab9bf..c7a41126 100644
--- a/src/modelinfo/VehicleModelInfo.h
+++ b/src/modelinfo/VehicleModelInfo.h
@@ -24,7 +24,7 @@ enum {
 	ATOMIC_FLAG_NOCULL	= 0x800,
 };
 
-enum eVehicleType : uint8{
+enum eVehicleType {
 	VEHICLE_TYPE_CAR,
 	VEHICLE_TYPE_BOAT,
 	VEHICLE_TYPE_TRAIN,
diff --git a/src/peds/Ped.h b/src/peds/Ped.h
index 343e9b22..f8638c4b 100644
--- a/src/peds/Ped.h
+++ b/src/peds/Ped.h
@@ -271,7 +271,7 @@ enum PedOnGroundState {
 	PED_DEAD_ON_THE_FLOOR
 };
 
-enum PointBlankNecessity : uint8 {
+enum PointBlankNecessity {
 	NO_POINT_BLANK_PED,
 	POINT_BLANK_FOR_WANTED_PED,
 	POINT_BLANK_FOR_SOMEONE_ELSE
@@ -729,7 +729,7 @@ public:
 	CPed *CheckForDeadPeds(void);
 	bool CheckForExplosions(CVector2D &area);
 	CPed *CheckForGunShots(void);
-	PointBlankNecessity CheckForPointBlankPeds(CPed*);
+	uint8 CheckForPointBlankPeds(CPed*);
 	bool CheckIfInTheAir(void);
 	void ClearAll(void);
 	void SetPointGunAt(CEntity*);
diff --git a/src/peds/PedFight.cpp b/src/peds/PedFight.cpp
index 0367ef4c..855a0f1f 100644
--- a/src/peds/PedFight.cpp
+++ b/src/peds/PedFight.cpp
@@ -367,7 +367,7 @@ CPed::SetAttack(CEntity *victim)
 		if (IsPlayer())
 			CPad::GetPad(0)->ResetAverageWeapon();
 
-		PointBlankNecessity pointBlankStatus;
+		uint8 pointBlankStatus;
 		if ((curWeapon->m_eWeaponFire == WEAPON_FIRE_INSTANT_HIT || GetWeapon()->m_eWeaponType == WEAPONTYPE_FLAMETHROWER)
 			&& TheCamera.PlayerWeaponMode.Mode != CCam::MODE_M16_1STPERSON
 			&& TheCamera.PlayerWeaponMode.Mode != CCam::MODE_M16_1STPERSON_RUNABOUT
@@ -611,7 +611,7 @@ CPed::FinishedReloadCB(CAnimBlendAssociation *reloadAssoc, void *arg)
 }
 
 // --MIAMI: Done
-PointBlankNecessity
+uint8
 CPed::CheckForPointBlankPeds(CPed *pedToVerify)
 {
 	float pbDistance = 1.1f;
diff --git a/src/vehicles/Cranes.h b/src/vehicles/Cranes.h
index 45ea7a8d..162f9af9 100644
--- a/src/vehicles/Cranes.h
+++ b/src/vehicles/Cranes.h
@@ -11,7 +11,7 @@ class CBuilding;
 class CCrane
 {
 public:
-	enum CraneState : uint8 {
+	enum CraneState {
 		IDLE = 0,
 		GOING_TOWARDS_TARGET = 1,
 		LIFTING_TARGET = 2,
@@ -19,7 +19,7 @@ public:
 		ROTATING_TARGET = 4,
 		DROPPING_TARGET = 5
 	};
-	enum CraneStatus : uint8 {
+	enum CraneStatus {
 		NONE = 0,
 		ACTIVATED = 1,
 		DEACTIVATED = 2
@@ -46,8 +46,8 @@ public:
 	CVector2D m_vecHookVelocity;
 	CVehicle *m_pVehiclePickedUp;
 	uint32 m_nTimeForNextCheck;
-	CraneStatus m_nCraneStatus;
-	CraneState m_nCraneState;
+	uint8 m_nCraneStatus;
+	uint8 m_nCraneState;
 	uint8 m_nVehiclesCollected;
 	bool m_bIsCrusher;
 	bool m_bIsMilitaryCrane;
diff --git a/src/vehicles/Vehicle.h b/src/vehicles/Vehicle.h
index 004f1fd9..8f2686e1 100644
--- a/src/vehicles/Vehicle.h
+++ b/src/vehicles/Vehicle.h
@@ -281,7 +281,7 @@ public:
 	int8 m_comedyControlState;
 	CStoredCollPoly m_aCollPolys[2];     // poly which is under front/rear part of car
 	float m_fSteerInput;
-	eVehicleType m_vehType;
+	uint8 m_vehType;
 
 	static void *operator new(size_t);
 	static void *operator new(size_t sz, int slot);