2019-06-14 23:34:19 +00:00
|
|
|
#pragma once
|
2019-06-29 09:09:33 +00:00
|
|
|
|
|
|
|
#include "Collision.h"
|
2019-06-14 23:34:19 +00:00
|
|
|
|
2019-06-17 00:10:55 +00:00
|
|
|
enum eWastedBustedState
|
|
|
|
{
|
|
|
|
WBSTATE_PLAYING,
|
|
|
|
WBSTATE_WASTED,
|
|
|
|
WBSTATE_BUSTED,
|
|
|
|
WBSTATE_FAILED_CRITICAL_MISSION,
|
2019-06-14 23:34:19 +00:00
|
|
|
};
|
|
|
|
|
2019-06-29 09:09:33 +00:00
|
|
|
class CVehicle;
|
|
|
|
class CPlayerPed;
|
|
|
|
class CCivilianPed;
|
2019-06-14 23:34:19 +00:00
|
|
|
|
2019-06-17 00:10:55 +00:00
|
|
|
class CPlayerInfo
|
|
|
|
{
|
2019-06-14 23:34:19 +00:00
|
|
|
public:
|
|
|
|
CPlayerPed *m_pPed;
|
|
|
|
CVehicle *m_pRemoteVehicle;
|
|
|
|
CColModel m_ColModel;
|
2019-07-26 12:27:13 +00:00
|
|
|
CVehicle *m_pVehicleEx; // vehicle using the col model above
|
2019-06-29 09:09:33 +00:00
|
|
|
char m_aPlayerName[70];
|
2019-06-14 23:34:19 +00:00
|
|
|
int32 m_nMoney;
|
|
|
|
int32 m_nVisibleMoney;
|
|
|
|
int32 m_nCollectedPackages;
|
|
|
|
int32 m_nTotalPackages;
|
2019-09-03 16:53:04 +00:00
|
|
|
uint32 m_nLastBumpPlayerCarTimer;
|
2019-11-25 02:25:10 +00:00
|
|
|
uint32 m_nSwitchTaxiTime;
|
2019-06-16 22:16:38 +00:00
|
|
|
bool m_bSwitchTaxi;
|
2019-06-14 23:34:19 +00:00
|
|
|
int8 field_197;
|
|
|
|
int8 field_198;
|
|
|
|
int8 field_199;
|
2019-11-25 02:25:10 +00:00
|
|
|
uint32 m_nNextSexFrequencyUpdateTime;
|
|
|
|
uint32 m_nNextSexMoneyUpdateTime;
|
2019-06-14 23:34:19 +00:00
|
|
|
int32 m_nSexFrequency;
|
|
|
|
CCivilianPed *m_pHooker;
|
2019-06-29 09:09:33 +00:00
|
|
|
int8 m_WBState; // eWastedBustedState
|
2019-06-14 23:34:19 +00:00
|
|
|
int8 field_217;
|
|
|
|
int8 field_218;
|
|
|
|
int8 field_219;
|
|
|
|
int32 m_nWBTime;
|
2019-06-16 22:16:38 +00:00
|
|
|
bool m_bInRemoteMode;
|
2019-06-14 23:34:19 +00:00
|
|
|
int8 field_225;
|
|
|
|
int8 field_226;
|
|
|
|
int8 field_227;
|
2019-07-25 14:33:37 +00:00
|
|
|
uint32 m_nTimeLostRemoteCar;
|
|
|
|
uint32 m_nTimeLastHealthLoss;
|
|
|
|
uint32 m_nTimeLastArmourLoss;
|
|
|
|
uint32 m_nTimeTankShotGun;
|
2019-06-14 23:34:19 +00:00
|
|
|
int32 m_nUpsideDownCounter;
|
|
|
|
int32 field_248;
|
|
|
|
int16 m_nTrafficMultiplier;
|
|
|
|
int8 field_254;
|
|
|
|
int8 field_255;
|
2019-06-16 22:16:38 +00:00
|
|
|
float m_fRoadDensity;
|
2019-11-25 02:25:10 +00:00
|
|
|
uint32 m_nPreviousTimeRewardedForExplosion;
|
2019-06-14 23:34:19 +00:00
|
|
|
int32 m_nExplosionsSinceLastReward;
|
|
|
|
int32 field_268;
|
|
|
|
int32 field_272;
|
2019-06-16 22:16:38 +00:00
|
|
|
bool m_bInfiniteSprint;
|
|
|
|
bool m_bFastReload;
|
|
|
|
bool m_bGetOutOfJailFree;
|
|
|
|
bool m_bGetOutOfHospitalFree;
|
2019-07-10 07:57:08 +00:00
|
|
|
char m_aSkinName[32];
|
2019-06-14 23:34:19 +00:00
|
|
|
RwTexture *m_pSkinTexture;
|
2019-07-03 22:16:24 +00:00
|
|
|
|
|
|
|
void MakePlayerSafe(bool);
|
2019-07-10 07:57:08 +00:00
|
|
|
void LoadPlayerSkin();
|
2019-09-28 18:39:58 +00:00
|
|
|
void DeletePlayerSkin();
|
2019-07-10 07:57:08 +00:00
|
|
|
void AwardMoneyForExplosion(CVehicle *vehicle);
|
|
|
|
void SetPlayerSkin(char* skin);
|
2019-07-25 20:34:29 +00:00
|
|
|
CVector& GetPos();
|
2019-09-12 00:43:18 +00:00
|
|
|
void Process(void);
|
2019-10-07 21:29:30 +00:00
|
|
|
void KillPlayer(void);
|
|
|
|
void ArrestPlayer(void);
|
2019-10-21 21:39:59 +00:00
|
|
|
bool IsPlayerInRemoteMode(void);
|
|
|
|
void PlayerFailedCriticalMission(void);
|
2019-06-14 23:34:19 +00:00
|
|
|
};
|
|
|
|
|
2019-06-29 09:09:33 +00:00
|
|
|
static_assert(sizeof(CPlayerInfo) == 0x13C, "CPlayerInfo: error");
|