summaryrefslogtreecommitdiffstats
path: root/src/entities/Vehicle.h
blob: 1a43e075c1ff92363624af4aa8e4006977b5d224 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#pragma once

#include "Physical.h"

class CPed;

class CVehicle : public CPhysical
{
public:
	// 0x128
	uint8 stuff1[120];
	int16 m_nAlarmState;
	CPed *pDriver;
	CPed *pPassengers[8];
	uint8 stuff2[24];
	CEntity *m_pCurSurface;
	uint8 stuff3[160];
	int32 m_vehType;

	bool IsCar(void) { return m_vehType == VEHICLE_TYPE_CAR; }
	bool IsBoat(void) { return m_vehType == VEHICLE_TYPE_BOAT; }
	bool IsTrain(void) { return m_vehType == VEHICLE_TYPE_TRAIN; }
	bool IsHeli(void) { return m_vehType == VEHICLE_TYPE_HELI; }
	bool IsPlane(void) { return m_vehType == VEHICLE_TYPE_PLANE; }
};
static_assert(sizeof(CVehicle) == 0x288, "CVehicle: error");
static_assert(offsetof(CVehicle, m_pCurSurface) == 0x1E0, "CVehicle: error");