Added stuff for Allow All Weapons in Vehicle. (#122)

This commit is contained in:
gir489
2023-07-16 11:49:13 -04:00
committed by GitHub
parent 8559fe7a9e
commit 249d3ad290
14 changed files with 401 additions and 9 deletions
+14
View File
@@ -0,0 +1,14 @@
#include "CVehicleDriveByAnimInfo.hpp"
#pragma pack(push, 4)
class CDriveBySeatDefault
{
private:
char pad_0000[320]; //0x0000
public:
class CVehicleDriveByAnimInfo* m_driveby_standard_front_left; //0x0140
class CVehicleDriveByAnimInfo* m_driveby_standard_front_right; //0x0148
class CVehicleDriveByAnimInfo* m_driveby_standard_rear_left; //0x0150
class CVehicleDriveByAnimInfo* m_driveby_standard_rear_right; //0x0158
}; //Size: 0x0160
#pragma pack(pop)
+105
View File
@@ -0,0 +1,105 @@
#include "../rage/atArray.hpp"
#include "script/types.hpp"
class CDriveByWeaponGroupDefault
{
public:
Hash m_driveby_default_unarmed; //0x0000
private:
char pad_0004[4]; //0x0004
public:
rage::atArray<Hash> m_driveby_default_unarmed_weapon_group_names; //0x0008
rage::atArray<Hash> m_driveby_default_unarmed_weapon_type_names; //0x0018
private:
char pad_0028[8]; //0x0028
public:
Hash m_driveby_default_one_handed; //0x0030
private:
char pad_0034[4]; //0x0034
public:
rage::atArray<Hash> m_driveby_default_one_handed_weapon_group_names; //0x0038
rage::atArray<Hash> m_driveby_default_one_handed_weapon_type_names; //0x0048
private:
char pad_0058[8]; //0x0058
public:
Hash m_driveby_default_two_handed; //0x0060
private:
char pad_0064[4]; //0x0064
public:
rage::atArray<Hash> m_driveby_default_two_handed_weapon_group_names; //0x0068
rage::atArray<Hash> m_driveby_default_two_handed_weapon_type_names; //0x0078
private:
char pad_0088[8]; //0x0088
public:
Hash m_driveby_heli_two_handed; //0x0090
private:
char pad_0094[4]; //0x0094
public:
rage::atArray<Hash> m_driveby_heli_two_handed_weapon_group_names; //0x0098
rage::atArray<Hash> m_driveby_heli_two_handed_weapon_type_names; //0x00A8
private:
char pad_00B8[56]; //0x00B8
public:
Hash m_driveby_heli_rpg; //0x00F0
private:
char pad_00F4[4]; //0x00F4
public:
rage::atArray<Hash> m_driveby_heli_rpg_weapon_group_names; //0x00F8
rage::atArray<Hash> m_driveby_heli_rpg_weapon_type_names; //0x0108
private:
char pad_0118[8]; //0x0118
public:
Hash m_driveby_default_rear_one_handed; //0x0120
private:
char pad_0124[4]; //0x0124
public:
rage::atArray<Hash> m_driveby_default_rear_one_handed_weapon_group_names; //0x0128
rage::atArray<Hash> m_driveby_default_rear_one_handed_weapon_type_names; //0x0138
private:
char pad_0148[8]; //0x0148
public:
Hash m_driveby_bike_one_handed; //0x0150
private:
char pad_0154[4]; //0x0154
public:
rage::atArray<Hash> m_driveby_bike_one_handed_weapon_group_names; //0x0158
rage::atArray<Hash> m_driveby_bike_one_handed_weapon_type_names; //0x0168
private:
char pad_0178[56]; //0x0178
public:
Hash m_driveby_bike_melee; //0x01B0
private:
char pad_01B4[4]; //0x01B4
public:
rage::atArray<Hash> m_driveby_bike_melee_weapon_group_names; //0x01B8
rage::atArray<Hash> m_driveby_bike_melee_weapon_type_names; //0x01C8
private:
char pad_01D8[56]; //0x01D8
public:
Hash m_driveby_mounted_throw; //0x0210
private:
char pad_0214[4]; //0x0214
public:
rage::atArray<Hash> m_driveby_mounted_throw_weapon_group_names; //0x0218
rage::atArray<Hash> m_driveby_mounted_throw_weapon_type_names; //0x0228
private:
char pad_0238[8]; //0x0238
public:
Hash m_driveby_throw; //0x0240
private:
char pad_0244[4]; //0x0244
public:
rage::atArray<Hash> m_driveby_throw_weapon_group_names; //0x0248
rage::atArray<Hash> m_driveby_throw_weapon_type_names; //0x0258
private:
char pad_0268[8]; //0x0268
public:
Hash m_driveby_vehicle_weapon_group; //0x0270
private:
char pad_0274[4]; //0x0274
public:
rage::atArray<Hash> m_driveby_vehicle_weapon_group_weapon_group_names; //0x0278
rage::atArray<Hash> m_driveby_vehicle_weapon_group_weapon_type_names; //0x0288
private:
char pad_0298[8]; //0x0298
}; //Size: 0x02A0
+9
View File
@@ -0,0 +1,9 @@
#include "CDriveByWeaponGroupDefault.hpp"
#pragma pack(push, 4)
class CDrivebyWeaponGroups
{
public:
class CDriveByWeaponGroupDefault* m_drive_by_default; //0x0000
}; //Size: 0x0008
#pragma pack(pop)
+36
View File
@@ -0,0 +1,36 @@
#include "../rage/atArray.hpp"
#pragma once
#pragma pack(push, 4)
class CVehicleDriveByAnimInfo
{
public:
uint32_t m_name; //0x0000
float m_min_aim_sweep_heading_angle_degs; //0x0004
float m_max_aim_sweep_heading_angle_degs; //0x0008
float m_first_person_min_aim_sweep_heading_angle_degs; //0x000C
float m_first_person_max_aim_sweep_heading_angle_degs; //0x0010
float m_first_person_unarmed_min_aim_sweep_heading_angle_degs; //0x0014
float m_first_person_unarmed_max_aim_sweep_heading_angle_degs; //0x0018
uint64_t m_unk1; //0x001C
float m_min_restricted_aim_sweep_heading_angle_degs; //0x0024
float m_max_restricted_aim_sweep_heading_angle_degs; //0x0028
float m_min_smash_window_angle_degs; //0x002C
float m_max_smash_window_angle_degs; //0x0030
float m_min_smash_window_angle_first_person_degs; //0x0034
float m_max_smash_window_angle_first_person_degs; //0x0038
float m_max_speed_param; //0x003C
float m_max_longitudinal_lean_blend_weight_delta; //0x0040
float m_max_lateral_lean_blend_weight_delta; //0x0044
float m_approach_speed_to_within_max_blend_delta; //0x0048
float m_spine_additive_blend_in_delay; //0x004C
float m_spine_additive_blend_in_duration_still; //0x0050
float m_spine_additive_blend_in_duration; //0x0054
float m_spine_additive_blend_out_delay; //0x0058
float m_spine_additive_blend_out_duration; //0x005C
float m_min_unarmed_driveby_yaw_if_window_rolled_up; //0x0060
float m_max_unarmed_driveby_yaw_if_window_rolled_up; //0x0064
rage::atArray<const Hash*> m_drive_by_anim_infos; //0x0068
}; //Size: 0x0078
#pragma pack(pop)
+9
View File
@@ -0,0 +1,9 @@
#include "CDrivebyWeaponGroups.hpp"
#pragma pack(push, 4)
class CVehicleDriveByMetadataMgr
{
public:
class CDrivebyWeaponGroups* m_drive_by_weapon_groups; //0x0000
}; //Size: 0x0008
#pragma pack(pop)
+11
View File
@@ -0,0 +1,11 @@
#include "CVehicleSeatAnimInfos.hpp"
#pragma pack(push, 4)
class CVehicleLayoutMetaData
{
private:
char pad_0000[8]; //0x0000
public:
class CVehicleSeatAnimInfos* m_seat_info; //0x0008
}; //Size: 0x0010
#pragma pack(pop)
+8 -3
View File
@@ -1,6 +1,7 @@
#pragma once
#include "../base/CBaseModelInfo.hpp"
#include "vehicle/CVehicleModelInfoLayout.hpp"
#include <cstdint>
@@ -56,7 +57,8 @@ enum class eVehicleClass : std::uint8_t
class CVehicleModelInfo : public CBaseModelInfo
{
public:
char pad_00A4[72]; //0x00A4
CVehicleModelInfoLayout* m_vehicle_layout; //0x00B0
char pad_00B8[64]; //0x00B8
uint8_t m_primary_color_combinations[25]; //0x00F8
uint8_t m_secondary_color_combinations[25]; //0x0111
uint8_t m_unk_color_combos1[25]; //0x012A
@@ -73,8 +75,11 @@ public:
char pad_02D9[103]; //0x02D9
eVehicleType m_vehicle_type; //0x0340
uint32_t m_unk_vehicle_type; //0x0344
uint32_t m_diffuse_tint; //0x0348
char pad_034C[20]; //0x034C
uint16_t m_diffuse_tint; //0x0348
int8_t m_max_seats; //0x034A
char pad_034B[5]; //0x034B
CVehicleLayoutMetaData* m_layout_metadata; //0x0350
char pad_0358[8]; //0x0358
rage::fvector3 m_first_person_driveby_ik_offset; //0x0360
char pad_036C[4]; //0x036C
rage::fvector3 m_first_person_driveby_unarmed_ik_offset; //0x0370
+15
View File
@@ -0,0 +1,15 @@
#include "CVehicleLayoutMetaData.hpp"
#pragma pack(push, 4)
class CVehicleModelInfoLayout
{
private:
char pad_0000[842]; //0x0000
public:
int8_t m_max_seats; //0x034A
private:
char pad_034B[5]; //0x034B
public:
class CVehicleLayoutMetaData* m_layout_metadata; //0x0350
}; //Size: 0x0358
#pragma pack(pop)
+13
View File
@@ -0,0 +1,13 @@
#include "CVehicleDriveByAnimInfo.hpp"
#pragma pack(push, 4)
class CVehicleSeatAnimInfo
{
public:
uint32_t name; //0x0000
private:
char pad_0004[4]; //0x0004
public:
class CVehicleDriveByAnimInfo* m_drive_by_info; //0x0008
}; //Size: 0x0010
#pragma pack(pop)
+23
View File
@@ -0,0 +1,23 @@
#include "CVehicleSeatAnimInfo.hpp"
#pragma pack(push, 4)
class CVehicleSeatAnimInfos
{
private:
char pad_0000[8]; //0x0000
public:
class CVehicleSeatAnimInfo* m_front_left; //0x0008
private:
char pad_0010[8]; //0x0010
public:
class CVehicleSeatAnimInfo* m_front_right; //0x0018
private:
char pad_0020[8]; //0x0020
public:
class CVehicleSeatAnimInfo* m_rear_left; //0x0028
private:
char pad_0030[8]; //0x0030
public:
class CVehicleSeatAnimInfo* m_rear_right; //0x0038
}; //Size: 0x0040
#pragma pack(pop)
+9
View File
@@ -0,0 +1,9 @@
#include "vehicle/CDriveBySeatDefault.hpp"
#pragma pack(push, 4)
class CVehicleSeatMetadataMgr
{
public:
class CDriveBySeatDefault* m_drive_by_seat_defaults; //0x0000
}; //Size: 0x0008
#pragma pack(pop)