feat(Core/Classes): Updated GTA classes

This commit is contained in:
Yimura 2021-07-26 21:22:32 +02:00
parent 9a95f5962c
commit 48737f5e16
6 changed files with 88 additions and 36 deletions

View File

@ -0,0 +1,13 @@
#pragma once
#pragma pack(push, 1)
class CAmmoInfo
{
public:
char pad_0000[40]; //0x0000
uint32_t m_max_ammo; //0x0028
}; //Size: 0x002C
static_assert(sizeof(CAmmoInfo) == 0x2C);
#pragma pack(pop)

View File

@ -3,6 +3,7 @@
#include "CVehicleDrawHandler.hpp" #include "CVehicleDrawHandler.hpp"
#pragma pack(push, 1) #pragma pack(push, 1)
class CAutomobile class CAutomobile
{ {
public: public:
@ -21,8 +22,11 @@ public:
class CHandlingData* m_handling; //0x0938 class CHandlingData* m_handling; //0x0938
char pad_0940[2]; //0x0940 char pad_0940[2]; //0x0940
uint8_t m_bullet_proof_tyres; //0x0942 uint8_t m_bullet_proof_tyres; //0x0942
char pad_0943[793]; //0x0943 char pad_0943[1]; //0x0943
uint8_t m_deform_god; //0x0944
char pad_0945[791]; //0x0945
float m_gravity; //0x0C5C float m_gravity; //0x0C5C
}; //Size: 0x0C60 }; //Size: 0x0C60
static_assert(sizeof(CAutomobile) == 0xC60); static_assert(sizeof(CAutomobile) == 0xC60);
#pragma pack(pop) #pragma pack(pop)

View File

@ -2,6 +2,7 @@
#include "gta/vector.hpp" #include "gta/vector.hpp"
#pragma pack(push, 1) #pragma pack(push, 1)
class CHandlingData class CHandlingData
{ {
public: public:
@ -78,4 +79,5 @@ public:
uint32_t m_ai_handling_hash; //0x013C uint32_t m_ai_handling_hash; //0x013C
}; //Size: 0x0140 }; //Size: 0x0140
static_assert(sizeof(CHandlingData) == 0x140); static_assert(sizeof(CHandlingData) == 0x140);
#pragma pack(pop) #pragma pack(pop)

View File

@ -8,7 +8,9 @@ class CPedWeaponManager
public: public:
char pad_0000[32]; //0x0000 char pad_0000[32]; //0x0000
class CWeaponInfo* m_weapon_info; //0x0020 class CWeaponInfo* m_weapon_info; //0x0020
}; //Size: 0x0028 char pad_0028[72]; //0x0028
static_assert(sizeof(CPedWeaponManager) == 0x28); class CWeaponInfo* m_vehicle_weapon_info; //0x0070
}; //Size: 0x0078
static_assert(sizeof(CPedWeaponManager) == 0x78);
#pragma pack(pop) #pragma pack(pop)

View File

