From 6ff06ff7c6d515533d8c18d1ce673c78a18695e2 Mon Sep 17 00:00:00 2001 From: Sergeanur Date: Thu, 23 Jan 2020 19:32:35 +0200 Subject: Partial CBoat --- src/vehicles/Boat.h | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) (limited to 'src/vehicles/Boat.h') diff --git a/src/vehicles/Boat.h b/src/vehicles/Boat.h index 52f3530c..d3a2ac13 100644 --- a/src/vehicles/Boat.h +++ b/src/vehicles/Boat.h @@ -17,7 +17,14 @@ public: float m_fMovingHiRotation; int32 _unk0; RwFrame *m_aBoatNodes[4]; - uint8 m_nBoatFlags; + uint8 m_bBoatFlag1 : 1; + uint8 m_bBoatFlag2 : 1; + uint8 m_bBoatFlag3 : 1; + uint8 m_bBoatFlag4 : 1; + uint8 m_bBoatFlag5 : 1; + uint8 m_bBoatFlag6 : 1; + uint8 m_bBoatFlag7 : 1; + uint8 m_bBoatFlag8 : 1; bool m_bIsAnchored; char _pad0[2]; float field_2C4; @@ -41,9 +48,19 @@ public: float m_afWakePointLifeTime[32]; CBoat(int, uint8); - CBoat* ctor(int, uint8); - void dtor() { this->CBoat::~CBoat(); }; + + virtual void SetModelIndex(uint32 id); + virtual void ProcessControl(); + virtual void Teleport(CVector v); + virtual void PreRender(void) {}; + virtual void Render(void); + virtual void ProcessControlInputs(uint8); + virtual void GetComponentWorldPosition(int32 component, CVector &pos); + virtual bool IsComponentPresent(int32 component) { return true; } + virtual void BlowUpCar(CEntity *ent); + void SetupModelNodes(); + static CBoat *(&apFrameWakeGeneratingBoats)[4]; static bool IsSectorAffectedByWake(CVector2D sector, float fSize, CBoat **apBoats); -- cgit v1.2.3