summaryrefslogtreecommitdiffstats
path: root/src/core/User.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/User.h')
-rw-r--r--src/core/User.h64
1 files changed, 64 insertions, 0 deletions
diff --git a/src/core/User.h b/src/core/User.h
new file mode 100644
index 00000000..8b744c7e
--- /dev/null
+++ b/src/core/User.h
@@ -0,0 +1,64 @@
+#pragma once
+
+class COnscreenTimerEntry
+{
+public:
+ uint32 m_nTimerOffset;
+ uint32 m_nCounterOffset;
+ char m_aTimerText[10];
+ char m_aCounterText[10];
+ uint16 m_nType;
+ char m_bCounterBuffer[42];
+ char m_bTimerBuffer[42];
+ bool m_bTimerProcessed;
+ bool m_bCounterProcessed;
+
+ void Process();
+ bool ProcessForDisplay();
+
+ int ProcessForDisplayTimer();
+ int ProcessForDisplayCounter();
+};
+
+static_assert(sizeof(COnscreenTimerEntry) == 0x74, "COnscreenTimerEntry: error");
+
+class COnscreenTimer
+{
+public:
+ COnscreenTimerEntry m_sEntries[NUMONSCREENTIMERENTRIES];
+ bool m_bProcessed;
+ bool m_bDisabled;
+
+ void Init();
+ void Process();
+ void ProcessForDisplay();
+
+ void ClearCounter(uint32 offset);
+ void ClearClock(uint32 offset);
+
+ void AddCounter(uint32 offset, uint16 type, char* text);
+ void AddClock(uint32 offset, char* text);
+};
+
+static_assert(sizeof(COnscreenTimer) == 0x78, "COnscreenTimer: error");
+
+class CPlaceName
+{
+};
+
+class CCurrentVehicle
+{
+};
+
+class CPager
+{
+};
+
+class CUserDisplay
+{
+public:
+ static CPlaceName &PlaceName;
+ static COnscreenTimer &OnscnTimer;
+ static CPager &Pager;
+ static CCurrentVehicle &CurrentVehicle;
+};