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"
#pragma pack(push, 1)
class CAutomobile
{
public:
@ -21,8 +22,11 @@ public:
class CHandlingData* m_handling; //0x0938
char pad_0940[2]; //0x0940
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
}; //Size: 0x0C60
static_assert(sizeof(CAutomobile) == 0xC60);
#pragma pack(pop)

View File

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

View File

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

View File

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

View File

@ -1,4 +1,5 @@
#pragma once
#include "CAmmonInfo.hpp"
#pragma pack(push, 1)
@ -6,8 +7,33 @@ class CWeaponInfo
{
public:
char pad_0000[16]; //0x0000
uint32_t m_model_hash; //0x0010
}; //Size: 0x0014
static_assert(sizeof(CWeaponInfo) == 0x14);
uint32_t m_name_hash; //0x0010
uint32_t m_model_hash; //0x0014
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)