about summary refs log tree commit diff stats
path: root/Source/Memory.h
diff options
context:
space:
mode:
Diffstat (limited to 'Source/Memory.h')
-rw-r--r--Source/Memory.h140
1 files changed, 139 insertions, 1 deletions
diff --git a/Source/Memory.h b/Source/Memory.h index c19d92b..95de884 100644 --- a/Source/Memory.h +++ b/Source/Memory.h
@@ -54,6 +54,7 @@ public:
54private: 54private:
55 template<class T> 55 template<class T>
56 std::vector<T> ReadData(const std::vector<int>& offsets, size_t numItems) { 56 std::vector<T> ReadData(const std::vector<int>& offsets, size_t numItems) {
57 if (numItems == 0) return {};
57 std::vector<T> data; 58 std::vector<T> data;
58 data.resize(numItems); 59 data.resize(numItems);
59 for (int i=0; i<5; i++) { 60 for (int i=0; i<5; i++) {
@@ -68,6 +69,7 @@ private:
68 69
69 template <class T> 70 template <class T>
70 void WriteData(const std::vector<int>& offsets, const std::vector<T>& data) { 71 void WriteData(const std::vector<int>& offsets, const std::vector<T>& data) {
72 if (data.empty()) return;
71 for (int i=0; i<5; i++) { 73 for (int i=0; i<5; i++) {
72 if (WriteProcessMemory(_handle, ComputeOffset(offsets), &data[0], sizeof(T) * data.size(), nullptr)) { 74 if (WriteProcessMemory(_handle, ComputeOffset(offsets), &data[0], sizeof(T) * data.size(), nullptr)) {
73 return; 75 return;
@@ -97,4 +99,140 @@ private:
97 friend class Temp; 99 friend class Temp;
98 friend class ChallengeRandomizer; 100 friend class ChallengeRandomizer;
99 friend class Randomizer; 101 friend class Randomizer;
100}; \ No newline at end of file 102};
103
104#if GLOBALS == 0x5B28C0
105#define PATH_COLOR 0xC8
106#define REFLECTION_PATH_COLOR 0xD8
107#define DOT_COLOR 0xF8
108#define ACTIVE_COLOR 0x108
109#define BACKGROUND_REGION_COLOR 0x118
110#define SUCCESS_COLOR_A 0x128
111#define SUCCESS_COLOR_B 0x138
112#define STROBE_COLOR_A 0x148
113#define STROBE_COLOR_B 0x158
114#define ERROR_COLOR 0x168
115#define PATTERN_POINT_COLOR 0x188
116#define PATTERN_POINT_COLOR_A 0x198
117#define PATTERN_POINT_COLOR_B 0x1A8
118#define SYMBOL_A 0x1B8
119#define SYMBOL_B 0x1C8
120#define SYMBOL_C 0x1D8
121#define SYMBOL_D 0x1E8
122#define SYMBOL_E 0x1F8
123#define PUSH_SYMBOL_COLORS 0x208
124#define OUTER_BACKGROUND 0x20C
125#define OUTER_BACKGROUND_MODE 0x21C
126#define TRACED_EDGES 0x230
127#define AUDIO_PREFIX 0x278
128#define POWER 0x2A8
129#define TARGET 0x2BC
130#define POWER_OFF_ON_FAIL 0x2C0
131#define IS_CYLINDER 0x2FC
132#define CYLINDER_Z0 0x300
133#define CYLINDER_Z1 0x304
134#define CYLINDER_RADIUS 0x308
135#define CURSOR_SPEED_SCALE 0x358
136#define NEEDS_REDRAW 0x384
137#define SPECULAR_ADD 0x398
138#define SPECULAR_POWER 0x39C
139#define PATH_WIDTH_SCALE 0x3A4
140#define STARTPOINT_SCALE 0x3A8
141#define NUM_DOTS 0x3B8
142#define NUM_CONNECTIONS 0x3BC
143#define MAX_BROADCAST_DISTANCE 0x3C0
144#define DOT_POSITIONS 0x3C8
145#define DOT_FLAGS 0x3D0
146#define DOT_CONNECTION_A 0x3D8
147#define DOT_CONNECTION_B 0x3E0
148#define DECORATIONS 0x420
149#define DECORATION_FLAGS 0x428
150#define DECORATION_COLORS 0x430
151#define NUM_DECORATIONS 0x438
152#define REFLECTION_DATA 0x440
153#define GRID_SIZE_X 0x448
154#define GRID_SIZE_Y 0x44C
155#define STYLE_FLAGS 0x450
156#define SEQUENCE_LEN 0x45C
157#define SEQUENCE 0x460
158#define DOT_SEQUENCE_LEN 0x468
159#define DOT_SEQUENCE 0x470
160#define DOT_SEQUENCE_LEN_REFLECTION 0x478
161#define DOT_SEQUENCE_REFLECTION 0x480
162#define NUM_COLORED_REGIONS 0x4A0
163#define COLORED_REGIONS 0x4A8
164#define PANEL_TARGET 0x4B0
165#define SPECULAR_TEXTURE 0x4D8
166#define CABLE_TARGET_2 0xD8
167#define AUDIO_LOG_NAME 0xC8
168#define OPEN_RATE 0xE8
169#define METADATA 0xF2 // sizeof(short)
170#define HOTEL_EP_NAME 0x4BC640
171#elif GLOBALS == 0x62D0A0
172#define PATH_COLOR 0xC0
173#define REFLECTION_PATH_COLOR 0xD0
174#define DOT_COLOR 0xF0
175#define ACTIVE_COLOR 0x100
176#define BACKGROUND_REGION_COLOR 0x110
177#define SUCCESS_COLOR_A 0x120
178#define SUCCESS_COLOR_B 0x130
179#define STROBE_COLOR_A 0x140
180#define STROBE_COLOR_B 0x150
181#define ERROR_COLOR 0x160
182#define PATTERN_POINT_COLOR 0x180
183#define PATTERN_POINT_COLOR_A 0x190
184#define PATTERN_POINT_COLOR_B 0x1A0
185#define SYMBOL_A 0x1B0
186#define SYMBOL_B 0x1C0
187#define SYMBOL_C 0x1D0
188#define SYMBOL_D 0x1E0
189#define SYMBOL_E 0x1F0
190#define PUSH_SYMBOL_COLORS 0x200
191#define OUTER_BACKGROUND 0x204
192#define OUTER_BACKGROUND_MODE 0x214
193#define TRACED_EDGES 0x228
194#define AUDIO_PREFIX 0x270
195#define POWER 0x2A0
196#define TARGET 0x2B4
197#define POWER_OFF_ON_FAIL 0x2B8
198#define IS_CYLINDER 0x2F4
199#define CYLINDER_Z0 0x2F8
200#define CYLINDER_Z1 0x2FC
201#define CYLINDER_RADIUS 0x300
202#define CURSOR_SPEED_SCALE 0x350
203#define NEEDS_REDRAW 0x37C
204#define SPECULAR_ADD 0x38C
205#define SPECULAR_POWER 0x390
206#define PATH_WIDTH_SCALE 0x39C
207#define STARTPOINT_SCALE 0x3A0
208#define NUM_DOTS 0x3B4
209#define NUM_CONNECTIONS 0x3B8
210#define MAX_BROADCAST_DISTANCE 0x3BC
211#define DOT_POSITIONS 0x3C0
212#define DOT_FLAGS 0x3C8
213#define DOT_CONNECTION_A 0x3D0
214#define DOT_CONNECTION_B 0x3D8
215#define DECORATIONS 0x418
216#define DECORATION_FLAGS 0x420
217#define DECORATION_COLORS 0x428
218#define NUM_DECORATIONS 0x430
219#define REFLECTION_DATA 0x438
220#define GRID_SIZE_X 0x440
221#define GRID_SIZE_Y 0x444
222#define STYLE_FLAGS 0x448
223#define SEQUENCE_LEN 0x454
224#define SEQUENCE 0x458
225#define DOT_SEQUENCE_LEN 0x460
226#define DOT_SEQUENCE 0x468
227#define DOT_SEQUENCE_LEN_REFLECTION 0x470
228#define DOT_SEQUENCE_REFLECTION 0x478
229#define NUM_COLORED_REGIONS 0x498
230#define COLORED_REGIONS 0x4A0
231#define PANEL_TARGET 0x4A8
232#define SPECULAR_TEXTURE 0x4D0
233#define CABLE_TARGET_2 0xD0
234#define AUDIO_LOG_NAME 0x0
235#define OPEN_RATE 0xE0
236#define METADATA 0x13A // sizeof(short)
237#define HOTEL_EP_NAME 0x51E340
238#endif \ No newline at end of file