2019-06-02 17:13:56 +02:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include "Ped.h"
|
2019-06-15 01:34:19 +02:00
|
|
|
#include "Wanted.h"
|
2019-06-02 17:13:56 +02:00
|
|
|
|
2019-06-17 02:10:55 +02:00
|
|
|
class CPlayerPed : public CPed
|
|
|
|
{
|
2019-06-02 17:13:56 +02:00
|
|
|
public:
|
2019-06-15 01:34:19 +02:00
|
|
|
CWanted *m_pWanted;
|
|
|
|
CCopPed *m_pArrestingCop;
|
2019-06-17 00:16:38 +02:00
|
|
|
float m_fMoveSpeed;
|
|
|
|
float m_fCurrentStamina;
|
|
|
|
float m_fMaxStamina;
|
|
|
|
float m_fStaminaProgress;
|
2019-08-02 00:04:30 +02:00
|
|
|
uint8 m_nSelectedWepSlot;
|
2019-06-17 00:16:38 +02:00
|
|
|
bool m_bSpeedTimerFlag;
|
|
|
|
bool m_bShouldEvade;
|
2019-06-15 01:34:19 +02:00
|
|
|
int8 field_1367;
|
|
|
|
int32 m_nSpeedTimer;
|
|
|
|
int32 m_nShotDelay;
|
2019-08-02 00:04:30 +02:00
|
|
|
float field_1376; // m_fAttackButtonCounter?
|
|
|
|
int8 field_1380; // bHaveTargetSelected?
|
2019-06-15 01:34:19 +02:00
|
|
|
int8 field_1381;
|
|
|
|
int8 field_1382;
|
|
|
|
int8 field_1383;
|
|
|
|
CEntity *m_pEvadingFrom;
|
|
|
|
int32 m_nTargettableObjects[4];
|
2019-06-17 00:16:38 +02:00
|
|
|
bool m_bAdrenalineActive;
|
|
|
|
bool m_bHasLockOnTarget;
|
2019-06-15 01:34:19 +02:00
|
|
|
int8 field_1406;
|
|
|
|
int8 field_1407;
|
2019-09-13 21:04:55 +02:00
|
|
|
uint32 m_nAdrenalineTime;
|
2019-06-17 00:16:38 +02:00
|
|
|
bool m_bCanBeDamaged;
|
2019-06-15 01:34:19 +02:00
|
|
|
int8 field_1413;
|
|
|
|
int8 field_1414;
|
|
|
|
int8 field_1415;
|
2019-08-02 00:04:30 +02:00
|
|
|
CVector m_vecSafePos[6]; // safe places from the player, for example behind a tree
|
2019-09-29 18:44:51 +02:00
|
|
|
CPed *m_pPedAtSafePos[6];
|
2019-07-03 18:34:42 +02:00
|
|
|
float m_fWalkAngle;
|
2019-06-17 00:16:38 +02:00
|
|
|
float m_fFPSMoveHeading;
|
2019-06-29 13:38:37 +02:00
|
|
|
|
2019-08-02 00:04:30 +02:00
|
|
|
CPlayerPed();
|
2019-06-30 12:59:55 +02:00
|
|
|
~CPlayerPed();
|
|
|
|
|
2019-06-29 13:38:37 +02:00
|
|
|
void ReApplyMoveAnims(void);
|
2019-08-02 00:04:30 +02:00
|
|
|
void ClearWeaponTarget(void);
|
2019-07-09 18:50:35 +02:00
|
|
|
void SetWantedLevel(int32 level);
|
|
|
|
void SetWantedLevelNoDrop(int32 level);
|
2019-07-11 12:48:49 +02:00
|
|
|
void KeepAreaAroundPlayerClear(void);
|
2019-07-18 04:26:46 +02:00
|
|
|
void AnnoyPlayerPed(bool);
|
2019-08-02 00:04:30 +02:00
|
|
|
void MakeChangesForNewWeapon(int8);
|
|
|
|
void SetInitialState(void);
|
|
|
|
void SetMoveAnim(void);
|
|
|
|
void ProcessControl(void);
|
2019-09-13 21:04:55 +02:00
|
|
|
void ClearAdrenaline(void);
|
2019-10-07 23:29:30 +02:00
|
|
|
class CPlayerInfo *GetPlayerInfoForThisPlayerPed();
|
2019-07-09 22:38:05 +02:00
|
|
|
|
|
|
|
static void SetupPlayerPed(int32);
|
|
|
|
static void DeactivatePlayerPed(int32);
|
|
|
|
static void ReactivatePlayerPed(int32);
|
2019-06-02 17:13:56 +02:00
|
|
|
};
|
2019-06-15 01:34:19 +02:00
|
|
|
|
2019-06-02 17:13:56 +02:00
|
|
|
static_assert(sizeof(CPlayerPed) == 0x5F0, "CPlayerPed: error");
|