summaryrefslogtreecommitdiff
path: root/src/T2DLL/T2WorldDef.h
diff options
context:
space:
mode:
authorAsh Wolf <ninji@wuffs.org>2023-06-14 00:50:34 +0100
committerAsh Wolf <ninji@wuffs.org>2023-06-14 00:50:34 +0100
commit37e364b2c6cc7487a1c888d256a73e5337bb7189 (patch)
treeeaf6e857382eef16c2dd940eb4125536fbe068bd /src/T2DLL/T2WorldDef.h
downloadt2win-37e364b2c6cc7487a1c888d256a73e5337bb7189.tar.gz
t2win-37e364b2c6cc7487a1c888d256a73e5337bb7189.zip
initial commit
Diffstat (limited to '')
-rw-r--r--src/T2DLL/T2WorldDef.h132
1 files changed, 132 insertions, 0 deletions
diff --git a/src/T2DLL/T2WorldDef.h b/src/T2DLL/T2WorldDef.h
new file mode 100644
index 0000000..b80d358
--- /dev/null
+++ b/src/T2DLL/T2WorldDef.h
@@ -0,0 +1,132 @@
+#pragma once
+#include "common.h"
+#include "T2TemplatePlugin.h"
+
+class T2WorldDef : public T2TemplatePlugin {
+public:
+ T2WorldDef(unsigned long, T2PluginSpecifier&, CResFile*, T2WorldPlugin*);
+public:
+ virtual ~T2WorldDef();
+ virtual void GetName(CString&);
+ virtual int GetSortKey() { return 0; }
+ virtual int GetInitialFunds() const { return 0; }
+ virtual int IsHoliday(T2DateTime*) const { return 0; }
+ virtual int IsRainyDay(T2DateTime*) const { return 0; }
+ virtual int ExchangeMoney(int) const { return 0; }
+ virtual void DrawWorld(T2TowerDoc*);
+ virtual void DoAnimate(T2TowerDoc*);
+ virtual void DrawBkgnd(unsigned int, const RECT&, T2TowerDoc*);
+ virtual void DrawBkgnd(const RECT&, T2TowerDoc*);
+ virtual void DrawRoofAndFloor(const RECT&, T2TowerDoc*, ROOFANDFLOOR);
+ virtual void DrawBuild(T2Equip*, T2TowerDoc*);
+ virtual void DrawSideObj(T2Equip*, T2TowerDoc*, SIDEOBJPATTERN);
+ virtual void DrawOptionObj(T2TowerDoc*, const RECT&);
+ virtual void DrawRubble(T2TowerDoc*, T2Tenant*);
+ virtual void DrawMark(T2BitImage*, const RECT&, int, unsigned int);
+ virtual void DrawCrane(T2TowerDoc*, const RECT&);
+ virtual const char* GetMoneyUnit() { return 0; }
+ virtual T2EventItem* MakeXEvent(T2TowerEvent*, CResFile*, unsigned long, int);
+ virtual T2Transport* GetCruise(T2TowerEvent*) { return 0; }
+ virtual void InitializeBkgndInfo(BkgndInfo*);
+ virtual void InitializeFloorInfo(T2FloorInfo*);
+ virtual void InitializeDocument(T2TowerDoc*);
+ virtual int TenantAreaCheck(T2TowerDoc*, RECT&, int);
+ virtual void CalcOptionObj(T2TowerDoc*, T2Equip*);
+ virtual void CalcCranePos(T2TowerDoc*);
+ virtual void ClearCranePos(T2TowerDoc*);
+ virtual void DrawCtrl(T2TowerDoc*, T2MWControl*);
+ virtual void ButtonDownOnCtrl(T2TowerDoc*, T2MWControl*, CPoint, CWnd*);
+ virtual void ButtonUpOnCtrl(T2TowerDoc*, T2MWControl*, CPoint, CWnd*);
+ virtual void MouseMoveOnCtrl(T2TowerDoc*, T2MWControl*, CPoint, CWnd*);
+ virtual void GetToolTipText(T2TowerDoc*, T2MWControl*, NMTTDISPINFOA*);
+ virtual int IdleProc(T2TowerDoc*);
+ virtual int CheckGameLevelProc(T2TowerDoc*);
+ virtual void GetGradeUpMessage(int, CString&);
+ virtual void DayChanged(T2TowerDoc*) {}
+ virtual void ViewModeChanged(T2TowerDoc*, VIEWMODE);
+ virtual void ReplaceSkyOffscreen(int);
+ virtual BOOL3 ChangeFastSEProc(T2PaletteAnime*) { return BOOL3_0; }
+ virtual BOOL3 ChangeFastSEProc(T2PaletteAnime*, T2DateTime*) { return BOOL3_0; }
+ virtual BOOL3 ChangeSEProc(T2PaletteAnime*) { return BOOL3_0; }
+ virtual BOOL3 ChangeSkyColorProc(T2PaletteAnime*) { return BOOL3_0; }
+ virtual BOOL3 AdjustSkyStateProc(T2PaletteAnime*, T2DateTime*) { return BOOL3_0; }
+ virtual int UseOwnSkyPaletteFunction() { return 0; }
+ virtual void SetupGradeUpAnimation(T2DlgItemAnimation*, int);
+ virtual void WriteStatisticsProc(T2TowerDoc*, T2Archive&);
+ virtual void ReadStatisticsProc(T2TowerDoc*, T2Archive&);
+ virtual int CheckTreasure(T2TowerDoc*, T2TreasureStatus*);
+ virtual unsigned long OptionProc(unsigned long, void*) { return 0; }
+
+ unsigned int GetToiletDenomi(unsigned int) const;
+ unsigned int GetColdDenomi(unsigned int, unsigned int) const;
+ int IsDustOn(unsigned int) const;
+ T2TowerVision* GetTowerVision();
+ void SetLatestBuild(T2Equip*, int);
+ void SetLatestBuild(T2ToolDef*, int);
+ void InitTowerEvent(T2TowerDoc*);
+ void WriteTowerEvent(T2Archive&);
+ void ReadTowerEvent(T2Archive&);
+ void StopEvent();
+ T2TowerEvent* GetTowerEvent();
+ T2FireBurning* GetFireBurning();
+ T2MetroRailway* GetMetroRailway();
+ T2BlackOut* GetBlackOut();
+ int IsBlackOut();
+
+ CPalette* GetPalette() { return 0; }
+ int IsUseMatterObject() const { return 0; }
+ int GetOutViewKind() const { return 0; }
+ T2PaletteAnimeDef* GetPaletteAnimeDef() const { return 0; }
+ T2SeasonParamDef* GetSeasonParamDef() const { return 0; }
+ int GetHeight() const { return 0; }
+ int GetWidth() const { return 0; }
+ void GetBuildArea(RECT&) const {}
+ int IsStoppableFloor(int) { return 0; }
+ int GetLobbyHeight() { return 0; }
+ T2Maru_Reggae* GetReggae() { return 0; }
+ int GetCashAmount(int) const { return 0; }
+
+protected:
+ virtual void DrawClock(T2MWControl*, T2DateTime&);
+ virtual void DrawCalendar(T2MWControl*, T2DateTime&, T2TowerDoc*);
+ virtual void DrawFunds(T2MWControl*, int);
+ virtual void DrawPopulation(T2MWControl*, int);
+ virtual void DrawMessage(T2MWControl*);
+ virtual void DrawPauseButton(T2MWControl*);
+ virtual void DrawInViewButton(T2MWControl*);
+ virtual void DrawOutViewButton(T2MWControl*);
+ virtual void DrawMaintButton(T2MWControl*);
+ virtual void DrawEvalButton(T2MWControl*);
+ virtual void DrawPriceButton(T2MWControl*);
+ virtual void DrawTransButton(T2MWControl*);
+ virtual void DrawSlider(T2MWControl*);
+ virtual void ClickClock(T2MWControl*, T2TowerDoc*);
+ virtual void ClickCalendar(T2MWControl*, T2TowerDoc*);
+ virtual void ClickFunds(T2MWControl*, T2TowerDoc*);
+ virtual void ClickPopulation(T2MWControl*, T2TowerDoc*);
+ virtual void ClickPauseButton(T2MWControl*, T2TowerDoc*);
+ virtual void ClickInViewButton(T2MWControl*, T2TowerDoc*);
+ virtual void ClickOutViewButton(T2MWControl*, T2TowerDoc*);
+ virtual void ClickMaintButton(T2MWControl*, T2TowerDoc*);
+ virtual void ClickEvalButton(T2MWControl*, T2TowerDoc*);
+ virtual void ClickPriceButton(T2MWControl*, T2TowerDoc*);
+ virtual void ClickTransButton(T2MWControl*, T2TowerDoc*);
+ virtual int SliderPointToValue(T2MWControl*, CPoint);
+ virtual void GetClockTip(T2TowerDoc*, T2MWControl*, char*);
+ virtual void GetCalendarTip(T2TowerDoc*, T2MWControl*, char*);
+ virtual void GetFundsTip(T2TowerDoc*, T2MWControl*, char*);
+ virtual void GetPopulationTip(T2TowerDoc*, T2MWControl*, char*);
+ virtual void GetPauseButtonTip(T2TowerDoc*, T2MWControl*, char*);
+ virtual void DrawSimpleMWControl(T2MWControl*, const char*);
+
+ void SetupOffscreen(HINSTANCE);
+ void DisposeOffscreen();
+ void SetupPalette(HINSTANCE);
+ void DisposePalette();
+
+protected:
+ T2PaletteAnimeDef* MakePaletteAnimeDef();
+ T2PoolDef* MakePoolDef();
+ T2SeasonParamDef* MakeSeasonParamDef();
+ T2ColdTableDef* MakeColdTableDef();
+};