From c0c336500955a23e344651e5412c9d9d441ef4ee Mon Sep 17 00:00:00 2001 From: Ash Wolf Date: Wed, 28 Jun 2023 22:22:32 +0100 Subject: first pass of T2DLL --- src/T2DLL/T2MetroRailway.h | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 src/T2DLL/T2MetroRailway.h (limited to 'src/T2DLL/T2MetroRailway.h') diff --git a/src/T2DLL/T2MetroRailway.h b/src/T2DLL/T2MetroRailway.h new file mode 100644 index 0000000..40a7277 --- /dev/null +++ b/src/T2DLL/T2MetroRailway.h @@ -0,0 +1,35 @@ +#pragma once +#include "common.h" +#include "T2EventItem.h" +#include "T2Transport.h" + +class T2MetroRailway : public T2EventItem, public T2Transport { +public: + T2MetroRailway(T2TowerEvent* inTowerEvent, CResFile* inResFile, int inSubID); + T2MetroRailway(T2TowerEvent* inTowerEvent, int inSubID, int inLevelBit, BOOL inExclusive, int inCycleDay, int inBeginTime, int inEndTime); + virtual ~T2MetroRailway(); + virtual DWORD GetID() { return 'MREv'; } + virtual int Start(T2TowerDoc* inDoc); + virtual int Exec(T2TowerDoc *inDoc); + virtual void StopEvent(T2TowerDoc* inDoc); + virtual BOOL IsBeginTime(unsigned int inTime); + virtual void Write(T2Archive& inArchive); + virtual void Read(T2Archive& inArchive); + virtual void DoSetStatus(int inStatus) { SetStatus(inStatus); } + virtual T2TowerDoc *DoGetTowerDoc() const { return GetTowerDoc(); } + virtual int DoGetBeginTime() { return GetBeginTime(); } + virtual T2WorldDef *DoGetWorldDef() { return GetWorldDef(); } + + void Init(T2Transport* inParent, CResFile* inResFile); + BOOL CreateSpriteObj(T2TowerDoc *inDoc); + void Show(); + void Hide(); + +protected: + int m74; + int mCurrentSprite; + int mTrainSpriteIndices[4]; + T2BitImage *mImage; + T2ImageObj *mImageObj; + BOOL mVisible; +}; -- cgit v1.2.3