re3/src/core/Wanted.h

51 lines
1,022 B
C
Raw Normal View History

2019-06-14 23:34:19 +00:00
#pragma once
#include "Entity.h"
#include "math/Vector.h"
2019-06-26 21:31:12 +00:00
#include "CopPed.h"
2019-06-14 23:34:19 +00:00
2019-06-26 21:31:12 +00:00
enum eWantedLevel {
NOTWANTED,
WANTEDLEVEL_1,
WANTEDLEVEL_2,
WANTEDLEVEL_3,
WANTEDLEVEL_4,
WANTEDLEVEL_5,
WANTEDLEVEL_6,
2019-06-14 23:34:19 +00:00
};
2019-06-26 21:31:12 +00:00
class CWanted
{
2019-06-14 23:34:19 +00:00
public:
int32 m_nChaos;
int32 m_nLastUpdateTime;
int32 m_nLastWantedLevelChange;
2019-06-16 22:16:38 +00:00
float m_fCrimeSensitivity;
2019-07-04 20:31:21 +00:00
uint8 m_CurrentCops;
uint8 m_MaxCops;
uint8 m_MaximumLawEnforcerVehicles;
2019-06-14 23:34:19 +00:00
int8 field_19;
2019-07-04 20:31:21 +00:00
int16 m_RoadblockDensity;
2019-06-26 21:31:12 +00:00
uint8 m_IsIgnoredByCops : 1;
uint8 m_IsIgnoredByEveryOne : 1;
uint8 m_IsSwatRequired : 1;
uint8 m_IsFbiRequired : 1;
uint8 m_IdArmyRequired : 1;
2019-06-14 23:34:19 +00:00
int8 field_23;
int32 m_nWantedLevel;
CCrime m_sCrimes[16];
CCopPed *m_pCops[10];
2019-07-04 20:31:21 +00:00
static int32 &MaximumWantedLevel;
2019-06-26 21:31:12 +00:00
public:
bool AreSwatRequired();
bool AreFbiRequired();
bool AreArmyRequired();
int NumOfHelisRequired();
2019-07-04 20:31:21 +00:00
void SetWantedLevel(int32);
2019-07-09 16:50:35 +00:00
void SetWantedLevelNoDrop(int32 level);
2019-07-04 20:31:21 +00:00
void ClearQdCrimes();
void UpdateWantedLevel();
2019-06-14 23:34:19 +00:00
};
static_assert(sizeof(CWanted) == 0x204, "CWanted: error");