summaryrefslogtreecommitdiff
path: root/src/T2TowerDoc.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/T2TowerDoc.h')
-rw-r--r--src/T2TowerDoc.h197
1 files changed, 157 insertions, 40 deletions
diff --git a/src/T2TowerDoc.h b/src/T2TowerDoc.h
index db42bc4..2af4ff0 100644
--- a/src/T2TowerDoc.h
+++ b/src/T2TowerDoc.h
@@ -1,9 +1,16 @@
#pragma once
#include "common.h"
+#include "T2MsgWindowCallback.h"
+#include "T2Sprite.h"
+#include "T2ToolCallback.h"
-// TODO: this lad also inherits T2MsgWindowCallback, T2ToolCallback
+enum {
+ kTowerDocWindowType0 = 0,
+ kTowerDocWindowType1,
+ kTowerDocWindowType2
+};
-class T2TowerDoc : public CDocument {
+class T2TowerDoc : public CDocument, public T2MsgWindowCallback, public T2ToolCallback {
public:
virtual int IsDustOn() const;
virtual void LoadsWorldPlugin();
@@ -30,8 +37,8 @@ public:
// 100
virtual void towerDoc_vf100();
virtual void towerDoc_vf104();
- virtual void towerDoc_vf108();
- virtual void towerDoc_vf10C();
+ virtual int towerDoc_vf108() const; // get zoom level
+ virtual T2BitImage *towerDoc_vf10C() const;
// 110
virtual T2TowerMainView *GetTowerMainView();
virtual void towerDoc_vf114();
@@ -39,59 +46,59 @@ public:
virtual void towerDoc_vf11C(int startIndex, int count, PALETTEENTRY *entries); // updates palette
// 120
virtual T2DateTime *towerDoc_vf120() const;
- virtual void towerDoc_vf124();
- virtual void towerDoc_vf128();
- virtual void towerDoc_vf12C();
+ virtual T2RouteNavigator *towerDoc_vf124();
+ virtual T2TemplatePluginList *towerDoc_vf128();
+ virtual T2FloorInfo *towerDoc_vf12C() const;
// 130
- virtual void towerDoc_vf130();
+ virtual T2Pool *towerDoc_vf130();
virtual T2SoundPlayer *towerDoc_vf134();
- virtual void towerDoc_vf138();
- virtual void towerDoc_vf13C();
+ virtual int towerDoc_vf138() const; // game level?
+ virtual T2TowerMessage *towerDoc_vf13C();
// 140
- virtual void towerDoc_vf140();
- virtual void towerDoc_vf144();
- virtual void towerDoc_vf148();
- virtual void towerDoc_vf14C();
+ virtual int towerDoc_vf140(); // get view mode?
+ virtual void towerDoc_vf144(int);
+ virtual int towerDoc_vf148() const; // get walk rate?
+ virtual void towerDoc_vf14C(int walkRate);
// 150
- virtual void towerDoc_vf150();
- virtual void towerDoc_vf154();
+ virtual T2TrafficInfo *towerDoc_vf150() const;
+ virtual BOOL towerDoc_vf154(); // IsToiletFlagOn?
virtual void towerDoc_vf158();
- virtual int towerDoc_vf15C(const RECT &rect);
+ virtual int towerDoc_vf15C(const RECT &rect); // returns bool maybe?
// 160
- virtual void towerDoc_vf160();
- virtual void towerDoc_vf164();
+ virtual T2PaletteAnime *towerDoc_vf160() const;
+ virtual void towerDoc_vf164(const char *inText); // sets infobar message
virtual void towerDoc_vf168();
- virtual void towerDoc_vf16C();
+ virtual BOOL towerDoc_vf16C() const; // GetElevTransparent
// 170
virtual T2WorldDef *towerDoc_vf170();
- virtual void towerDoc_vf174();
- virtual void towerDoc_vf178();
- virtual void towerDoc_vf17C();
+ virtual T2RegistedTenantDB *towerDoc_vf174();
+ virtual T2TemplatePluginList *towerDoc_vf178(); // get tenant templates
+ virtual T2TemplatePluginList *towerDoc_vf17C(); // get mover templates
// 180
- virtual void towerDoc_vf180();
+ virtual T2TemplatePluginList *towerDoc_vf180(); // get outobj templates
virtual void towerDoc_vf184();
virtual void towerDoc_vf188();
- virtual void towerDoc_vf18C();
+ virtual T2Tenant *towerDoc_vf18C();
// 190
virtual void towerDoc_vf190();
virtual void towerDoc_vf194();
- virtual void towerDoc_vf198();
+ virtual void towerDoc_vf198(int);
virtual void towerDoc_vf19C();
// 1A0
virtual void towerDoc_vf1A0(int);
- virtual void towerDoc_vf1A4();
+ virtual BOOL towerDoc_vf1A4() const; // called from T2MainWindow::OnClose
virtual void towerDoc_vf1A8();
virtual void towerDoc_vf1AC();
// 1B0
virtual void towerDoc_vf1B0();
virtual void towerDoc_vf1B4();
- virtual void towerDoc_vf1B8();
+ virtual void towerDoc_vf1B8(T2People *);
virtual void towerDoc_vf1BC();
// 1C0
virtual void towerDoc_vf1C0();
- virtual void towerDoc_vf1C4();
+ virtual void towerDoc_vf1C4(T2People *, BOOL);
virtual void towerDoc_vf1C8();
- virtual void towerDoc_vf1CC();
+ virtual void towerDoc_vf1CC(T2Tenant *, BOOL);
// 1D0
virtual void towerDoc_vf1D0();
virtual void towerDoc_vf1D4();
@@ -125,7 +132,7 @@ public:
// 230
virtual void towerDoc_vf230();
virtual void towerDoc_vf234();
- virtual void towerDoc_vf238();
+ virtual void towerDoc_vf238(T2Name *); // find tenant from search dialog
virtual void towerDoc_vf23C();
// 240
virtual void towerDoc_vf240();
@@ -140,13 +147,13 @@ public:
// 260
virtual void towerDoc_vf260();
virtual void towerDoc_vf264();
- virtual void towerDoc_vf268();
- virtual void towerDoc_vf26C();
+ virtual void towerDoc_vf268(T2Tenant *inTenant); // TenantRemoved
+ virtual int towerDoc_vf26C() const; // GetCurrentFunds?
// 270
- virtual void towerDoc_vf270();
+ virtual void towerDoc_vf270(int, short); // DoPay
virtual void towerDoc_vf274();
virtual void DoPayTool(int cost, short unk, T2ToolDef *toolDef);
- virtual void towerDoc_vf27C();
+ virtual int towerDoc_vf27C(int inV); // GetNextTenantNumber
// 280
virtual void towerDoc_vf280();
virtual void towerDoc_vf284();
@@ -158,18 +165,128 @@ public:
virtual void towerDoc_vf298();
virtual void towerDoc_vf29C();
// 2A0
- virtual void towerDoc_vf2A0();
- virtual void towerDoc_vf2A4();
- virtual void towerDoc_vf2A8();
+ virtual T2ToolWindow *towerDoc_vf2A0();
+ virtual int towerDoc_vf2A4() const; // get speed
+ virtual void towerDoc_vf2A8(int); // SetDrawSpeed
virtual void towerDoc_vf2AC();
// 2B0
- virtual void towerDoc_vf2B0();
+ virtual void towerDoc_vf2B0(BOOL); // SetVolatile maybe?
virtual void towerDoc_vf2B4();
virtual void towerDoc_vf2B8();
virtual void towerDoc_vf2BC();
// 2C0
virtual void towerDoc_vf2C0();
+ // this might be SetVolatile actually
+ void SetFireBurning(BOOL flag) { m208 = flag; }
+
+ int Get22C() { return _22C; }
+
+ T2PluginLoader *mT2PluginLoader;
+ T2WorldPlugin *mWorldPlugin;
+ T2PluginSpecifier *mWorldPluginSpecifier;
+ T2PluginSpecifier *mToPluginSpecifier;
+ DWORD mWorldPluginID;
+ DWORD mToPluginID;
+ T2WorldDef *mWorldDef;
+ int _78;
+ int _7C;
int mZoomLevel;
- T2WorldDef *mWorldDef;
+ int _84;
+ BOOL mPause;
+ int mGameLevel;
+ int _90;
+ int _94;
+ int _98;
+ int m9C;
+ DWORD mA0; // VIPs that have been satisfied
+ int mViewMode;
+ int _A8;
+ int _AC;
+ int _B0;
+ int _B4;
+ int _B8;
+ int mBC;
+ DWORD mC0;
+ T2DateTime *mNow;
+ T2TowerMessage *mTowerMessage;
+ CString mCC;
+ T2FloorInfo *mFloorInfo;
+ BkgndInfo *mBkgndInfo;
+ T2TrafficInfo *mTrafficInfo;
+ T2Sprite mSprite;
+ T2SoundPlayer *mSoundPlayer;
+ CFilePluginList *mTenantPluginsListOther;
+ CFilePluginList *mMoverPluginsListOther;
+ CFilePluginList *mOoPluginsListOther;
+ T2MoviePluginList *mMoviePluginList;
+ CFilePluginList *mHePluginsListOther;
+ CFilePluginList *mAdPluginsListOther;
+ T2TemplatePluginList *mTenantTemplates;
+ T2TemplatePluginList *mMoverTemplates;
+ T2TemplatePluginList *mMatterTemplates;
+ T2TemplatePluginList *mPeopleTemplates;
+ T2TemplatePluginList *mSilhouetteTemplates;
+ T2TemplatePluginList *mOuterObjTemplates;
+ T2TemplatePluginDB *mTemplatePluginDB;
+ T2OptionPluginList *mOptionPluginList;
+ T2OuterObjList *mOuterObjList;
+ T2Settlement *mSettlement;
+ T2NameList *mNameDB;
+ T2PeopleArrayList *mPeopleArrayList;
+ T2Pool *mPool;
+ T2RegistedTenantDB *mRegistedTenantDB;
+ int _15C;
+ T2RouteNavigator *mRouteNavigator;
+ T2Equip *mSearchRangeFrom;
+ int mCraneCount;
+ POINT *mCranePosArray;
+ int _170;
+ int _174;
+ T2PaletteAnime *mPaletteAnime;
+ int _17C;
+ int m180;
+ int m184;
+ int _188;
+ int _18C;
+ BOOL mErrorFlag;
+ BOOL mNewDocFlag;
+ BOOL mIsStuffLoadedFlag;
+ T2TowerMainView *mTowerMainView;
+ T2TenantDef *m1A0;
+ int _1A4;
+ int _1A8;
+ int _1AC;
+ int _1B0;
+ int _1B4;
+ CObjectQueue *mObjectQueue;
+ int _1BC;
+ int _1C0;
+ T2Equip *m1C4;
+ int _1C8;
+ int m1CC;
+ BOOL mElevTransparent;
+ int isDustOn;
+ int mToiletDenomi;
+ unsigned int mColdDenomi;
+ int mWalkRate;
+ int _1E4;
+ int _1E8;
+ int _1EC;
+ int m1F0;
+ int _1F4;
+ int _1F8;
+ int _1FC;
+ int _200;
+ int m204;
+ int m208;
+ int m20C;
+ int m210;
+ int m214;
+ int m218;
+ unsigned int m21C;
+ unsigned int m220; // speed?
+ int _224;
+ int m228;
+ int _22C;
};