World of Might and Magic  0.2.0
Open reimplementation of Might and Magic 6 7 8 game engine
mm7_data.cpp
См. документацию.
1 #include "Engine/mm7_data.h"
2 
3 #include "Engine/Engine.h"
4 
5 #include "GUI/GUIWindow.h"
6 #include "Party.h"
7 
8 #include "Engine/Autonotes.h"
9 #include "Engine/Awards.h"
11 #include "Engine/stru123.h"
12 #include "Engine/stru160.h"
13 #include "Engine/stru298.h"
14 #include "Engine/stru314.h"
15 #include "Engine/stru367.h"
16 #include "MapInfo.h"
17 #include "OurMath.h"
18 
21 struct Viewport *pViewport = new Viewport;
25 std::array<Autonote, 196> pAutonoteTxt;
26 std::array<Award, 105> pAwards;
27 std::array<AwardType, 1000> achieved_awards;
30 std::array<stru160, 66> array_4EB8B8 = { // vertices for spheres
31  {stru160(0.0000000f, 0.0000000f, 1.0000000f),
32  stru160(0.0000000f, 0.3826830f, 0.9238799f),
33  stru160(0.3826830f, 0.0000000f, 0.9238799f),
34  stru160(0.4082480f, 0.4082480f, 0.8164970f),
35  stru160(0.0000000f, 0.7071070f, 0.7071070f),
36  stru160(0.7071070f, 0.0000000f, 0.7071070f),
37  stru160(0.4082480f, 0.8164970f, 0.4082480f),
38  stru160(0.8164970f, 0.4082480f, 0.4082480f),
39  stru160(0.7071070f, 0.7071070f, 0.0000000f),
40  stru160(0.0000000f, 0.9238799f, 0.3826830f),
41  stru160(0.3826830f, 0.9238799f, 0.0000000f),
42  stru160(0.0000000f, 1.0000000f, 0.0000000f),
43  stru160(0.9238799f, 0.3826830f, 0.0000000f),
44  stru160(0.9238799f, 0.0000000f, 0.3826830f),
45  stru160(1.0000000f, 0.0000000f, 0.0000000f),
46  stru160(0.0000000f, -0.3826830f, 0.9238799f),
47  stru160(0.4082480f, -0.4082480f, 0.8164970f),
48  stru160(0.0000000f, -0.7071070f, 0.7071070f),
49  stru160(0.8164970f, -0.4082480f, 0.4082480f),
50  stru160(0.4082480f, -0.8164970f, 0.4082480f),
51  stru160(0.7071070f, -0.7071070f, 0.0000000f),
52  stru160(0.9238799f, -0.3826830f, 0.0000000f),
53  stru160(0.3826830f, -0.9238799f, 0.0000000f),
54  stru160(0.0000000f, -0.9238799f, 0.3826830f),
55  stru160(0.0000000f, -1.0000000f, 0.0000000f),
56  stru160(-0.3826830f, 0.0000000f, 0.9238799f),
57  stru160(-0.4082480f, -0.4082480f, 0.8164970f),
58  stru160(-0.7071070f, 0.0000000f, 0.7071070f),
59  stru160(-0.4082480f, -0.8164970f, 0.4082480f),
60  stru160(-0.8164970f, -0.4082480f, 0.4082480f),
61  stru160(-0.7071070f, -0.7071070f, 0.0000000f),
62  stru160(-0.3826830f, -0.9238799f, 0.0000000f),
63  stru160(-0.9238799f, -0.3826830f, 0.0000000f),
64  stru160(-0.9238799f, 0.0000000f, 0.3826830f),
65  stru160(-1.0000000f, 0.0000000f, 0.0000000f),
66  stru160(-0.4082480f, 0.4082480f, 0.8164970f),
67  stru160(-0.8164970f, 0.4082480f, 0.4082480f),
68  stru160(-0.4082480f, 0.8164970f, 0.4082480f),
69  stru160(-0.7071070f, 0.7071070f, 0.0000000f),
70  stru160(-0.9238799f, 0.3826830f, 0.0000000f),
71  stru160(-0.3826830f, 0.9238799f, 0.0000000f),
72  stru160(0.0000000f, 0.0000000f, -1.0000000f),
73  stru160(0.0000000f, 0.3826830f, -0.9238799f),
74  stru160(0.3826830f, 0.0000000f, -0.9238799f),
75  stru160(0.4082480f, 0.4082480f, -0.8164970f),
76  stru160(0.0000000f, 0.7071070f, -0.7071070f),
77  stru160(0.7071070f, 0.0000000f, -0.7071070f),
78  stru160(0.4082480f, 0.8164970f, -0.4082480f),
79  stru160(0.8164970f, 0.4082480f, -0.4082480f),
80  stru160(0.0000000f, 0.9238799f, -0.3826830f),
81  stru160(0.9238799f, 0.0000000f, -0.3826830f),
82  stru160(0.0000000f, -0.3826830f, -0.9238799f),
83  stru160(0.4082480f, -0.4082480f, -0.8164970f),
84  stru160(0.0000000f, -0.7071070f, -0.7071070f),
85  stru160(0.8164970f, -0.4082480f, -0.4082480f),
86  stru160(0.4082480f, -0.8164970f, -0.4082480f),
87  stru160(0.0000000f, -0.9238799f, -0.3826830f),
88  stru160(-0.3826830f, 0.0000000f, -0.9238799f),
89  stru160(-0.4082480f, -0.4082480f, -0.8164970f),
90  stru160(-0.7071070f, 0.0000000f, -0.7071070f),
91  stru160(-0.4082480f, -0.8164970f, -0.4082480f),
92  stru160(-0.8164970f, -0.4082480f, -0.4082480f),
93  stru160(-0.9238799f, 0.0000000f, -0.3826830f),
94  stru160(-0.4082480f, 0.4082480f, -0.8164970f),
95  stru160(-0.8164970f, 0.4082480f, -0.4082480f),
96  stru160(-0.4082480f, 0.8164970f, -0.4082480f)}};
97 std::array<stru160, 128> array_4EBBD0;
98 std::array<__int32, 128 * 3> array_4EBBD0_x = { // indicies for triangle in sphere
99  {0x00000000, 0x00000001, 0x00000002, 0x00000001, 0x00000003, 0x00000002,
100  0x00000001, 0x00000004, 0x00000003, 0x00000003, 0x00000005, 0x00000002,
101  0x00000004, 0x00000006, 0x00000003, 0x00000006, 0x00000007, 0x00000003,
102  0x00000006, 0x00000008, 0x00000007, 0x00000007, 0x00000005, 0x00000003,
103  0x00000004, 0x00000009, 0x00000006, 0x00000009, 0x0000000A, 0x00000006,
104  0x00000009, 0x0000000B, 0x0000000A, 0x0000000A, 0x00000008, 0x00000006,
105  0x00000008, 0x0000000C, 0x00000007, 0x0000000C, 0x0000000D, 0x00000007,
106  0x0000000C, 0x0000000E, 0x0000000D, 0x0000000D, 0x00000005, 0x00000007,
107  0x00000000, 0x00000002, 0x0000000F, 0x00000002, 0x00000010, 0x0000000F,
108  0x00000002, 0x00000005, 0x00000010, 0x00000010, 0x00000011, 0x0000000F,
109  0x00000005, 0x00000012, 0x00000010, 0x00000012, 0x00000013, 0x00000010,
110  0x00000012, 0x00000014, 0x00000013, 0x00000013, 0x00000011, 0x00000010,
111  0x00000005, 0x0000000D, 0x00000012, 0x0000000D, 0x00000015, 0x00000012,
112  0x0000000D, 0x0000000E, 0x00000015, 0x00000015, 0x00000014, 0x00000012,
113  0x00000014, 0x00000016, 0x00000013, 0x00000016, 0x00000017, 0x00000013,
114  0x00000016, 0x00000018, 0x00000017, 0x00000017, 0x00000011, 0x00000013,
115  0x00000000, 0x0000000F, 0x00000019, 0x0000000F, 0x0000001A, 0x00000019,
116  0x0000000F, 0x00000011, 0x0000001A, 0x0000001A, 0x0000001B, 0x00000019,
117  0x00000011, 0x0000001C, 0x0000001A, 0x0000001C, 0x0000001D, 0x0000001A,
118  0x0000001C, 0x0000001E, 0x0000001D, 0x0000001D, 0x0000001B, 0x0000001A,
119  0x00000011, 0x00000017, 0x0000001C, 0x00000017, 0x0000001F, 0x0000001C,
120  0x00000017, 0x00000018, 0x0000001F, 0x0000001F, 0x0000001E, 0x0000001C,
121  0x0000001E, 0x00000020, 0x0000001D, 0x00000020, 0x00000021, 0x0000001D,
122  0x00000020, 0x00000022, 0x00000021, 0x00000021, 0x0000001B, 0x0000001D,
123  0x00000000, 0x00000019, 0x00000001, 0x00000019, 0x00000023, 0x00000001,
124  0x00000019, 0x0000001B, 0x00000023, 0x00000023, 0x00000004, 0x00000001,
125  0x0000001B, 0x00000024, 0x00000023, 0x00000024, 0x00000025, 0x00000023,
126  0x00000024, 0x00000026, 0x00000025, 0x00000025, 0x00000004, 0x00000023,
127  0x0000001B, 0x00000021, 0x00000024, 0x00000021, 0x00000027, 0x00000024,
128  0x00000021, 0x00000022, 0x00000027, 0x00000027, 0x00000026, 0x00000024,
129  0x00000026, 0x00000028, 0x00000025, 0x00000028, 0x00000009, 0x00000025,
130  0x00000028, 0x0000000B, 0x00000009, 0x00000009, 0x00000004, 0x00000025,
131  0x00000029, 0x0000002A, 0x0000002B, 0x0000002A, 0x0000002C, 0x0000002B,
132  0x0000002A, 0x0000002D, 0x0000002C, 0x0000002C, 0x0000002E, 0x0000002B,
133  0x0000002D, 0x0000002F, 0x0000002C, 0x0000002F, 0x00000030, 0x0000002C,
134  0x0000002F, 0x00000008, 0x00000030, 0x00000030, 0x0000002E, 0x0000002C,
135  0x0000002D, 0x00000031, 0x0000002F, 0x00000031, 0x0000000A, 0x0000002F,
136  0x00000031, 0x0000000B, 0x0000000A, 0x0000000A, 0x00000008, 0x0000002F,
137  0x00000008, 0x0000000C, 0x00000030, 0x0000000C, 0x00000032, 0x00000030,
138  0x0000000C, 0x0000000E, 0x00000032, 0x00000032, 0x0000002E, 0x00000030,
139  0x00000029, 0x0000002B, 0x00000033, 0x0000002B, 0x00000034, 0x00000033,
140  0x0000002B, 0x0000002E, 0x00000034, 0x00000034, 0x00000035, 0x00000033,
141  0x0000002E, 0x00000036, 0x00000034, 0x00000036, 0x00000037, 0x00000034,
142  0x00000036, 0x00000014, 0x00000037, 0x00000037, 0x00000035, 0x00000034,
143  0x0000002E, 0x00000032, 0x00000036, 0x00000032, 0x00000015, 0x00000036,
144  0x00000032, 0x0000000E, 0x00000015, 0x00000015, 0x00000014, 0x00000036,
145  0x00000014, 0x00000016, 0x00000037, 0x00000016, 0x00000038, 0x00000037,
146  0x00000016, 0x00000018, 0x00000038, 0x00000038, 0x00000035, 0x00000037,
147  0x00000029, 0x00000033, 0x00000039, 0x00000033, 0x0000003A, 0x00000039,
148  0x00000033, 0x00000035, 0x0000003A, 0x0000003A, 0x0000003B, 0x00000039,
149  0x00000035, 0x0000003C, 0x0000003A, 0x0000003C, 0x0000003D, 0x0000003A,
150  0x0000003C, 0x0000001E, 0x0000003D, 0x0000003D, 0x0000003B, 0x0000003A,
151  0x00000035, 0x00000038, 0x0000003C, 0x00000038, 0x0000001F, 0x0000003C,
152  0x00000038, 0x00000018, 0x0000001F, 0x0000001F, 0x0000001E, 0x0000003C,
153  0x0000001E, 0x00000020, 0x0000003D, 0x00000020, 0x0000003E, 0x0000003D,
154  0x00000020, 0x00000022, 0x0000003E, 0x0000003E, 0x0000003B, 0x0000003D,
155  0x00000029, 0x00000039, 0x0000002A, 0x00000039, 0x0000003F, 0x0000002A,
156  0x00000039, 0x0000003B, 0x0000003F, 0x0000003F, 0x0000002D, 0x0000002A,
157  0x0000003B, 0x00000040, 0x0000003F, 0x00000040, 0x00000041, 0x0000003F,
158  0x00000040, 0x00000026, 0x00000041, 0x00000041, 0x0000002D, 0x0000003F,
159  0x0000003B, 0x0000003E, 0x00000040, 0x0000003E, 0x00000027, 0x00000040,
160  0x0000003E, 0x00000022, 0x00000027, 0x00000027, 0x00000026, 0x00000040,
161  0x00000026, 0x00000028, 0x00000041, 0x00000028, 0x00000031, 0x00000041,
162  0x00000028, 0x0000000B, 0x00000031, 0x00000031, 0x0000002D, 0x00000041}};
163 
164 #include "MapsLongTimer.h"
166 
169 
172 
173 std::array<stat_coord, 26> stat_string_coord = // 4E2940
174  {{
175  {0x1A, 0x39, 0xDC, 0x12}, {0x1A, 0x4A, 0xDC, 0x12},
176  {0x1A, 0x5B, 0xDC, 0x12}, {0x1A, 0x6C, 0xDC, 0x12},
177  {0x1A, 0x7D, 0xDC, 0x12}, {0x1A, 0x8E, 0xDC, 0x12},
178  {0x1A, 0x9F, 0xDC, 0x12}, {0x1A, 0xC6, 0xDC, 0x12},
179  {0x1A, 0xD7, 0xDC, 0x12}, {0x1A, 0xE8, 0xDC, 0x12},
180  {0x1A, 0x10C, 0xDC, 0x12}, {0x1A, 0x11E, 0xDC, 0x12},
181  {0x111, 0x36, 0xBA, 0x12}, {0x111, 0x47, 0xBA, 0x12},
182  {0x111, 0x58, 0xBA, 0x12}, {0x111, 0x7E, 0xBA, 0x12},
183  {0x111, 0x8F, 0xBA, 0x12}, {0x111, 0xA0, 0xBA, 0x12},
184  {0x111, 0xB1, 0xBA, 0x12}, {0x111, 0xCA, 0xBA, 0x12},
185  {0x111, 0xDD, 0xBA, 0x12}, {0x111, 0xF0, 0xBA, 0x12},
186  {0x111, 0x103, 0xBA, 0x12}, {0x111, 0x116, 0xBA, 0x12},
187  {0x111, 0x129, 0xBA, 0x12}, {0x13E, 0x12, 0x89, 0x12},
188  }};
189 
190 //-------------------------------------------------------------------------
191 // Data declarations
192 
194 unsigned int game_viewport_width;
195 unsigned int game_viewport_height;
200 
201 std::array<unsigned int, 2> saveload_dlg_xs = {{82, 0}};
202 std::array<unsigned int, 2> saveload_dlg_ys = {{60, 0}};
203 std::array<unsigned int, 2> saveload_dlg_zs = {{460, 640}};
204 std::array<unsigned int, 2> saveload_dlg_ws = {{344, 480}};
206 int dword_4C9890[10];
207 int dword_4C9920[16];
209 float flt_4D86CC = 1.0f; // spot light scale??
210 int dword_4D86D8 = 0x40000000;
211 
212 float flt_4D84E8 = 0.0f;
213 
214 unsigned int uGammaPos = 0;
215 std::array<int, 8> BtnTurnCoord = {{
216  0xA4,
217  0x5D,
218  0x16,
219  0xB,
220  0x5,
221  0xD,
222  0x7,
223  0x3B,
224 }};
225 std::array<__int16, 4> RightClickPortraitXmin = {{0x14, 0x83, 0xF2, 0x165}};
226 std::array<__int16, 4> RightClickPortraitXmax = {{0x53, 0xC6, 0x138, 0x1A7}};
227 
228 std::array<unsigned int, 4> pHealthBarPos = {{22, 137, 251, 366}};
229 std::array<unsigned int, 4> pManaBarPos = {{102, 217, 331, 447}};
230 
231 std::array<char, 88> monster_popup_y_offsets = {
232  {-20, 20, 0, -40, 0, 0, 0, 0, 0, 0, -50, 20, 0, -10, -10,
233  -20, 10, -10, 0, 0, 0, -20, 10, -10, 0, 0, 0, -20, -10, 0,
234  0, 0, -40, -20, 0, 0, 0, -50, -30, -30, -30, -30, -30, -30, 0,
235  0, 0, 0, 0, 0, -20, -20, -20, 20, 20, 20, 10, 10, 10, 10,
236  10, 10, -90, -60, -40, -20, -20, -80, -10, 0, 0, -40, 0, 0, 0,
237  -20, 10, 0, 0, 0, 0, 0, 0, -60, 0, 0, 0, 0}};
238 unsigned char hourglass_icon_idx = 12;
239 
240 const char *format_4E2D80 = "\f%05d%s\f00000\n";
241 // const char *format_4E2DC8 = "\f%05d";
242 const char *format_4E2DE8 = "\f%05d%s\f00000 - ";
243 const char *Stat_string_format_2_column_text = "%s\f%05u\r180%s\n";
244 const char *Stat_string_format_2_column_less_100 = "%s\f%05u\t110%d\f00000 / %d\n";
245 const char *Stat_string_format_2_column_over_100 = "%s\f%05u\r180%d\f00000 / %d\n";
247 std::array<int, 6> dword_4E4560;
248 std::array<int, 6> dword_4E4578;
249 std::array<int, 6> dword_4E4590;
250 std::array<int, 6> dword_4E45A8;
251 std::array<float, 10> flt_4E4A80 = {{
252  0.050000001f, 0.1f, 0.30000001f, 0.5f,
253  0.60000002f, 1.0f, 6.0f, 25.0f,
254  50.0f, 100.0f
255 }};
256 
257 std::array<std::array<int, 2>, 14> pPartySpellbuffsUI_XYs = {{
258  {{477, 247}},
259  {{497, 247}},
260  {{522, 247}},
261  {{542, 247}},
262  {{564, 247}},
263  {{581, 247}},
264  {{614, 247}},
265  {{477, 279}},
266  {{497, 279}},
267  {{522, 279}},
268  {{542, 279}},
269  {{564, 279}},
270  {{589, 279}},
271  {{612, 279}}
272 }};
273 std::array<unsigned char, 14> byte_4E5DD8 = {
279 std::array<unsigned __int8, 14> pPartySpellbuffsUI_smthns = {
280  {14, 1, 10, 4, 7, 2, 9, 3, 6, 15, 8, 3, 12, 0}};
281 
282 std::array<std::array<int, 6>, 6> pNPCPortraits_x = {{
283  {{521, 0, 0, 0, 0, 0}},
284  {{521, 521, 0, 0, 0, 0}},
285  {{521, 521, 521, 0, 0, 0}},
286  {{521, 486, 564, 521, 0, 0}},
287  {{521, 486, 564, 486, 564, 0}},
288  {{486, 564, 486, 564, 486, 564}}
289 }};
290 std::array<std::array<int, 6>, 6> pNPCPortraits_y = {{
291  {{38, 0, 0, 0, 0, 0}},
292  {{38, 165, 0, 0, 0, 0}},
293  {{38, 133, 228, 0, 0, 0}},
294  {{38, 133, 133, 228, 0, 0}},
295  {{38, 133, 133, 228, 228, 0}},
296  {{38, 38, 133, 133, 228, 228}}
297 }};
298 std::array<const char *, 11> pHouse_ExitPictures = {{
299  "", "ticon01", "ticon02", "ticon03", "ticon04", "ticon05",
300  "istairup", "itrap", "outside", "idoor", "isecdoor"
301 }};
302 
303 std::array<int16_t, 11> word_4E8152 = {{0, 0, 0, 90, 8, 2, 70, 20, 10, 50, 30}}; // level spawn monster levels ABC
304 
308 // char *off_4EB080; // idb
309 std::array<char *, 465> pTransitionStrings = {{"", nullptr}};
310 std::array<const char *, 25> pPlayerPortraitsNames = {{
311  "pc01-", "pc02", "pc03", "pc04", "pc05-", "pc06", "pc07",
312  "pc08", "pc09-", "pc10", "pc11-", "pc12", "pc13", "pc14",
313  "pc15", "pc16", "pc17-", "pc18", "pc19", "pc20", "pc21-",
314  "pc22-", "pc23", "pc24-", "pc25-"
315 }};
316 
317 std::array<std::array<unsigned char, 25>, 48> byte_4ECF08 = {{
318  {{2, 1, 2, 1, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 1, 1}}, // 1
319  {{2, 1, 2, 1, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2}}, // 2
320  {{2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2}}, // 3
321  {{2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2}}, // 4
322  {{2, 1, 2, 2, 2, 2, 2, 2, 1, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2}}, // 5
323  {{2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2}}, // 6
324  {{2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2}}, // 7
325  {{2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 1, 1}}, // 8
326  {{2, 1, 2, 2, 2, 2, 1, 2, 1, 2, 2, 2, 1, 2, 2, 1, 2, 2, 1, 2, 2, 2, 2, 2, 2}}, // 9
327  {{2, 1, 2, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2}}, // 10
328  {{2, 2, 2, 2, 2, 1, 1, 2, 2, 2, 2, 1, 1, 2, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2}}, // 11
329  {{1, 1, 2, 1, 2, 1, 1, 2, 2, 2, 2, 2, 2, 1, 2, 1, 2, 1, 1, 2, 1, 2, 1, 2, 2}}, // 12
330  {{2, 1, 2, 1, 2, 2, 2, 2, 2, 2, 1, 2, 2, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2}}, // 13
331  {{1, 1, 2, 1, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 1, 2, 2, 1, 2, 1, 2, 1, 2, 2}}, // 14
332  {{2, 1, 1, 2, 1, 1, 2, 1, 2, 2, 2, 1, 2, 2, 2, 2, 1, 1, 2, 2, 2, 2, 2, 2, 2}}, // 15
333  {{1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 1, 1}}, // 16
334  {{1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}}, // 17
335  {{1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 2, 2, 1, 2, 1, 1, 1, 2, 1, 2, 1, 1}}, // 18
336  {{1, 1, 1, 1, 2, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}}, // 19
337  {{1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}}, // 20
338  {{1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}}, // 21
339  {{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}}, // 22
340  {{2, 2, 2, 1, 2, 2, 2, 2, 1, 2, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1}}, // 23
341  {{2, 2, 2, 1, 2, 2, 2, 2, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2}}, // 24
342  {{1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 2, 1, 1, 1, 1, 2, 2, 2, 1, 2, 1, 1}}, // 25
343  {{2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2}}, // 26
344  {{2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 1, 2, 1, 2, 2, 2, 2, 2, 2, 2}}, // 27
345  {{1, 2, 2, 1, 2, 2, 2, 2, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}}, // 28
346  {{2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 2, 2, 2, 2, 2, 1, 2, 2, 1, 2, 1, 1}}, // 29
347  {{1, 2, 2, 1, 2, 1, 2, 2, 1, 2, 2, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 1, 1, 1, 1}}, // 30
348  {{1, 1, 2, 1, 2, 1, 2, 2, 2, 2, 2, 1, 2, 1, 2, 1, 2, 2, 2, 2, 2, 1, 2, 1, 1}}, // 31
349  {{1, 1, 2, 1, 1, 2, 2, 2, 2, 1, 2, 2, 1, 1, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2}}, // 32
350  {{1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 2, 1, 1, 2, 2, 2, 1, 1, 1, 1, 1}}, // 33
351  {{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 2, 1, 2, 1, 2, 1, 1, 1, 1, 1, 1}}, // 34
352  {{1, 1, 1, 2, 1, 2, 2, 1, 1, 2, 2, 1, 2, 2, 1, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2}}, // 35
353  {{1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2}}, // 36
354  {{2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2}}, // 37
355  {{2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 1, 2, 1, 1}}, // 38
356  {{1, 1, 1, 1, 2, 2, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1}}, // 39
357  {{1, 2, 2, 1, 2, 2, 2, 2, 2, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}}, // 40
358  {{2, 1, 2, 1, 2, 1, 2, 2, 2, 1, 1, 2, 1, 2, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1}}, // 41
359  {{1, 2, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 2, 1, 2, 1, 1}}, // 42
360  {{1, 2, 1, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}}, // 43
361  {{1, 2, 1, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 2, 1, 1, 2, 1, 2, 1, 1, 2, 1, 2, 2}}, // 44
362  {{2, 1, 1, 1, 2, 2, 1, 1, 2, 1, 2, 1, 2, 1, 2, 2, 1, 2, 2, 2, 1, 2, 1, 2, 2}}, // 45
363  {{1, 1, 1, 2, 2, 2, 1, 1, 2, 1, 2, 1, 2, 2, 2, 2, 2, 1, 1, 2, 1, 2, 1, 2, 2}}, // 46
364  {{1, 1, 1, 1, 1, 1, 2, 1, 2, 1, 1, 2, 2, 2, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1}}, // 47
365  {{1, 1, 1, 1, 1, 1, 2, 1, 2, 1, 1, 2, 2, 2, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1}} // 48
366 }};
367 std::array<std::array<unsigned char, 8>, 110> SoundSetAction = {{
368  {{0, 0, 0, 0, 0, 0, 0, 0}}, {{38, 0, 0, 37, 38, 45, 0, 0}},
369  {{37, 0, 0, 47, 53, 0, 0, 0}}, {{2, 0, 0, 25, 0, 0, 0, 0}},
370  {{1, 0, 0, 47, 0, 0, 0, 0}}, {{3, 0, 0, 41, 42, 0, 0, 0}},
371  {{0, 0, 0, 33, 0, 0, 0, 0}}, {{5, 0, 0, 21, 22, 23, 24, 45}},
372  {{6, 0, 0, 47, 0, 0, 0, 0}}, {{7, 0, 0, 43, 48, 0, 0, 0}},
373  {{8, 0, 0, 38, 0, 0, 0, 0}}, {{9, 0, 0, 39, 0, 0, 0, 0}},
374  {{13, 0, 0, 37, 38, 0, 0, 0}}, {{23, 0, 0, 25, 0, 0, 0, 0}},
375  {{0, 0, 0, 37, 38, 45, 0, 0}}, {{25, 0, 0, 25, 0, 0, 0, 0}},
376  {{26, 0, 0, 38, 47, 0, 0, 0}}, {{27, 0, 0, 41, 42, 0, 0, 0}},
377  {{28, 0, 0, 25, 0, 0, 0, 0}}, {{0, 0, 0, 51, 0, 0, 0, 0}},
378  {{30, 0, 0, 25, 0, 0, 0, 0}}, {{29, 0, 0, 27, 0, 0, 0, 0}},
379  {{32, 33, 0, 37, 38, 0, 0, 0}}, {{34, 0, 0, 53, 0, 0, 0, 0}},
380  {{15, 0, 0, 34, 35, 36, 0, 0}}, {{0, 0, 0, 3, 0, 0, 0, 0}},
381  {{22, 0, 0, 5, 0, 0, 0, 0}}, {{20, 0, 0, 8, 0, 0, 0, 0}},
382  {{20, 0, 0, 9, 0, 0, 0, 0}}, {{19, 0, 0, 7, 0, 0, 0, 0}},
383  {{21, 0, 0, 2, 0, 0, 0, 0}}, {{18, 0, 0, 6, 0, 0, 0, 0}},
384  {{0, 0, 0, 11, 0, 0, 0, 0}}, {{17, 0, 0, 0, 0, 0, 0, 0}},
385  {{0, 0, 0, 12, 0, 0, 0, 0}}, {{17, 0, 0, 0, 0, 0, 0, 0}},
386  {{0, 0, 0, 37, 0, 0, 0, 0}}, {{0, 0, 0, 49, 0, 0, 0, 0}},
387  {{24, 0, 0, 25, 0, 0, 0, 0}}, {{31, 0, 0, 25, 0, 0, 0, 0}},
388  {{0, 0, 0, 41, 42, 0, 0, 0}}, {{0, 0, 0, 39, 48, 0, 0, 0}},
389  {{0, 0, 0, 46, 0, 0, 0, 0}}, {{0, 0, 0, 39, 48, 0, 0, 0}},
390  {{0, 0, 0, 41, 42, 0, 0, 0}}, {{0, 0, 0, 39, 48, 0, 0, 0}},
391  {{41, 0, 0, 21, 0, 0, 0, 0}}, {{40, 0, 0, 21, 0, 0, 0, 0}},
392  {{16, 0, 0, 46, 0, 0, 0, 0}}, {{0, 0, 0, 40, 0, 0, 0, 0}},
393  {{0, 0, 0, 39, 0, 0, 0, 0}}, {{0, 0, 0, 37, 38, 0, 0, 0}},
394  {{0, 0, 0, 48, 49, 50, 0, 0}}, {{0, 0, 0, 44, 0, 0, 0, 0}},
395  {{0, 0, 0, 48, 0, 0, 0, 0}}, {{0, 0, 0, 37, 38, 45, 0, 0}},
396  {{0, 0, 0, 41, 42, 0, 0, 0}}, {{0, 0, 0, 47, 0, 0, 0, 0}},
397  {{0, 0, 0, 39, 48, 0, 0, 0}}, {{0, 0, 0, 39, 48, 0, 0, 0}},
398  {{0, 0, 0, 37, 38, 0, 0, 0}}, {{0, 0, 0, 37, 38, 0, 0, 0}},
399  {{0, 0, 0, 37, 38, 0, 0, 0}}, {{0, 0, 0, 31, 0, 0, 0, 0}},
400  {{0, 0, 0, 32, 0, 0, 0, 0}}, {{47, 0, 0, 46, 0, 0, 0, 0}},
401  {{22, 0, 0, 5, 0, 0, 0, 0}}, {{0, 0, 0, 25, 0, 0, 0, 0}},
402  {{0, 0, 0, 37, 0, 0, 0, 0}}, {{0, 0, 0, 52, 0, 0, 0, 0}},
403  {{0, 0, 0, 45, 0, 0, 0, 0}}, {{0, 0, 0, 27, 0, 0, 0, 0}},
404  {{0, 0, 0, 37, 38, 0, 0, 0}}, {{0, 0, 0, 49, 0, 0, 0, 0}},
405  {{0, 0, 0, 48, 0, 0, 0, 0}}, {{0, 0, 0, 37, 38, 45, 0, 0}},
406  {{0, 0, 0, 48, 0, 0, 0, 0}}, {{0, 0, 0, 37, 38, 45, 0, 0}},
407  {{0, 0, 0, 47, 0, 0, 0, 0}}, {{0, 0, 0, 48, 0, 0, 0, 0}},
408  {{44, 0, 0, 39, 48, 0, 0, 0}}, {{0, 0, 0, 48, 49, 0, 0, 0}},
409  {{0, 0, 0, 38, 0, 0, 0, 0}}, {{0, 0, 0, 31, 0, 0, 0, 0}},
410  {{32, 33, 0, 37, 38, 0, 0, 0}}, {{0, 0, 0, 37, 38, 0, 0, 0}},
411  {{0, 0, 0, 37, 38, 0, 0, 0}}, {{0, 0, 0, 47, 0, 0, 0, 0}},
412  {{0, 0, 0, 38, 0, 0, 0, 0}}, {{0, 0, 0, 48, 0, 0, 0, 0}},
413  {{0, 0, 0, 0, 0, 0, 0, 0}}, {{0, 0, 0, 38, 0, 0, 0, 0}},
414  {{0, 0, 0, 47, 0, 0, 0, 0}}, {{0, 0, 0, 38, 0, 0, 0, 0}},
415  {{0, 0, 0, 0, 0, 0, 0, 0}}, {{0, 0, 0, 0, 0, 0, 0, 0}},
416  {{0, 0, 0, 38, 0, 0, 0, 0}}, {{0, 0, 0, 38, 0, 0, 0, 0}},
417  {{0, 0, 0, 5, 0, 0, 0, 0}}, {{0, 0, 0, 37, 38, 0, 0, 0}},
418  {{0, 0, 0, 44, 0, 0, 0, 0}}, {{0, 0, 0, 48, 0, 0, 0, 0}},
419  {{4, 0, 0, 0, 0, 0, 0, 0}}, {{0, 0, 0, 58, 0, 0, 0, 0}},
420  {{10, 0, 0, 45, 0, 0, 0, 0}}, {{11, 0, 0, 47, 0, 0, 0, 0}},
421  {{12, 0, 0, 43, 48, 0, 0, 0}}, {{39, 0, 0, 48, 0, 0, 0, 0}},
422  {{14, 0, 0, 48, 0, 0, 0, 0}}, {{17, 0, 0, 0, 0, 0, 0, 0}}
423 }};
424 std::array<int16_t, 4> pPlayerPortraitsXCoords_For_PlayerBuffAnimsDrawing = {{34, 149, 264, 379}};
425 std::array<std::array<char, 37>, 36> byte_4ED970_skill_learn_ability_by_class_table = {{
426  {{2, 3, 2, 3, 3, 2, 3, 4, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 3, 0, 2, 1, 0, 1, 2, 2, 0, 3, 0, 0, 1}}, // Knight
427  {{2, 3, 2, 3, 3, 2, 3, 4, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 3, 0, 2, 1, 0, 1, 2, 2, 0, 3, 0, 0, 1}},
428  {{2, 4, 2, 3, 4, 2, 3, 4, 4, 3, 3, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 4, 4, 0, 2, 1, 0, 1, 2, 2, 0, 4, 0, 0, 1}},
429  {{2, 4, 2, 3, 4, 2, 3, 4, 4, 3, 3, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 4, 4, 0, 2, 1, 0, 1, 2, 2, 0, 4, 0, 0, 1}},
430 
431  {{0, 3, 3, 0, 0, 2, 2, 4, 1, 3, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 1, 2, 0, 3, 0, 0, 3, 3, 2, 0, 3, 3, 2, 2}}, // Thief
432  {{0, 3, 3, 0, 0, 2, 2, 4, 1, 3, 2, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 3, 3, 1, 2, 0, 3, 0, 0, 3, 3, 2, 0, 3, 3, 2, 2}},
433  {{0, 3, 4, 0, 0, 2, 2, 4, 1, 4, 2, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 3, 3, 1, 2, 0, 3, 0, 0, 4, 3, 2, 0, 3, 4, 2, 2}},
434  {{0, 3, 4, 0, 0, 2, 2, 4, 1, 4, 2, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 3, 3, 1, 2, 0, 3, 0, 0, 4, 3, 2, 0, 3, 4, 2, 2}},
435 
436  {{3, 2, 2, 0, 2, 1, 0, 4, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 2, 1, 0, 1, 3, 3, 2, 3, 1, 0, 3}}, // Monk
437  {{3, 2, 2, 0, 2, 1, 0, 4, 0, 3, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 3, 0, 2, 1, 0, 2, 3, 3, 2, 3, 1, 0, 3}},
438  {{4, 2, 2, 0, 2, 1, 0, 4, 0, 3, 0, 0, 0, 0, 0, 0, 2, 2, 2, 0, 0, 0, 0, 0, 4, 0, 2, 1, 0, 2, 4, 4, 2, 3, 1, 0, 4}},
439  {{4, 2, 2, 0, 2, 1, 0, 4, 0, 3, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 4, 0, 2, 1, 0, 3, 4, 4, 2, 3, 2, 0, 4}},
440 
441  {{1, 3, 2, 2, 2, 2, 3, 4, 3, 2, 2, 3, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 2, 3, 3, 2, 1, 3, 0, 0, 1, 1, 0, 2, 0, 0, 1}}, // Paladin
442  {{1, 3, 2, 2, 2, 2, 3, 4, 3, 2, 2, 3, 0, 0, 0, 0, 2, 2, 2, 0, 0, 0, 2, 3, 3, 2, 1, 3, 0, 0, 1, 1, 0, 2, 0, 0, 1}},
443  {{1, 3, 2, 2, 2, 2, 4, 4, 4, 2, 2, 3, 0, 0, 0, 0, 3, 3, 3, 1, 0, 0, 2, 4, 3, 2, 1, 4, 0, 0, 1, 1, 0, 2, 0, 0, 1}},
444  {{1, 3, 2, 2, 2, 2, 4, 4, 4, 2, 2, 3, 0, 0, 0, 0, 3, 3, 3, 0, 1, 0, 2, 4, 3, 2, 1, 4, 0, 0, 1, 1, 0, 2, 0, 0, 1}},
445 
446  {{1, 2, 2, 2, 3, 3, 0, 4, 0, 3, 3, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 3, 0, 0, 1, 2, 1, 0, 2, 0, 0, 3}}, // Archer
447  {{1, 2, 2, 2, 3, 3, 0, 4, 0, 3, 3, 0, 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 3, 0, 0, 1, 2, 1, 0, 2, 0, 0, 3}},
448  {{1, 2, 2, 2, 3, 4, 0, 4, 0, 3, 4, 0, 3, 3, 3, 3, 0, 0, 0, 1, 0, 0, 2, 2, 2, 2, 4, 0, 0, 2, 2, 1, 0, 2, 0, 0, 3}},
449  {{1, 2, 2, 2, 3, 4, 0, 4, 0, 3, 4, 0, 3, 3, 3, 3, 0, 0, 0, 0, 1, 0, 2, 2, 2, 2, 4, 0, 0, 2, 2, 1, 0, 2, 0, 0, 3}},
450 
451  {{1, 2, 2, 3, 2, 3, 0, 4, 2, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 2, 1, 3, 2, 0, 2, 2, 1, 3, 2, 2, 1, 2}}, // Ranger
452  {{1, 2, 2, 3, 2, 3, 0, 4, 2, 3, 3, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 2, 1, 3, 2, 0, 2, 2, 1, 3, 2, 2, 1, 2}},
453  {{1, 2, 2, 4, 2, 3, 0, 4, 2, 3, 3, 0, 2, 2, 2, 2, 2, 2, 2, 0, 0, 1, 1, 1, 2, 1, 3, 2, 0, 2, 2, 1, 4, 2, 2, 1, 2}},
454  {{1, 2, 2, 4, 2, 3, 0, 4, 2, 3, 3, 0, 2, 2, 2, 2, 2, 2, 2, 0, 0, 1, 1, 1, 2, 1, 3, 2, 0, 2, 2, 1, 4, 2, 2, 1, 2}},
455 
456  {{1, 0, 0, 0, 0, 2, 3, 4, 3, 2, 2, 0, 0, 0, 0, 0, 2, 2, 2, 0, 0, 0, 3, 3, 1, 3, 2, 3, 0, 0, 0, 0, 2, 0, 0, 2, 3}}, // Cleric
457  {{1, 0, 0, 0, 0, 2, 3, 4, 3, 2, 2, 0, 0, 0, 0, 0, 3, 3, 3, 0, 0, 0, 3, 3, 1, 3, 2, 3, 0, 0, 0, 0, 2, 0, 0, 2, 3}},
458  {{1, 0, 0, 0, 0, 2, 3, 4, 3, 2, 2, 0, 0, 0, 0, 0, 4, 4, 4, 4, 0, 0, 4, 3, 1, 3, 2, 3, 0, 0, 0, 0, 2, 0, 0, 2, 3}},
459  {{1, 0, 0, 0, 0, 2, 3, 4, 3, 2, 2, 0, 0, 0, 0, 0, 4, 4, 4, 0, 4, 0, 4, 3, 1, 3, 2, 3, 0, 0, 0, 0, 2, 0, 0, 2, 3}},
460 
461  {{1, 0, 3, 0, 0, 1, 2, 4, 2, 2, 0, 0, 2, 2, 2, 2, 2, 2, 2, 0, 0, 2, 2, 0, 0, 3, 2, 0, 0, 0, 0, 0, 2, 1, 0, 3, 3}}, // Druid
462  {{1, 0, 3, 0, 0, 1, 2, 4, 2, 2, 0, 0, 3, 3, 3, 3, 3, 3, 3, 0, 0, 2, 2, 0, 0, 3, 2, 0, 0, 0, 0, 0, 2, 1, 0, 3, 3}},
463  {{1, 0, 3, 0, 0, 1, 2, 4, 2, 2, 0, 0, 3, 3, 3, 3, 3, 3, 3, 0, 0, 2, 2, 0, 0, 4, 2, 0, 0, 0, 0, 0, 2, 1, 0, 4, 3}},
464  {{1, 0, 3, 0, 0, 1, 2, 4, 2, 2, 0, 0, 3, 3, 3, 3, 3, 3, 3, 0, 0, 2, 2, 0, 0, 4, 2, 0, 0, 0, 0, 0, 2, 1, 0, 4, 3}},
465 
466  {{3, 0, 2, 0, 0, 1, 0, 4, 0, 2, 0, 0, 2, 2, 2, 2, 0, 0, 0, 0, 0, 3, 1, 2, 0, 3, 2, 1, 0, 0, 0, 0, 3, 0, 0, 3, 3}}, // Sorcerer
467  {{3, 0, 2, 0, 0, 1, 0, 4, 0, 2, 0, 0, 3, 3, 3, 3, 0, 0, 0, 0, 0, 3, 1, 2, 0, 3, 2, 1, 0, 0, 0, 0, 3, 0, 0, 3, 3}},
468  {{3, 0, 2, 0, 0, 1, 0, 4, 0, 2, 0, 0, 4, 4, 4, 4, 0, 0, 0, 4, 0, 4, 1, 2, 0, 3, 2, 1, 0, 0, 0, 0, 4, 0, 0, 3, 3}},
469  {{3, 0, 2, 0, 0, 1, 0, 4, 0, 2, 0, 0, 4, 4, 4, 4, 0, 0, 0, 0, 4, 4, 1, 2, 0, 3, 2, 1, 0, 0, 0, 0, 4, 0, 0, 3, 3}}
470 }};
471 std::array<unsigned int, 2> pHiredNPCsIconsOffsetsX = {{489, 559}};
472 std::array<unsigned int, 2> pHiredNPCsIconsOffsetsY = {{152, 152}};
473 std::array<int, 2> Party_Spec_Motion_status_ids = {{7, 18}}; // dword_4EE07C
474 std::array<short, 28> word_4EE150 = {{1, 2, 3, 4, 5, 7, 32, 33, 36, 37,
475  38, 40, 41, 42, 43, 45, 46, 47, 48, 49,
476  50, 51, 52, 53, 54, 55, 56, 60}};
477 
478 int ScreenshotFileNumber; // dword_4EFA80
479 
480 std::array<int, 32> guild_mambership_flags = {
481  {54, 54, 54, 54, 52, 52, 52, 52, 55, 55, 55, 55, 53, 53, 53, 53,
482  58, 58, 58, 58, 57, 57, 57, 57, 56, 56, 56, 56, 59, 59, 60, 60}};
483 std::array<int16_t, 49> word_4F0754;
484 std::array<int16_t, 54> _4F0882_evt_VAR_PlayerItemInHands_vals = {{
485  0x0D4, 0x270, 0x0D5, 0x21C, 0x0D6, 0x2BE, 0x0D7, 0x2BD, 0x0D8,
486  0x289, 0x0D9, 0x258, 0x0DA, 0x2AB, 0x0DB, 0x281, 0x0DC, 0x280,
487  0x0DD, 0x284, 0x0DE, 0x285, 0x0DF, 0x283, 0x0E0, 0x282, 0x0E1,
488  0x27F, 0x0E2, 0x1E7, 0x0E3, 0x287, 0x0E4, 0x272, 0x0E5, 0x267,
489  0x0E6, 0x275, 0x0E7, 0x25A, 0x0E8, 0x2A4, 0x0E9, 0x2A5, 0x0EA,
490  0x2A3, 0x0EB, 0x25C, 0x0EC, 0x25D, 0x0ED, 0x259, 0x0F1, 0x21E
491 }};
492 std::array<unsigned short, 6> pMaxLevelPerTrainingHallType = {{5, 15, 25, 25, 200, 200}};
493 
494 std::array<int, 11> price_for_membership = {{100, 100, 50, 50, 50, 50, 50, 50, 50, 1000, 1000}};
495 
496 std::array<int16_t, 32> word_4F0F30 = {{
497  4, 7, 10, 11, 4, 7, 10, 11, 4, 7, 10, 11, 4, 7, 10, 11,
498  4, 7, 10, 11, 4, 7, 10, 11, 4, 7, 10, 11, 7, 11, 7, 11
499 }};
500 std::array<int, 500> ai_array_4F5E68;
501 std::array<int, 500> ai_array_4F6638_actor_ids;
502 std::array<int, 500> ai_near_actors_targets_pid;
504 std::array<int, 500> ai_near_actors_distances;
505 std::array<unsigned int, 500> ai_near_actors_ids;
506 std::array<int, 182> dword_4F8580 = {};
507 
508 char byte_4FAA24; // turn over break??
509 // HWND dword_4FAA28; // idb
510 
511 std::array<unsigned int, 480> pSRZBufferLineOffsets;
512 std::array<char, 777> books_num_items_per_page;
513 int lloyds_beacon_spell_id; // dword_506338
514 int lloyds_beacon_sound_id; // dword_50633C
515 signed int sRecoveryTime; // idb
516 unsigned int uRequiredMana; // idb
518 __int64 lloyds_beacon_spell_level; // qword_506350
523 int Autonotes_Misc_page_flag; // dword_506530
524 int Book_PageBtn6_flag; // dword_506534
525 int Book_PageBtn5_flag; // dword_506538
526 int Book_PageBtn4_flag; // dword_50653C
527 int Book_PageBtn3_flag; // dword_506540
528 int BtnDown_flag; // BtnDown_flag
529 int BtnUp_flag; // BtnUp_flag
535 // unsigned __int8 bMonsterInfoUI_bDollInitialized;
541 std::array<unsigned int, 28> pPrevVirtualCidesMapping;
552 unsigned int uGameUIFontShadow;
553 unsigned int uGameUIFontMain;
555 unsigned int uActiveCharacter;
562 std::array<int, 50> dword_50B570;
563 std::array<int, 50> dword_50B638;
565 std::array<int, 100> dword_50BC10;
566 std::array<int, 100> dword_50BDA0;
567 std::array<int, 100> _50BF30_actors_in_viewport_ids;
570 std::array<unsigned int, 5> pIconIDs_Turn;
571 unsigned int uIconID_TurnStop;
572 unsigned int uIconID_TurnHour;
574 unsigned int uIconID_TurnStart;
575 int dword_50C994 = 0;
577 int uSpriteID_Spell11; // idb
585 // int dword_50C9E8; // idb
586 // int dword_50C9EC[120];
589 char pStartingMapName[32]; // idb
590 std::array<unsigned __int8, 5> IsPlayerWearingWatersuit;
591 std::array<char, 54> party_has_equipment;
592 std::array<char, 17> byte_5111F6_OwnedArtifacts;
593 
594 unsigned int uNumBlueFacesInBLVMinimap; // could remove
595 std::array<unsigned __int16, 50> pBlueFacesInBLVMinimapIDs;
596 std::array<class Image *, 14> party_buff_icons;
597 unsigned int uIconIdx_FlySpell;
598 unsigned int uIconIdx_WaterWalk;
602 
604 unsigned int uDialogueType;
609 // int Party_Teleport_Z_Speed;
610 // int Party_Teleport_Cam_Pitch;
611 // int Party_Teleport_Cam_Yaw;
612 // int Party_Teleport_Z_Pos;
613 // int Party_Teleport_Y_Pos;
614 // int Party_Teleport_X_Pos;
615 std::array<std::array<char, 100>, 6> byte_591180; // idb
616 std::array<struct NPCData *, 7>
617  HouseNPCData; // 0 zero element holds standart house npc
620 int EvtTargetObj; // 0x5B5920
621 int _unused_5B5924_is_travel_ui_drawn = false; // 005B5924
630 int MapsLongTimers_count; // dword_5B65C8 счётчик таймеров для колодцев,
631  // фаерволов-ловушек
636 // std::array<char, 777> byte_5C3427;
644 
646 char byte_5C45AF[777];
647 
648 std::array<char, 100> Journal_limitation_factor;
671 
673 // std::array<char, 777> byte_5C8D1A;
674 
675 std::array<char, 777> byte_5E4C15;
676 
684 
685 std::array<int, 777> _6807B8_level_decorations_ids; // idb -level decoratiosn sound
687 std::array<int, 3000> event_triggers; // 6807E8
688 size_t num_event_triggers; // 6836C8
689 std::array<int, 64> dword_69B010;
695 unsigned int uGameState;
700 struct TileTable *pTileTable; // idb
701 std::array<char, 777> pDefaultSkyTexture; // idb
704 int dword_6BE138; // are you sure check game menu - load slots
706 float fWalkSpeedMultiplier = 1.0f;
708 float fTurnSpeedMultiplier = 1.0f;
710 // HWND hWnd; // idb
711 class OSWindow *window = nullptr;
713 unsigned int uLevelMapStatsID;
715 float _6BE3A0_fov = 0.55000001f;
720 char bNoNPCHiring = false;
721 std::array<int, 100> dword_720020_zvalues;
722 std::array<int, 299> dword_7201B0_zvalues;
723 std::array<__int16, 104> word_7209A0_intercepts_ys_plus_ys;
724 std::array<__int16, 104> word_720A70_intercepts_xs_plus_xs;
725 std::array<__int16, 104> word_720B40_intercepts_zs;
726 std::array<__int16, 102> word_720C10_intercepts_xs;
727 std::array<__int16, 777> word_720CE0_ys; // idb
728 std::array<__int16, 777> word_720DB0_xs; // idb
729 std::array<int, 20> dword_720E80;
730 std::array<int, 20> dword_720ED0;
731 std::array<int, 20> ceiling_height_level;
732 std::array<__int16, 104> odm_floor_face_vert_coord_Y; // word_720F70
733 std::array<__int16, 104> odm_floor_face_vert_coord_X; // word_721040
734 std::array<int, 20> current_Face_id; // dword_721110
735 std::array<int, 20> current_BModel_id; // dword_721160
736 std::array<int, 20> odm_floor_level; // idb
740 std::array<NPCTopic, 789> pNPCTopics;
741 std::array<const char *, 513> pQuestTable;
743 std::array<const char *, 82> pScrolls;
748 std::array<const char *, 7> pMerchantsBuyPhrases;
749 std::array<const char *, 7> pMerchantsSellPhrases;
750 std::array<const char *, 7> pMerchantsRepairPhrases;
751 std::array<const char *, 7> pMerchantsIdentifyPhrases;
757 std::array<unsigned short, 128 * 128 * 2> pTerrainNormalIndices;
758 std::array<unsigned int, 128 * 128 * 2> pTerrainSomeOtherData;
766 std::array<int, 32> dword_F1B430;
767 // int dword_F8B144; // nexindex [-1] to the following
768 std::array<int, 4> player_levels = {{1, 1, 1, 1}};
769 std::array<int16_t, 6> weapons_Ypos; // word_F8B158
771 const char *bountyHunting_text; // word_F8B1A4
776 std::array<const char *, 4> pShopOptions;
781 char dialogue_show_profession_details = false; // F8B1EC
782 std::array<char, 777> byte_F8B1EF;
783 std::array<char, 4> byte_F8B1F0;
784 
786 std::array<int16_t, 104> intersect_face_vertex_coords_list_a; // word_F8BC48
787 std::array<int16_t, 104> intersect_face_vertex_coords_list_b; // word_F8BD18
current_BModel_id
std::array< int, 20 > current_BModel_id
Definition: mm7_data.cpp:735
party_has_equipment
std::array< char, 54 > party_has_equipment
Definition: mm7_data.cpp:591
stru160.h
array_4EBBD0_x
std::array< __int32, 128 *3 > array_4EBBD0_x
Definition: mm7_data.cpp:98
pMerchantsIdentifyPhrases
std::array< const char *, 7 > pMerchantsIdentifyPhrases
Definition: mm7_data.cpp:751
uLoadGameUI_SelectedSlot
unsigned int uLoadGameUI_SelectedSlot
Definition: mm7_data.cpp:693
IconFrameTable.h
fWalkSpeedMultiplier
float fWalkSpeedMultiplier
Definition: mm7_data.cpp:706
Vec3_float_
Definition: VectorTypes.h:74
Book_PageBtn4_flag
int Book_PageBtn4_flag
Definition: mm7_data.cpp:526
PlayerFrameTable
Definition: PlayerFrameTable.h:18
pPlayerConditionAttributeDescription
char * pPlayerConditionAttributeDescription
Definition: mm7_data.cpp:655
PARTY_BUFF_DAY_OF_GODS
@ PARTY_BUFF_DAY_OF_GODS
Definition: Party.h:73
PARTY_BUFF_SHIELD
@ PARTY_BUFF_SHIELD
Definition: Party.h:85
dword_4E455C
int dword_4E455C
Definition: mm7_data.cpp:246
dword_50BDA0
std::array< int, 100 > dword_50BDA0
Definition: mm7_data.cpp:566
odm_floor_face_vert_coord_X
std::array< __int16, 104 > odm_floor_face_vert_coord_X
Definition: mm7_data.cpp:733
uSpriteID_Spell11
int uSpriteID_Spell11
Definition: mm7_data.cpp:577
dword_F8B1D8
int dword_F8B1D8
Definition: mm7_data.cpp:777
uSpeakingCharacter
int uSpeakingCharacter
Definition: mm7_data.cpp:764
int16_t
signed __int16 int16_t
Definition: SDL_config.h:36
pIconIDs_Turn
std::array< unsigned int, 5 > pIconIDs_Turn
Definition: mm7_data.cpp:570
Book_PageBtn6_flag
int Book_PageBtn6_flag
Definition: mm7_data.cpp:524
Viewport.h
ceiling_height_level
std::array< int, 20 > ceiling_height_level
Definition: mm7_data.cpp:731
Viewport
Definition: Viewport.h:7
hourglass_icon_idx
unsigned char hourglass_icon_idx
Definition: mm7_data.cpp:238
Book_PageBtn5_flag
int Book_PageBtn5_flag
Definition: mm7_data.cpp:525
pAwardsTXT_Raw
char * pAwardsTXT_Raw
Definition: mm7_data.cpp:745
pMonsterPlacementTXT_Raw
char * pMonsterPlacementTXT_Raw
Definition: mm7_data.cpp:678
dword_506F1C
int dword_506F1C
Definition: mm7_data.cpp:546
dword_720E80
std::array< int, 20 > dword_720E80
Definition: mm7_data.cpp:729
flt_4D86CC
float flt_4D86CC
Definition: mm7_data.cpp:209
fTurnSpeedMultiplier
float fTurnSpeedMultiplier
Definition: mm7_data.cpp:708
stat_string_coord
std::array< stat_coord, 26 > stat_string_coord
Definition: mm7_data.cpp:173
Start_Party_Teleport_Flag
int Start_Party_Teleport_Flag
Definition: mm7_data.cpp:628
uGammaPos
unsigned int uGammaPos
Definition: mm7_data.cpp:214
pMindResistanceAttributeDescription
char * pMindResistanceAttributeDescription
Definition: mm7_data.cpp:668
Party_Teleport_Y_Pos
int Party_Teleport_Y_Pos
Definition: mm7_data.cpp:623
PARTY_BUFF_PROTECTION_FROM_MAGIC
@ PARTY_BUFF_PROTECTION_FROM_MAGIC
Definition: Party.h:84
ai_arrays_size
int ai_arrays_size
Definition: mm7_data.cpp:503
Autonotes_Misc_page_flag
int Autonotes_Misc_page_flag
Definition: mm7_data.cpp:523
HouseNPCData
std::array< struct NPCData *, 7 > HouseNPCData
Definition: mm7_data.cpp:617
uNumTerrainNormals
uint32_t uNumTerrainNormals
Definition: mm7_data.cpp:755
pViewport
struct Viewport * pViewport
Definition: mm7_data.cpp:21
PARTY_BUFF_IMMOLATION
@ PARTY_BUFF_IMMOLATION
Definition: Party.h:81
uGameState
unsigned int uGameState
Definition: mm7_data.cpp:695
pSRZBufferLineOffsets
std::array< unsigned int, 480 > pSRZBufferLineOffsets
Definition: mm7_data.cpp:511
dword_4D86D8
int dword_4D86D8
Definition: mm7_data.cpp:210
day_fogrange_2
int day_fogrange_2
Definition: mm7_data.cpp:699
ai_array_4F5E68
std::array< int, 500 > ai_array_4F5E68
Definition: mm7_data.cpp:500
byte_4FAA24
char byte_4FAA24
Definition: mm7_data.cpp:508
dword_50C9DC
int dword_50C9DC
Definition: mm7_data.cpp:583
byte_591180
std::array< std::array< char, 100 >, 6 > byte_591180
Definition: mm7_data.cpp:615
lloyds_beacon_spell_id
int lloyds_beacon_spell_id
Definition: mm7_data.cpp:513
_4E94D3_light_type
char _4E94D3_light_type
Definition: mm7_data.cpp:307
dword_5C6DF8
int dword_5C6DF8
Definition: mm7_data.cpp:651
array_4EB8B8
std::array< stru160, 66 > array_4EB8B8
Definition: mm7_data.cpp:30
layingitem_vel_50FDFC
Vec3_int_ layingitem_vel_50FDFC
Definition: mm7_data.cpp:588
gold_transaction_amount
int gold_transaction_amount
Definition: mm7_data.cpp:775
player_levels
std::array< int, 4 > player_levels
Definition: mm7_data.cpp:768
pIconsFrameTable
struct IconFrameTable * pIconsFrameTable
Definition: mm7_data.cpp:168
uPlayerCreationUI_SelectedCharacter
unsigned int uPlayerCreationUI_SelectedCharacter
Definition: mm7_data.cpp:761
pHiredNPCsIconsOffsetsY
std::array< unsigned int, 2 > pHiredNPCsIconsOffsetsY
Definition: mm7_data.cpp:472
KeyboardPageNum
int KeyboardPageNum
Definition: mm7_data.cpp:542
ai_array_4F6638_actor_ids
std::array< int, 500 > ai_array_4F6638_actor_ids
Definition: mm7_data.cpp:501
Actor
Definition: Actor.h:151
uDefaultTravelTime_ByFoot
int uDefaultTravelTime_ByFoot
Definition: mm7_data.cpp:696
pNPCTopics
std::array< NPCTopic, 789 > pNPCTopics
Definition: mm7_data.cpp:740
day_attrib
int day_attrib
Definition: mm7_data.cpp:697
word_720CE0_ys
std::array< __int16, 777 > word_720CE0_ys
Definition: mm7_data.cpp:727
pTransitionStrings
std::array< char *, 465 > pTransitionStrings
Definition: mm7_data.cpp:309
game_viewport_width
unsigned int game_viewport_width
Definition: mm7_data.cpp:194
weapons_Ypos
std::array< int16_t, 6 > weapons_Ypos
Definition: mm7_data.cpp:769
day_fogrange_1
int day_fogrange_1
Definition: mm7_data.cpp:698
EvtTargetObj
int EvtTargetObj
Definition: mm7_data.cpp:620
dword_4E4560
std::array< int, 6 > dword_4E4560
Definition: mm7_data.cpp:247
bNoNPCHiring
char bNoNPCHiring
Definition: mm7_data.cpp:720
pHouse_ExitPictures
std::array< const char *, 11 > pHouse_ExitPictures
Definition: mm7_data.cpp:298
saveload_dlg_ys
std::array< unsigned int, 2 > saveload_dlg_ys
Definition: mm7_data.cpp:202
game_starting_year
int game_starting_year
Definition: mm7_data.cpp:193
achieved_awards
std::array< AwardType, 1000 > achieved_awards
Definition: mm7_data.cpp:27
_591094_decoration
struct LevelDecoration * _591094_decoration
Definition: mm7_data.cpp:606
dword_506984_uZ
int dword_506984_uZ
Definition: mm7_data.cpp:537
MapsLongTimer.h
PARTY_BUFF_STONE_SKIN
@ PARTY_BUFF_STONE_SKIN
Definition: Party.h:86
game_viewport_x
int game_viewport_x
Definition: mm7_data.cpp:196
BtnDown_flag
int BtnDown_flag
Definition: mm7_data.cpp:528
pStartingMapName
char pStartingMapName[32]
Definition: mm7_data.cpp:589
dword_4C9920
int dword_4C9920[16]
Definition: mm7_data.cpp:207
pSpellsTXT_Raw
char * pSpellsTXT_Raw
Definition: mm7_data.cpp:679
pNPCPortraits_y
std::array< std::array< int, 6 >, 6 > pNPCPortraits_y
Definition: mm7_data.cpp:290
pDialogue_SpeakingActor
struct Actor * pDialogue_SpeakingActor
Definition: mm7_data.cpp:603
PlayerFrameTable.h
int64_t
__int64 int64_t
Definition: alext.h:31
pNPCPortraits_x
std::array< std::array< int, 6 >, 6 > pNPCPortraits_x
Definition: mm7_data.cpp:282
bFlashAutonotesBook
char bFlashAutonotesBook
Definition: mm7_data.cpp:548
ai_near_actors_targets_pid
std::array< int, 500 > ai_near_actors_targets_pid
Definition: mm7_data.cpp:502
IsPlayerWearingWatersuit
std::array< unsigned __int8, 5 > IsPlayerWearingWatersuit
Definition: mm7_data.cpp:590
uIconID_TurnStop
unsigned int uIconID_TurnStop
Definition: mm7_data.cpp:571
IconFrameTable
Definition: IconFrameTable.h:51
bDialogueUI_InitializeActor_NPC_ID
int bDialogueUI_InitializeActor_NPC_ID
Definition: mm7_data.cpp:642
PARTY_BUFF_RESIST_AIR
@ PARTY_BUFF_RESIST_AIR
Definition: Party.h:71
dword_5C3418
int dword_5C3418
Definition: mm7_data.cpp:634
_576E2C_current_minimap_zoom
int _576E2C_current_minimap_zoom
Definition: mm7_data.cpp:600
pFactionTable
struct FactionTable * pFactionTable
Definition: mm7_data.cpp:672
pSpellPointsAttributeDescription
char * pSpellPointsAttributeDescription
Definition: mm7_data.cpp:653
lloyds_beacon_sound_id
int lloyds_beacon_sound_id
Definition: mm7_data.cpp:514
qword_5C6DF0
int64_t qword_5C6DF0
Definition: mm7_data.cpp:650
lloyds_beacon_spell_level
__int64 lloyds_beacon_spell_level
Definition: mm7_data.cpp:518
dword_69B010
std::array< int, 64 > dword_69B010
Definition: mm7_data.cpp:689
PARTY_BUFF_RESIST_MIND
@ PARTY_BUFF_RESIST_MIND
Definition: Party.h:83
byte_5111F6_OwnedArtifacts
std::array< char, 17 > byte_5111F6_OwnedArtifacts
Definition: mm7_data.cpp:592
HouseNPCPortraitsButtonsList
GUIButton * HouseNPCPortraitsButtonsList[6]
Definition: mm7_data.cpp:618
pTransitionsTXT_Raw
char * pTransitionsTXT_Raw
Definition: mm7_data.cpp:752
pPotionNotesTXT_Raw
char * pPotionNotesTXT_Raw
Definition: mm7_data.cpp:683
game_viewport_height
unsigned int game_viewport_height
Definition: mm7_data.cpp:195
pBtn_ZoomOut
GUIButton * pBtn_ZoomOut
Definition: mm7_data.cpp:550
BtnTurnCoord
std::array< int, 8 > BtnTurnCoord
Definition: mm7_data.cpp:215
GUIButton
Definition: GUIButton.h:11
pManaBarPos
std::array< unsigned int, 4 > pManaBarPos
Definition: mm7_data.cpp:229
Engine.h
dword_50C998_turnbased_icon_1A
int dword_50C998_turnbased_icon_1A
Definition: mm7_data.cpp:576
byte_5E4C15
std::array< char, 777 > byte_5E4C15
Definition: mm7_data.cpp:675
pFastSpellAttributeDescription
char * pFastSpellAttributeDescription
Definition: mm7_data.cpp:656
_5C35C0_force_party_death
int _5C35C0_force_party_death
Definition: mm7_data.cpp:641
byte_69BD41_unused
char byte_69BD41_unused
Definition: mm7_data.cpp:691
dword_5C35D4
int dword_5C35D4
Definition: mm7_data.cpp:645
pArmourClassAttributeDescription
char * pArmourClassAttributeDescription
Definition: mm7_data.cpp:654
dword_F8B1E0
int dword_F8B1E0
Definition: mm7_data.cpp:778
dword_5B65C4_cancelEventProcessing
int dword_5B65C4_cancelEventProcessing
Definition: mm7_data.cpp:629
dword_A74CDC
int dword_A74CDC
Definition: mm7_data.cpp:762
pShopOptions
std::array< const char *, 4 > pShopOptions
Definition: mm7_data.cpp:776
awards_scroll_bar_created
int awards_scroll_bar_created
Definition: mm7_data.cpp:557
uLevelMapStatsID
unsigned int uLevelMapStatsID
Definition: mm7_data.cpp:713
pBlueFacesInBLVMinimapIDs
std::array< unsigned __int16, 50 > pBlueFacesInBLVMinimapIDs
Definition: mm7_data.cpp:595
_506F14_resting_stage
int _506F14_resting_stage
Definition: mm7_data.cpp:544
pAutonoteTXT_Raw
char * pAutonoteTXT_Raw
Definition: mm7_data.cpp:753
uGameUIFontShadow
unsigned int uGameUIFontShadow
Definition: mm7_data.cpp:552
ai_near_actors_distances
std::array< int, 500 > ai_near_actors_distances
Definition: mm7_data.cpp:504
stru160
Definition: stru160.h:5
MapsLongTimersList
MapsLongTimer MapsLongTimersList[100]
Definition: mm7_data.cpp:165
dword_507B00_spell_info_to_draw_in_popup
int dword_507B00_spell_info_to_draw_in_popup
Definition: mm7_data.cpp:554
game_viewport_y
int game_viewport_y
Definition: mm7_data.cpp:197
party_buff_icons
std::array< class Image *, 14 > party_buff_icons
Definition: mm7_data.cpp:596
_4E94D0_light_type
char _4E94D0_light_type
Definition: mm7_data.cpp:305
OSWindow
Definition: OSWindow.h:12
stru298
Definition: stru298.h:9
full_num_items_in_book
int full_num_items_in_book
Definition: mm7_data.cpp:29
Party_Spec_Motion_status_ids
std::array< int, 2 > Party_Spec_Motion_status_ids
Definition: mm7_data.cpp:473
uIconID_TurnStart
unsigned int uIconID_TurnStart
Definition: mm7_data.cpp:574
contract_approved
int contract_approved
Definition: mm7_data.cpp:772
intersect_face_vertex_coords_list_a
std::array< int16_t, 104 > intersect_face_vertex_coords_list_a
Definition: mm7_data.cpp:786
stru367.h
ptr_50C9E0
struct NPCData * ptr_50C9E0
Definition: mm7_data.cpp:584
uNumBlueFacesInBLVMinimap
unsigned int uNumBlueFacesInBLVMinimap
Definition: mm7_data.cpp:594
Party_Teleport_Cam_Pitch
int Party_Teleport_Cam_Pitch
Definition: mm7_data.cpp:626
flt_6BE3AC_debug_recmod1_x_1_6
float flt_6BE3AC_debug_recmod1_x_1_6
Definition: mm7_data.cpp:718
dword_4E4590
std::array< int, 6 > dword_4E4590
Definition: mm7_data.cpp:249
npcIdToDismissAfterDialogue
int npcIdToDismissAfterDialogue
Definition: mm7_data.cpp:632
word_4F0F30
std::array< int16_t, 32 > word_4F0F30
Definition: mm7_data.cpp:496
pQuestsTXT_Raw
char * pQuestsTXT_Raw
Definition: mm7_data.cpp:754
odm_floor_level
std::array< int, 20 > odm_floor_level
Definition: mm7_data.cpp:736
bFlashHistoryBook
char bFlashHistoryBook
Definition: mm7_data.cpp:547
_50C9D0_AfterEnchClickEventId
int _50C9D0_AfterEnchClickEventId
Definition: mm7_data.cpp:580
stru193_math::stru193_math
stru193_math()
Definition: OurMath.cpp:5
current_npc_text
String current_npc_text
Definition: mm7_data.cpp:780
format_4E2DE8
const char * format_4E2DE8
Definition: mm7_data.cpp:242
dword_50C994
int dword_50C994
Definition: mm7_data.cpp:575
pTerrainNormals
struct Vec3_float_ * pTerrainNormals
Definition: mm7_data.cpp:756
_506F18_num_minutes_to_sleep
int _506F18_num_minutes_to_sleep
Definition: mm7_data.cpp:545
dword_4C9890
int dword_4C9890[10]
Definition: mm7_data.cpp:206
stru298.h
PARTY_BUFF_RESIST_WATER
@ PARTY_BUFF_RESIST_WATER
Definition: Party.h:88
SoundSetAction
std::array< std::array< unsigned char, 8 >, 110 > SoundSetAction
Definition: mm7_data.cpp:367
dword_50CDC8
int dword_50CDC8
Definition: mm7_data.cpp:587
dword_4E4578
std::array< int, 6 > dword_4E4578
Definition: mm7_data.cpp:248
pMissleDamageAttributeDescription
char * pMissleDamageAttributeDescription
Definition: mm7_data.cpp:663
pHealthPointsAttributeDescription
char * pHealthPointsAttributeDescription
Definition: mm7_data.cpp:652
pDefaultSkyTexture
std::array< char, 777 > pDefaultSkyTexture
Definition: mm7_data.cpp:701
flt_4E4A80
std::array< float, 10 > flt_4E4A80
Definition: mm7_data.cpp:251
byte_506550
char byte_506550
Definition: mm7_data.cpp:531
quick_spell_at_page
int quick_spell_at_page
Definition: mm7_data.cpp:530
uIconIdx_WaterWalk
unsigned int uIconIdx_WaterWalk
Definition: mm7_data.cpp:598
ViewingParams
Definition: Viewport.h:38
Party_Teleport_Map_Name
char * Party_Teleport_Map_Name
Definition: mm7_data.cpp:608
GameUI_RightPanel_BookFlashTimer
GameTime GameUI_RightPanel_BookFlashTimer
Definition: mm7_data.cpp:559
dword_507CC0_activ_ch
int dword_507CC0_activ_ch
Definition: mm7_data.cpp:558
pMapStatsTXT_Raw
char * pMapStatsTXT_Raw
Definition: mm7_data.cpp:680
pScrollsTXT_Raw
char * pScrollsTXT_Raw
Definition: mm7_data.cpp:746
_5773B8_event_timer
GameTime _5773B8_event_timer
Definition: mm7_data.cpp:601
stru123.h
MapStats
Definition: MapInfo.h:75
pPlayerExperienceAttributeDescription
char * pPlayerExperienceAttributeDescription
Definition: mm7_data.cpp:659
Party_Teleport_X_Pos
int Party_Teleport_X_Pos
Definition: mm7_data.cpp:622
PARTY_BUFF_HASTE
@ PARTY_BUFF_HASTE
Definition: Party.h:79
PARTY_BUFF_FEATHER_FALL
@ PARTY_BUFF_FEATHER_FALL
Definition: Party.h:76
MapBookOpen
int MapBookOpen
Definition: mm7_data.cpp:519
uIconID_CharacterFrame
int uIconID_CharacterFrame
Definition: mm7_data.cpp:573
BtnUp_flag
int BtnUp_flag
Definition: mm7_data.cpp:529
stru123
Definition: stru123.h:6
dword_F8B1B0_MasteryBeingTaught
int dword_F8B1B0_MasteryBeingTaught
Definition: mm7_data.cpp:774
uGameUIFontMain
unsigned int uGameUIFontMain
Definition: mm7_data.cpp:553
pPlayerPortraitsXCoords_For_PlayerBuffAnimsDrawing
std::array< int16_t, 4 > pPlayerPortraitsXCoords_For_PlayerBuffAnimsDrawing
Definition: mm7_data.cpp:424
pMissleBonusAttributeDescription
char * pMissleBonusAttributeDescription
Definition: mm7_data.cpp:662
byte_F8B1EF
std::array< char, 777 > byte_F8B1EF
Definition: mm7_data.cpp:782
dialogue_show_profession_details
char dialogue_show_profession_details
Definition: mm7_data.cpp:781
dword_5B65D0_dialogue_actor_npc_id
signed int dword_5B65D0_dialogue_actor_npc_id
Definition: mm7_data.cpp:633
RightClickPortraitXmin
std::array< __int16, 4 > RightClickPortraitXmin
Definition: mm7_data.cpp:225
num_achieved_awards
int num_achieved_awards
Definition: mm7_data.cpp:28
dword_A74C88
int dword_A74C88
Definition: mm7_data.cpp:759
Party_Teleport_Cam_Yaw
int Party_Teleport_Cam_Yaw
Definition: mm7_data.cpp:625
pQuestTable
std::array< const char *, 513 > pQuestTable
Definition: mm7_data.cpp:741
Party.h
pPlayerFrameTable
struct PlayerFrameTable * pPlayerFrameTable
Definition: mm7_data.cpp:171
uCurrentHouse_Animation
int uCurrentHouse_Animation
Definition: mm7_data.cpp:607
pSaveListPosition
int pSaveListPosition
Definition: mm7_data.cpp:692
pMapStats
struct MapStats * pMapStats
Definition: mm7_data.cpp:20
window
EGLSurface EGLNativeWindowType * window
Definition: SDL_egl.h:1580
PARTY_BUFF_HEROISM
@ PARTY_BUFF_HEROISM
Definition: Party.h:80
branchless_dialogue_str
String branchless_dialogue_str
Definition: mm7_data.cpp:619
f
GLfloat f
Definition: SDL_opengl_glext.h:1873
pHiredNPCsIconsOffsetsX
std::array< unsigned int, 2 > pHiredNPCsIconsOffsetsX
Definition: mm7_data.cpp:471
uRestUI_FoodRequiredToRest
int uRestUI_FoodRequiredToRest
Definition: mm7_data.cpp:543
MapsLongTimers_count
int MapsLongTimers_count
Definition: mm7_data.cpp:630
pTileTable
struct TileTable * pTileTable
Definition: mm7_data.cpp:700
saveload_dlg_zs
std::array< unsigned int, 2 > saveload_dlg_zs
Definition: mm7_data.cpp:203
_506348_current_lloyd_playerid
int _506348_current_lloyd_playerid
Definition: mm7_data.cpp:517
dword_4E45A8
std::array< int, 6 > dword_4E45A8
Definition: mm7_data.cpp:250
FactionTable
Definition: FactionTable.h:5
uIconIdx_FlySpell
unsigned int uIconIdx_FlySpell
Definition: mm7_data.cpp:597
pAutonoteTxt
std::array< Autonote, 196 > pAutonoteTxt
Definition: mm7_data.cpp:25
pMaxLevelPerTrainingHallType
std::array< unsigned short, 6 > pMaxLevelPerTrainingHallType
Definition: mm7_data.cpp:492
Journal_limitation_factor
std::array< char, 100 > Journal_limitation_factor
Definition: mm7_data.cpp:648
pMerchantsSellPhrases
std::array< const char *, 7 > pMerchantsSellPhrases
Definition: mm7_data.cpp:749
saveload_dlg_xs
std::array< unsigned int, 2 > saveload_dlg_xs
Definition: mm7_data.cpp:201
_50BF30_actors_in_viewport_ids
std::array< int, 100 > _50BF30_actors_in_viewport_ids
Definition: mm7_data.cpp:567
game_ui_status_bar_string
String game_ui_status_bar_string
Definition: mm7_data.cpp:638
pAttackDamageAttributeDescription
char * pAttackDamageAttributeDescription
Definition: mm7_data.cpp:661
NPCData
Definition: NPC.h:79
byte_F8B1F0
std::array< char, 4 > byte_F8B1F0
Definition: mm7_data.cpp:783
array_4EBBD0
std::array< stru160, 128 > array_4EBBD0
Definition: mm7_data.cpp:97
pScrolls
std::array< const char *, 82 > pScrolls
Definition: mm7_data.cpp:743
pHostileTXT_Raw
char * pHostileTXT_Raw
Definition: mm7_data.cpp:681
_4E94D2_light_type
char _4E94D2_light_type
Definition: mm7_data.cpp:306
byte_4ECF08
std::array< std::array< unsigned char, 25 >, 48 > byte_4ECF08
Definition: mm7_data.cpp:317
OpenedTelekinesis
bool OpenedTelekinesis
Definition: mm7_data.cpp:561
_50C9A0_IsEnchantingInProgress
bool _50C9A0_IsEnchantingInProgress
Definition: mm7_data.cpp:578
bFlashQuestBook
char bFlashQuestBook
Definition: mm7_data.cpp:549
TileTable
Definition: TileFrameTable.h:74
ui_current_text_color
int ui_current_text_color
Definition: mm7_data.cpp:649
dword_F1B430
std::array< int, 32 > dword_F1B430
Definition: mm7_data.cpp:766
LevelDecoration
Definition: Decoration.h:20
_6BE134_odm_main_tile_group
int _6BE134_odm_main_tile_group
Definition: mm7_data.cpp:703
pCurrentMapName
String pCurrentMapName
Definition: mm7_data.cpp:712
Autonotes.h
PortalFace
stru367 PortalFace
Definition: mm7_data.cpp:564
dword_50BC10
std::array< int, 100 > dword_50BC10
Definition: mm7_data.cpp:565
stru193_math
Definition: OurMath.h:79
Book_PageBtn3_flag
int Book_PageBtn3_flag
Definition: mm7_data.cpp:527
ScreenshotFileNumber
int ScreenshotFileNumber
Definition: mm7_data.cpp:478
flt_6BE3A8_debug_recmod2
float flt_6BE3A8_debug_recmod2
Definition: mm7_data.cpp:717
num_event_triggers
size_t num_event_triggers
Definition: mm7_data.cpp:688
dword_506988_uY
int dword_506988_uY
Definition: mm7_data.cpp:538
dword_F8B1AC_award_bit_number
int dword_F8B1AC_award_bit_number
Definition: mm7_data.cpp:773
pBodyResistanceAttributeDescription
char * pBodyResistanceAttributeDescription
Definition: mm7_data.cpp:669
dword_50B570
std::array< int, 50 > dword_50B570
Definition: mm7_data.cpp:562
game_viewport_w
int game_viewport_w
Definition: mm7_data.cpp:199
word_720C10_intercepts_xs
std::array< __int16, 102 > word_720C10_intercepts_xs
Definition: mm7_data.cpp:726
_4F0882_evt_VAR_PlayerItemInHands_vals
std::array< int16_t, 54 > _4F0882_evt_VAR_PlayerItemInHands_vals
Definition: mm7_data.cpp:484
bountyHunting_monster_id_for_hunting
int16_t bountyHunting_monster_id_for_hunting
Definition: mm7_data.cpp:770
blv_prev_party_y
int blv_prev_party_y
Definition: mm7_data.cpp:739
town_portal_caster_id
char town_portal_caster_id
Definition: mm7_data.cpp:568
word_4E8152
std::array< int16_t, 11 > word_4E8152
Definition: mm7_data.cpp:303
_6807E0_num_decorations_with_sounds_6807B8
int _6807E0_num_decorations_with_sounds_6807B8
Definition: mm7_data.cpp:686
dword_576E28
int dword_576E28
Definition: mm7_data.cpp:599
pMerchantsTXT_Raw
char * pMerchantsTXT_Raw
Definition: mm7_data.cpp:747
word_4EE150
std::array< short, 28 > word_4EE150
Definition: mm7_data.cpp:474
game_ui_status_bar_event_string_time_left
unsigned int game_ui_status_bar_event_string_time_left
Definition: mm7_data.cpp:639
s_SavedMapName
std::string s_SavedMapName
Definition: mm7_data.cpp:719
uIconID_TurnHour
unsigned int uIconID_TurnHour
Definition: mm7_data.cpp:572
viewparams
struct ViewingParams * viewparams
Definition: mm7_data.cpp:22
MapInfo.h
dword_507BF0_is_there_popup_onscreen
int dword_507BF0_is_there_popup_onscreen
Definition: mm7_data.cpp:556
dword_7241C8
int dword_7241C8
Definition: mm7_data.cpp:744
_4D864C_force_sw_render_rules
char _4D864C_force_sw_render_rules
Definition: mm7_data.cpp:208
word_720A70_intercepts_xs_plus_xs
std::array< __int16, 104 > word_720A70_intercepts_xs_plus_xs
Definition: mm7_data.cpp:724
cMM7GameCDDriveLetter
char cMM7GameCDDriveLetter
Definition: mm7_data.cpp:694
dword_4F8580
std::array< int, 182 > dword_4F8580
Definition: mm7_data.cpp:506
uLastPointedObjectID
int uLastPointedObjectID
Definition: mm7_data.cpp:534
uDialogueType
unsigned int uDialogueType
Definition: mm7_data.cpp:604
Viewport::Viewport
Viewport()
Definition: Viewport.h:8
odm_floor_face_vert_coord_Y
std::array< __int16, 104 > odm_floor_face_vert_coord_Y
Definition: mm7_data.cpp:732
dword_F8B1E4
int dword_F8B1E4
Definition: mm7_data.cpp:779
dword_720020_zvalues
std::array< int, 100 > dword_720020_zvalues
Definition: mm7_data.cpp:721
Party_Teleport_Z_Speed
int Party_Teleport_Z_Speed
Definition: mm7_data.cpp:627
PARTY_BUFF_RESIST_EARTH
@ PARTY_BUFF_RESIST_EARTH
Definition: Party.h:75
p2DEventsTXT_Raw
char * p2DEventsTXT_Raw
Definition: mm7_data.cpp:643
RightClickPortraitXmax
std::array< __int16, 4 > RightClickPortraitXmax
Definition: mm7_data.cpp:226
uRequiredMana
unsigned int uRequiredMana
Definition: mm7_data.cpp:516
blv_prev_party_x
int blv_prev_party_x
Definition: mm7_data.cpp:737
ViewingParams::ViewingParams
ViewingParams()
Definition: Viewport.h:39
pTerrainSomeOtherData
std::array< unsigned int, 128 *128 *2 > pTerrainSomeOtherData
Definition: mm7_data.cpp:758
flt_6BE150_look_up_down_dangle
float flt_6BE150_look_up_down_dangle
Definition: mm7_data.cpp:709
pPrevVirtualCidesMapping
std::array< unsigned int, 28 > pPrevVirtualCidesMapping
Definition: mm7_data.cpp:541
Awards.h
bForceDrawFooter
int bForceDrawFooter
Definition: mm7_data.cpp:640
MapsLongTimer
Definition: MapsLongTimer.h:6
flt_6BE3A4_debug_recmod1
float flt_6BE3A4_debug_recmod1
Definition: mm7_data.cpp:716
byte_AE5B91
char byte_AE5B91
Definition: mm7_data.cpp:765
bGameoverLoop
int bGameoverLoop
Definition: mm7_data.cpp:785
books_primary_item_per_page
int books_primary_item_per_page
Definition: mm7_data.cpp:521
uActiveCharacter
unsigned int uActiveCharacter
Definition: mm7_data.cpp:555
byte_5C45AF
char byte_5C45AF[777]
Definition: mm7_data.cpp:646
AttackerInfo
stru298 AttackerInfo
Definition: mm7_data.cpp:24
pSkillPointsAttributeDescription
char * pSkillPointsAttributeDescription
Definition: mm7_data.cpp:670
pPlayerAgeAttributeDescription
char * pPlayerAgeAttributeDescription
Definition: mm7_data.cpp:657
books_page_number
int books_page_number
Definition: mm7_data.cpp:520
current_Face_id
std::array< int, 20 > current_Face_id
Definition: mm7_data.cpp:734
_6BE3A0_fov
float _6BE3A0_fov
Definition: mm7_data.cpp:715
price_for_membership
std::array< int, 11 > price_for_membership
Definition: mm7_data.cpp:494
_507CD4_RestUI_hourglass_anim_controller
int _507CD4_RestUI_hourglass_anim_controller
Definition: mm7_data.cpp:560
Stat_string_format_2_column_less_100
const char * Stat_string_format_2_column_less_100
Definition: mm7_data.cpp:244
byte_6BE124_cfg_textures_DefaultGroundTexture
std::array< char, 16 > byte_6BE124_cfg_textures_DefaultGroundTexture
Definition: mm7_data.cpp:702
stru_5C6E00
struct stru193_math * stru_5C6E00
Definition: mm7_data.cpp:19
pAttackBonusAttributeDescription
char * pAttackBonusAttributeDescription
Definition: mm7_data.cpp:660
word_7209A0_intercepts_ys_plus_ys
std::array< __int16, 104 > word_7209A0_intercepts_ys_plus_ys
Definition: mm7_data.cpp:723
PARTY_BUFF_RESIST_BODY
@ PARTY_BUFF_RESIST_BODY
Definition: Party.h:72
dword_50698C_uX
int dword_50698C_uX
Definition: mm7_data.cpp:539
dword_6BE364_game_settings_1
int dword_6BE364_game_settings_1
Definition: mm7_data.cpp:714
stru367
Definition: stru367.h:8
PARTY_BUFF_RESIST_FIRE
@ PARTY_BUFF_RESIST_FIRE
Definition: Party.h:77
OurMath.h
pWindowList_at_506F50_minus1_indexing
int pWindowList_at_506F50_minus1_indexing[1]
Definition: mm7_data.cpp:205
pPlayerLevelAttributeDescription
char * pPlayerLevelAttributeDescription
Definition: mm7_data.cpp:658
word_720B40_intercepts_zs
std::array< __int16, 104 > word_720B40_intercepts_zs
Definition: mm7_data.cpp:725
pMonstersTXT_Raw
char * pMonstersTXT_Raw
Definition: mm7_data.cpp:677
dword_506980_uW
int dword_506980_uW
Definition: mm7_data.cpp:536
bRecallingBeacon
bool bRecallingBeacon
Definition: mm7_data.cpp:533
mm7_data.h
pMerchantsBuyPhrases
std::array< const char *, 7 > pMerchantsBuyPhrases
Definition: mm7_data.cpp:748
pTerrainNormalIndices
std::array< unsigned short, 128 *128 *2 > pTerrainNormalIndices
Definition: mm7_data.cpp:757
Stat_string_format_2_column_text
const char * Stat_string_format_2_column_text
Definition: mm7_data.cpp:243
blv_prev_party_z
int blv_prev_party_z
Definition: mm7_data.cpp:738
_50C9D8_AfterEnchClickEventTimeout
int _50C9D8_AfterEnchClickEventTimeout
Definition: mm7_data.cpp:582
guild_mambership_flags
std::array< int, 32 > guild_mambership_flags
Definition: mm7_data.cpp:480
pMerchantsRepairPhrases
std::array< const char *, 7 > pMerchantsRepairPhrases
Definition: mm7_data.cpp:750
pWaterResistanceAttributeDescription
char * pWaterResistanceAttributeDescription
Definition: mm7_data.cpp:666
books_num_items_per_page
std::array< char, 777 > books_num_items_per_page
Definition: mm7_data.cpp:512
pFireResistanceAttributeDescription
char * pFireResistanceAttributeDescription
Definition: mm7_data.cpp:664
_506568_autonote_type
int _506568_autonote_type
Definition: mm7_data.cpp:532
string
GLsizei const GLchar *const * string
Definition: SDL_opengl_glext.h:691
pAwards
std::array< Award, 105 > pAwards
Definition: mm7_data.cpp:26
_50C9D4_AfterEnchClickEventSecondParam
int _50C9D4_AfterEnchClickEventSecondParam
Definition: mm7_data.cpp:581
GUIWindow.h
flt_4D84E8
float flt_4D84E8
Definition: mm7_data.cpp:212
dword_6BE138
int dword_6BE138
Definition: mm7_data.cpp:704
pBtn_ZoomIn
GUIButton * pBtn_ZoomIn
Definition: mm7_data.cpp:551
pPartySpellbuffsUI_smthns
std::array< unsigned __int8, 14 > pPartySpellbuffsUI_smthns
Definition: mm7_data.cpp:279
sRecoveryTime
signed int sRecoveryTime
Definition: mm7_data.cpp:515
stru_5E4C90_MapPersistVars
stru123 stru_5E4C90_MapPersistVars
Definition: mm7_data.cpp:23
dword_50B638
std::array< int, 50 > dword_50B638
Definition: mm7_data.cpp:563
dword_720ED0
std::array< int, 20 > dword_720ED0
Definition: mm7_data.cpp:730
_50C9A8_item_enchantment_timer
int _50C9A8_item_enchantment_timer
Definition: mm7_data.cpp:579
dword_7201B0_zvalues
std::array< int, 299 > dword_7201B0_zvalues
Definition: mm7_data.cpp:722
uPlayerCreationUI_ArrowAnim
int uPlayerCreationUI_ArrowAnim
Definition: mm7_data.cpp:760
word_720DB0_xs
std::array< __int16, 777 > word_720DB0_xs
Definition: mm7_data.cpp:728
_A750D8_player_speech_timer
int64_t _A750D8_player_speech_timer
Definition: mm7_data.cpp:763
some_active_character
int some_active_character
Definition: mm7_data.cpp:569
stru314.h
pHealthBarPos
std::array< unsigned int, 4 > pHealthBarPos
Definition: mm7_data.cpp:228
flt_69B138_dist
float flt_69B138_dist
Definition: mm7_data.cpp:690
format_4E2D80
const char * format_4E2D80
Definition: mm7_data.cpp:240
byte_4E5DD8
std::array< unsigned char, 14 > byte_4E5DD8
Definition: mm7_data.cpp:273
monster_popup_y_offsets
std::array< char, 88 > monster_popup_y_offsets
Definition: mm7_data.cpp:231
dword_723718_autonote_related
char * dword_723718_autonote_related
Definition: mm7_data.cpp:742
ai_near_actors_ids
std::array< unsigned int, 500 > ai_near_actors_ids
Definition: mm7_data.cpp:505
_6807B8_level_decorations_ids
std::array< int, 777 > _6807B8_level_decorations_ids
Definition: mm7_data.cpp:685
game_viewport_z
int game_viewport_z
Definition: mm7_data.cpp:198
dword_5C341C
int dword_5C341C
Definition: mm7_data.cpp:635
Stat_string_format_2_column_over_100
const char * Stat_string_format_2_column_over_100
Definition: mm7_data.cpp:245
uint32_t
unsigned __int32 uint32_t
Definition: SDL_config.h:39
Party_Teleport_Z_Pos
int Party_Teleport_Z_Pos
Definition: mm7_data.cpp:624
pAirResistanceAttributeDescription
char * pAirResistanceAttributeDescription
Definition: mm7_data.cpp:665
game_ui_status_bar_event_string
String game_ui_status_bar_event_string
Definition: mm7_data.cpp:637
String
std::string String
Definition: Strings.h:10
byte_4ED970_skill_learn_ability_by_class_table
std::array< std::array< char, 37 >, 36 > byte_4ED970_skill_learn_ability_by_class_table
Definition: mm7_data.cpp:425
bountyHunting_text
const char * bountyHunting_text
Definition: mm7_data.cpp:771
event_triggers
std::array< int, 3000 > event_triggers
Definition: mm7_data.cpp:687
_unused_5B5924_is_travel_ui_drawn
int _unused_5B5924_is_travel_ui_drawn
Definition: mm7_data.cpp:621
GameTime
Definition: Time.h:14
word_4F0754
std::array< int16_t, 49 > word_4F0754
Definition: mm7_data.cpp:483
Autonotes_Instructors_page_flag
int Autonotes_Instructors_page_flag
Definition: mm7_data.cpp:522
pEarthResistanceAttributeDescription
char * pEarthResistanceAttributeDescription
Definition: mm7_data.cpp:667
dword_6BE13C_uCurrentlyLoadedLocationID
int dword_6BE13C_uCurrentlyLoadedLocationID
Definition: mm7_data.cpp:705
pPotionsTXT_Raw
char * pPotionsTXT_Raw
Definition: mm7_data.cpp:682
saveload_dlg_ws
std::array< unsigned int, 2 > saveload_dlg_ws
Definition: mm7_data.cpp:204
sDialogue_SpeakingActorNPC_ID
int sDialogue_SpeakingActorNPC_ID
Definition: mm7_data.cpp:605
intersect_face_vertex_coords_list_b
std::array< int16_t, 104 > intersect_face_vertex_coords_list_b
Definition: mm7_data.cpp:787
uGameMenuUI_CurentlySelectedKeyIdx
int uGameMenuUI_CurentlySelectedKeyIdx
Definition: mm7_data.cpp:540
pPlayerPortraitsNames
std::array< const char *, 25 > pPlayerPortraitsNames
Definition: mm7_data.cpp:310
fBackwardWalkSpeedMultiplier
float fBackwardWalkSpeedMultiplier
Definition: mm7_data.cpp:707
pPartySpellbuffsUI_XYs
std::array< std::array< int, 2 >, 14 > pPartySpellbuffsUI_XYs
Definition: mm7_data.cpp:257