diff options
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); }; |