2019-05-19 19:28:10 +00:00
|
|
|
#pragma once
|
|
|
|
|
2019-06-24 22:42:23 +00:00
|
|
|
#include "DamageManager.h"
|
|
|
|
#include "Door.h"
|
|
|
|
#include "RwHelper.h"
|
2019-05-19 19:28:10 +00:00
|
|
|
#include "Vehicle.h"
|
|
|
|
|
|
|
|
class CAutomobile : public CVehicle
|
|
|
|
{
|
|
|
|
public:
|
2019-06-02 15:13:56 +00:00
|
|
|
// 0x288
|
2019-06-24 22:42:23 +00:00
|
|
|
CDamageManager m_DamageManager;
|
|
|
|
CDoor m_aDoors[6];
|
|
|
|
RwFrame *m_apModelNodes[20];
|
|
|
|
uint8 stuff1[160];
|
2019-05-19 19:28:10 +00:00
|
|
|
float m_afWheelSuspDist[4];
|
2019-06-24 22:42:23 +00:00
|
|
|
uint8 stuff2[44];
|
|
|
|
float m_afWheelRotation[4];
|
|
|
|
uint8 stuff3[200];
|
|
|
|
float m_fCarGunLR;
|
2019-06-29 20:15:55 +00:00
|
|
|
uint8 stuff4[13];
|
|
|
|
uint8 m_nDriveWheelsOnGround;
|
|
|
|
uint8 stuff5[22];
|
2019-06-24 22:42:23 +00:00
|
|
|
|
2019-06-30 10:59:55 +00:00
|
|
|
CAutomobile(int, uint8);
|
|
|
|
CAutomobile* ctor(int, uint8);
|
2019-06-24 22:42:23 +00:00
|
|
|
void SetDoorDamage(int32, uint32, bool); /* TODO: eDoors */
|
2019-06-30 21:15:34 +00:00
|
|
|
void SetPanelDamage(int32, uint32, bool); /* TODO: ePanels */
|
|
|
|
void SetBumperDamage(int32, uint32, bool); /* TODO: ePanels */
|
2019-06-30 10:59:55 +00:00
|
|
|
void dtor() { this->CAutomobile::~CAutomobile(); }
|
2019-05-19 19:28:10 +00:00
|
|
|
};
|
|
|
|
static_assert(sizeof(CAutomobile) == 0x5A8, "CAutomobile: error");
|
|
|
|
static_assert(offsetof(CAutomobile, m_afWheelSuspDist) == 0x46C, "CAutomobile: error");
|