summaryrefslogtreecommitdiff
path: root/src/core/Wanted.h
blob: d3f6638bca57b1663898507918364101dac0f20e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#pragma once
#include "Entity.h"
#include "math/Vector.h"
#include "CopPed.h"

enum eWantedLevel {
	NOTWANTED,
	WANTEDLEVEL_1,
	WANTEDLEVEL_2,
	WANTEDLEVEL_3,
	WANTEDLEVEL_4,
	WANTEDLEVEL_5,
	WANTEDLEVEL_6,
};

class CWanted
{
public:
	int32 m_nChaos;
	int32 m_nLastUpdateTime;
	int32 m_nLastWantedLevelChange;
	float m_fCrimeSensitivity;
	uint8 m_CurrentCops;
	uint8 m_MaxCops;
	uint8 m_MaximumLawEnforcerVehicles;
	int8 field_19;
	int16 m_RoadblockDensity;
	uint8 m_IsIgnoredByCops : 1;
	uint8 m_IsIgnoredByEveryOne : 1;
	uint8 m_IsSwatRequired : 1;
	uint8 m_IsFbiRequired : 1;
	uint8 m_IdArmyRequired : 1;
	int8 field_23;
	int32 m_nWantedLevel;
	CCrime m_sCrimes[16];
	CCopPed *m_pCops[10];
	static int32 &MaximumWantedLevel;

public:
	bool AreSwatRequired();
	bool AreFbiRequired();
	bool AreArmyRequired();
	int NumOfHelisRequired();
	void SetWantedLevel(int32);
	void SetWantedLevelNoDrop(int32 level);
	void ClearQdCrimes();
	void UpdateWantedLevel();
};

static_assert(sizeof(CWanted) == 0x204, "CWanted: error");