diff options
Diffstat (limited to 'src/vehicles/Door.h')
-rw-r--r-- | src/vehicles/Door.h | 31 |
1 files changed, 29 insertions, 2 deletions
diff --git a/src/vehicles/Door.h b/src/vehicles/Door.h index 7bb7bba3..567d3263 100644 --- a/src/vehicles/Door.h +++ b/src/vehicles/Door.h @@ -11,8 +11,9 @@ enum eDoorState DOORST_CLOSED }; -struct CDoor +class CDoor { +public: float m_fMaxAngle; float m_fMinAngle; // direction of rotation for air resistance @@ -34,9 +35,35 @@ struct CDoor } void Open(float ratio); void Process(CVehicle *veh); - float RetAngleWhenClosed(void); + float RetAngleWhenClosed(void); // dead float RetAngleWhenOpen(void); float GetAngleOpenRatio(void); bool IsFullyOpen(void); + bool IsClosed(void); // dead +}; + +class CTrainDoor +{ +public: + float m_fClosedPosn; + float m_fOpenPosn; + int8 m_nDirn; + int8 m_nDoorState; // same enum as above? + int8 m_nAxis; + float m_fPosn; + float m_fPrevPosn; + int field_14; // unused? + + CTrainDoor(void); + void Init(float open, float closed, int8 dir, int8 axis) { + m_fOpenPosn = open; + m_fClosedPosn = closed; + m_nDirn = dir; + m_nAxis = axis; + } bool IsClosed(void); + bool IsFullyOpen(void); + float RetTranslationWhenClosed(void); + float RetTranslationWhenOpen(void); + void Open(float ratio); }; |