summaryrefslogtreecommitdiffstats
path: root/src/peds/Population.h
diff options
context:
space:
mode:
authoreray orçunus <erayorcunus@gmail.com>2020-02-16 03:15:58 +0100
committereray orçunus <erayorcunus@gmail.com>2020-02-17 13:57:50 +0100
commitff92b822b673e77c9fa9af6ecbab5745a6ff01d8 (patch)
tree757d2859d10e97cd59474decd744405ba7af37fd /src/peds/Population.h
parentMerge pull request #326 from erorcun/erorcun (diff)
downloadre3-ff92b822b673e77c9fa9af6ecbab5745a6ff01d8.tar
re3-ff92b822b673e77c9fa9af6ecbab5745a6ff01d8.tar.gz
re3-ff92b822b673e77c9fa9af6ecbab5745a6ff01d8.tar.bz2
re3-ff92b822b673e77c9fa9af6ecbab5745a6ff01d8.tar.lz
re3-ff92b822b673e77c9fa9af6ecbab5745a6ff01d8.tar.xz
re3-ff92b822b673e77c9fa9af6ecbab5745a6ff01d8.tar.zst
re3-ff92b822b673e77c9fa9af6ecbab5745a6ff01d8.zip
Diffstat (limited to '')
-rw-r--r--src/peds/Population.h (renamed from src/control/Population.h)33
1 files changed, 29 insertions, 4 deletions
diff --git a/src/control/Population.h b/src/peds/Population.h
index 572d6f58..c8f6f985 100644
--- a/src/control/Population.h
+++ b/src/peds/Population.h
@@ -1,19 +1,37 @@
#pragma once
#include "Game.h"
+#include "PedType.h"
class CPed;
class CVehicle;
struct PedGroup
{
- int32 models[8];
+ int32 models[NUMMODELSPERPEDGROUP];
+};
+
+// Don't know the original name
+struct RegenerationPoint
+{
+ eLevelName srcLevel; // this and below one may need to be exchanged
+ eLevelName destLevel;
+ float x1;
+ float x2;
+ float y1;
+ float y2;
+ float z1;
+ float z2;
+ CVector destPosA;
+ CVector destPosB;
+ CVector srcPosA;
+ CVector srcPosB;
};
class CPopulation
{
public:
- static PedGroup *ms_pPedGroups; //[31]
+ static PedGroup (&ms_pPedGroups)[NUMPEDGROUPS];
static bool &ms_bGivePedsWeapons;
static int32 &m_AllRandomPedsThisType;
static float &PedDensityMultiplier;
@@ -38,14 +56,21 @@ public:
static uint32& ms_nNumGang9;
static uint32& ms_nNumGang7;
static uint32& ms_nNumGang8;
+ static CVector& RegenerationPoint_a;
+ static CVector& RegenerationPoint_b;
+ static CVector& RegenerationForward;
static void Initialise();
static void Update(void);
static void LoadPedGroups();
- static void UpdatePedCount(uint32, bool);
+ static void UpdatePedCount(ePedType, bool);
static void DealWithZoneChange(eLevelName oldLevel, eLevelName newLevel, bool);
static CPed *AddPedInCar(CVehicle *vehicle);
static bool IsPointInSafeZone(CVector *coors);
- static void RemovePed(CEntity* ent);
+ static void RemovePed(CPed *ent);
static int32 ChooseCivilianOccupation(int32);
+ static int32 ChoosePolicePedOccupation();
+ static int32 ChooseGangOccupation(int);
+ static void FindCollisionZoneForCoors(CVector*, int*, eLevelName*);
+ static void FindClosestZoneForCoors(CVector*, int*, eLevelName, eLevelName);
};