summaryrefslogtreecommitdiffstats
path: root/src/peds/Ped.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/peds/Ped.h')
-rw-r--r--src/peds/Ped.h62
1 files changed, 50 insertions, 12 deletions
diff --git a/src/peds/Ped.h b/src/peds/Ped.h
index bc61d170..f5e6d95a 100644
--- a/src/peds/Ped.h
+++ b/src/peds/Ped.h
@@ -429,23 +429,54 @@ public:
uint32 bVehExitWillBeInstant : 1;
uint32 bHasAlreadyBeenRecorded : 1;
uint32 bFallenDown : 1;
-#ifdef VC_PED_PORTS
- uint32 bSomeVCflag1 : 1;
-#endif
#ifdef PED_SKIN
uint32 bDontAcceptIKLookAts : 1; // TODO: find uses of this
#endif
+ uint32 bReachedAttractorHeadingTarget : 1;
+ uint32 bTurnedAroundOnAttractor : 1;
+
+ uint32 bHasAlreadyUsedAttractor : 1;
+ //uint32 b155_2
+ uint32 bCarPassenger : 1;
+ //uint32 b155_8
+ //uint32 b155_10
+ uint32 bMiamiViceCop : 1;
+ //uint32 b155_40
+ //uint32 b155_80
+
+ //uint32 b156_1
+ //uint32 b156_2
+ //uint32 b156_4
+ //uint32 b156_8
+ uint32 bIsPlayerFriend : 1;
+#ifdef VC_PED_PORTS
+ uint32 bHeadStuckInCollision : 1;
+#endif
+ uint32 bDeadPedInFrontOfCar : 1;
+ //uint32 b156_80
+
+ //uint32 b157_1
+ //uint32 b157_2
+ //uint32 b157_4
+ //uint32 b157_8
+ //uint32 b157_10
+ //uint32 b157_20
+ //uint32 b157_40
+ //uint32 b157_80
+
+ //uint32 b158_1
+ //uint32 b158_2
+ //uint32 b158_4
+ //uint32 b158_8
+ //uint32 b158_10
+ //uint32 b158_20
+ //uint32 b158_40
+ //uint32 b158_80
+
// our own flags
uint32 m_ped_flagI40 : 1; // bMakePedsRunToPhonesToReportCrimes makes use of this as runover by car indicator
uint32 m_ped_flagI80 : 1; // KANGAROO_CHEAT define makes use of this as cheat toggle
- uint32 bReachedAttractorHeadingTarget : 1; // 0x154 0x40
- uint32 bTurnedAroundOnAttractor : 1; // 0x154 0x80
- uint32 bHasAlreadyUsedAttractor : 1; // 0x155 0x1
- uint32 bCarPassenger : 1; // 0x155 0x4
- uint32 bMiamiViceCop : 1; // 0x155 0x20
- uint32 bDeadPedInFrontOfCar : 1; // 0x156 0x40
-
uint8 m_gangFlags;
uint8 CharCreatedBy;
eObjective m_objective;
@@ -678,7 +709,9 @@ public:
void SetPointGunAt(CEntity*);
bool Seek(void);
bool SetWanderPath(int8);
- bool SetFollowPath(CVector);
+ bool SetFollowPath(CVector dest, float radius, eMoveState state, CEntity*, CEntity*, int);
+ bool SetFollowPathStatic(void);
+ bool SetFollowPathDynamic(void);
void ClearAttackByRemovingAnim(void);
void SetStoredState(void);
void StopNonPartialAnims(void);
@@ -886,7 +919,12 @@ public:
CWeapon *GetWeapon(void) { return &m_weapons[m_currentWeapon]; }
PedState GetPedState(void) { return m_nPedState; }
- void SetPedState(PedState state) { m_nPedState = state; }
+ void SetPedState(PedState state)
+ {
+ if (GetPedState() == PED_FOLLOW_PATH)
+ ClearFollowPath();
+ m_nPedState = state;
+ }
bool Dead(void) { return m_nPedState == PED_DEAD; }
bool Dying(void) { return m_nPedState == PED_DIE; }
bool DyingOrDead(void) { return m_nPedState == PED_DIE || m_nPedState == PED_DEAD; }