@ -14,35 +14,40 @@ public:
char pad_0042[2]; //0x0042 char pad_0042[2]; //0x0042
uint32_t m_external_ip; //0x0044 uint32_t m_external_ip; //0x0044
uint16_t m_external_port; //0x0048 uint16_t m_external_port; //0x0048
char pad_004A[38]; //0x004A char pad_004A[90]; //0x004A
uint64_t m_rockstar_id; //0x0070 char m_name[20]; //0x00A4
char pad_0078[12]; //0x0078 char pad_00B8[184]; //0x00B8
char m_name[20]; //0x0084 float m_swim_speed; //0x0170
char pad_0098[180]; //0x0098 char pad_0174[20]; //0x0174
float m_swim_speed; //0x014C uint32_t m_water_proof; //0x0188
float m_run_speed; //0x0150 char pad_018C[92]; //0x018C
char pad_0154[81]; //0x0154 class CPed* m_ped; //0x01E8
bool m_is_rockstar_dev; //0x01A5 char pad_01F0[41]; //0x01F0
char pad_01A6[1]; //0x01A6 uint32_t m_frame_flags; //0x0219
bool m_is_cheater; //0x01A7 char pad_021D[51]; //0x021D
char pad_01A8[11]; //0x01A8 uint32_t m_player_controls; //0x0250
bool m_is_online; //0x01B3 char pad_0254[1256]; //0x0254
char pad_01B4[20]; //0x01B4 float m_wanted_can_change; //0x073C
class CPed* m_ped; //0x01C8 char pad_0740[304]; //0x0740
char pad_01D0[40]; //0x01D0 uint32_t m_npc_ignore; //0x0870
uint32_t m_frame_flags; //0x01F8 char pad_0874[12]; //0x0874
char pad_01FC[28]; //0x01FC bool m_is_wanted; //0x0880
uint32_t m_player_controls; //0x0218 char pad_0881[7]; //0x0881
char pad_021C[1604]; //0x021C uint32_t m_wanted_level; //0x0888
bool m_is_wanted; //0x0860 char pad_088C[1124]; //0x088C
char pad_0861[3]; //0x0861 float m_run_speed; //0x0CF0
int8_t m_wanted_level_display; //0x0864 float m_stamina; //0x0CF4
char pad_0865[3]; //0x0865 float m_stamina_max; //0x0CF8
int8_t m_wanted_level; //0x0868 char pad_0CFC[16]; //0x0CFC
char pad_0869[1131]; //0x0869 float m_weapon_damage_mult; //0x0D0C
float m_stamina; //0x0CD4 float m_weapon_defence_mult; //0x0D10
float m_max_stamina; //0x0CD8 char pad_0D14[4]; //0x0D14
}; //Size: 0x0CDC float m_melee_weapon_damage_mult; //0x0D18
static_assert(sizeof(CPlayerInfo) == 0xCDC); float m_melee_damage_mult; //0x0D1C
float m_melee_defence_mult; //0x0D20
char pad_0D24[8]; //0x0D24
float m_melee_weapon_defence_mult; //0x0D2C
}; //Size: 0x0D30
static_assert(sizeof(CPlayerInfo) == 0xD30);
#pragma pack(pop) #pragma pack(pop)

View File

@ -1,4 +1,5 @@
#pragma once #pragma once
#include "CAmmonInfo.hpp"
#pragma pack(push, 1) #pragma pack(push, 1)
@ -6,8 +7,33 @@ class CWeaponInfo
{ {
public: public:
char pad_0000[16]; //0x0000 char pad_0000[16]; //0x0000
uint32_t m_model_hash; //0x0010 uint32_t m_name_hash; //0x0010
}; //Size: 0x0014 uint32_t m_model_hash; //0x0014
static_assert(sizeof(CWeaponInfo) == 0x14); char pad_0018[12]; //0x0018
uint32_t m_impact_explosion; //0x0024
char pad_0028[56]; //0x0028
class CAmmoInfo* m_ammo_info; //0x0060
char pad_0068[20]; //0x0068
float m_spread; //0x007C
char pad_0080[60]; //0x0080
float m_bullet_dmg; //0x00BC
char pad_00C0[28]; //0x00C0
float m_force_on_ped; //0x00DC
float m_force_on_vehicle; //0x00E0
float m_force_on_heli; //0x00E4
char pad_00E8[40]; //0x00E8
float m_penetration; //0x0110
char pad_0114[8]; //0x0114
float m_muzzle_velocity; //0x011C
char pad_0120[16]; //0x0120
float m_vehicle_reload_mult; //0x0130
float m_reload_mult; //0x0134
char pad_0138[12]; //0x0138
float m_spinup; //0x0144
float m_spin; //0x0148
char pad_014C[320]; //0x014C
float m_weapon_range; //0x028C
}; //Size: 0x0290
static_assert(sizeof(CWeaponInfo) == 0x290);
#pragma pack(pop) #pragma pack(pop)