comparison mm7_data.cpp @ 1205:8c02e6f74b29

arrays to std::arrays phase 2 - mm7_data.h converted
author Grumpy7
date Sun, 09 Jun 2013 00:30:48 +0200
parents 1eed3e0ab666
children ab6560001f5b
comparison
equal deleted inserted replaced
1204:832f09144726 1205:8c02e6f74b29
343 int game_viewport_z; 343 int game_viewport_z;
344 int game_viewport_w; 344 int game_viewport_w;
345 345
346 346
347 347
348 unsigned int saveload_dlg_xs[2] = {82, 0}; 348 std::array<unsigned int, 2> saveload_dlg_xs = {82, 0};
349 unsigned int saveload_dlg_ys[2] = {60, 0}; 349 std::array<unsigned int, 2> saveload_dlg_ys = {60, 0};
350 unsigned int saveload_dlg_zs[2] = {460, 640}; 350 std::array<unsigned int, 2> saveload_dlg_zs = {460, 640};
351 unsigned int saveload_dlg_ws[2] = {344, 480}; 351 std::array<unsigned int, 2> saveload_dlg_ws = {344, 480};
352 int pWindowList_at_506F50_minus1_indexing[1]; 352 int pWindowList_at_506F50_minus1_indexing[1];
353 int dword_4C9890[10]; // weak 353 int dword_4C9890[10]; // weak
354 int dword_4C9920[16]; // weak 354 int dword_4C9920[16]; // weak
355 _UNKNOWN unk_4D8548; // weak 355 _UNKNOWN unk_4D8548; // weak
356 char byte_4D864C; // weak 356 char byte_4D864C; // weak
358 int dword_4D86D8; // weak 358 int dword_4D86D8; // weak
359 int dword_4DAFCC; // weak 359 int dword_4DAFCC; // weak
360 int (__stdcall *off_4DAFDC)(char); // weak 360 int (__stdcall *off_4DAFDC)(char); // weak
361 char asc_4DB724[777]; // idb 361 char asc_4DB724[777]; // idb
362 int dword_4DBD94; // weak 362 int dword_4DBD94; // weak
363 int dword_4DF380[5]={0,1024,2560,5120,10240}; // weak 363 std::array<int, 5> dword_4DF380 = {{0,1024,2560,5120,10240}}; // weak
364 //int dword_4DF390; // weak 364 //int dword_4DF390; // weak
365 char Str2[777]; // idb 365 char Str2[777]; // idb
366 366
367 char byte_4E185C; // weak 367 char byte_4E185C; // weak
368 368
383 char aUnableToLoadS[777]; // idb 383 char aUnableToLoadS[777]; // idb
384 char aBitmaps[777]; // idb 384 char aBitmaps[777]; // idb
385 char aIcons[777]; // idb 385 char aIcons[777]; // idb
386 char aPending[777]; // idb 386 char aPending[777]; // idb
387 char aCanTFindS[777]; // idb 387 char aCanTFindS[777]; // idb
388 char *spellbook_texture_filename_suffices[9] = {"f", "a", "w", "e", "s", "m", "b", "l", "d"}; // weak 388 std::array<char *, 9> spellbook_texture_filename_suffices = {{"f", "a", "w", "e", "s", "m", "b", "l", "d"}}; // weak
389 //__int16 word_4E1D3A[777]; // weak 389 //__int16 word_4E1D3A[777]; // weak
390 __int16 pTownPortalBook_xs[6] = {260, 324, 147, 385, 390, 19}; 390 std::array<__int16, 6> pTownPortalBook_xs = {{260, 324, 147, 385, 390, 19}};
391 __int16 pTownPortalBook_ys[6] = {206, 84, 182, 239, 17, 283}; 391 std::array<__int16, 6> pTownPortalBook_ys = {{206, 84, 182, 239, 17, 283}};
392 __int16 pTownPortalBook_ws[6] = { 80, 66, 68, 72, 67, 74}; 392 std::array<__int16, 6> pTownPortalBook_ws = {{ 80, 66, 68, 72, 67, 74}};
393 __int16 pTownPortalBook_hs[6] = { 55, 56, 65, 67, 67, 59}; 393 std::array<__int16, 6> pTownPortalBook_hs = {{ 55, 56, 65, 67, 67, 59}};
394 394
395 395
396 unsigned int pLloydsBeaconsPreviewXs[5] = {61, 281, 61, 281, 171}; // 004E249C 396 std::array<unsigned int, 5> pLloydsBeaconsPreviewXs = {{61, 281, 61, 281, 171}}; // 004E249C
397 unsigned int pLloydsBeaconsPreviewYs[5] = {84, 84, 228, 228, 155}; 397 std::array<unsigned int, 5> pLloydsBeaconsPreviewYs = {{84, 84, 228, 228, 155}};
398 unsigned int pLloydsBeacons_SomeXs[5] = {59, 279, 59, 279, 169}; 398 std::array<unsigned int, 5> pLloydsBeacons_SomeXs = {{59, 279, 59, 279, 169}};
399 unsigned int pLloydsBeacons_SomeYs[5] = {82, 82, 226, 226, 153}; 399 std::array<unsigned int, 5> pLloydsBeacons_SomeYs = {{82, 82, 226, 226, 153}};
400 char aSbwb00[7]; // weak 400 std::array<char, 7> aSbwb00; // weak
401 char aW[2]; // idb 401 char aW[2]; // idb
402 char aA[2]; // idb 402 char aA[2]; // idb
403 char aSD[777]; // idb 403 char aSD[777]; // idb
404 char aSS03d03dS000S0[777]; // idb 404 char aSS03d03dS000S0[777]; // idb
405 char aLuS[777]; // idb 405 char aLuS[777]; // idb
474 char aS100110D[777]; // idb 474 char aS100110D[777]; // idb
475 char aS100110DS[777]; // idb 475 char aS100110DS[777]; // idb
476 char aS100110D02dSS[777]; // idb 476 char aS100110D02dSS[777]; // idb
477 int pCurrentScreen = SCREEN_VIDEO; // 004E28F8 477 int pCurrentScreen = SCREEN_VIDEO; // 004E28F8
478 unsigned int uGammaPos; 478 unsigned int uGammaPos;
479 int BtnTurnCoord[8] = 479 std::array<int, 8> BtnTurnCoord =
480 { 480 {{
481 0xA4, 0x5D, 0x16, 0xB, 0x5, 0xD, 0x7, 0x3B, 481 0xA4, 0x5D, 0x16, 0xB, 0x5, 0xD, 0x7, 0x3B,
482 }; // weak 482 }}; // weak
483 __int16 RightClickPortraitXmin[4]={0x14, 0x83, 0xF2, 0x165}; 483 std::array<__int16, 4> RightClickPortraitXmin={{0x14, 0x83, 0xF2, 0x165}};
484 __int16 RightClickPortraitXmax[4]={0x53, 0xC6, 0x138, 0x1A7}; 484 std::array<__int16, 4> RightClickPortraitXmax={{0x53, 0xC6, 0x138, 0x1A7}};
485 void *off_4E2A12; // stat_string_control_button_count 485 void *off_4E2A12; // stat_string_control_button_count
486 486
487 unsigned int pHealthBarPos[4] = {22, 137, 251, 366}; 487 std::array<unsigned int, 4> pHealthBarPos = {{22, 137, 251, 366}};
488 unsigned int pManaBarPos[4] = {102, 217, 331, 447}; 488 std::array<unsigned int, 4> pManaBarPos = {{102, 217, 331, 447}};
489 char _4E2B21_buff_spell_tooltip_colors[80]; 489 std::array<char, 80> _4E2B21_buff_spell_tooltip_colors;
490 unsigned char monster_popup_y_offsets[88] = 490 std::array<unsigned char, 88> monster_popup_y_offsets =
491 { 491 {{
492 236, 20, 0, 216, 0, 0, 0, 0, 0, 0, 206, 492 236, 20, 0, 216, 0, 0, 0, 0, 0, 0, 206,
493 20, 0, 246, 246, 236, 10, 246, 0, 0, 0, 236, 493 20, 0, 246, 246, 236, 10, 246, 0, 0, 0, 236,
494 10, 246, 0, 0, 0, 236, 246, 0, 0, 0, 216, 494 10, 246, 0, 0, 0, 236, 246, 0, 0, 0, 216,
495 236, 0, 0, 0, 206, 226, 226, 226, 226, 226, 226, 495 236, 0, 0, 0, 206, 226, 226, 226, 226, 226, 226,
496 0, 0, 0, 0, 0, 0, 236, 236, 236, 20, 20, 496 0, 0, 0, 0, 0, 0, 236, 236, 236, 20, 20,
497 20, 10, 10, 10, 10, 10, 10, 166, 196, 216, 236, 497 20, 10, 10, 10, 10, 10, 10, 166, 196, 216, 236,
498 236, 176, 246, 0, 0, 216, 0, 0, 0, 236, 10, 498 236, 176, 246, 0, 0, 216, 0, 0, 0, 236, 10,
499 0, 0, 0, 0, 0, 0, 196, 0, 0, 0, 0 499 0, 0, 0, 0, 0, 0, 196, 0, 0, 0, 0
500 }; 500 }};
501 unsigned char hourglass_icon_idx = 12; // weak 501 unsigned char hourglass_icon_idx = 12; // weak
502 502
503 503
504 const char *format_4E2D80 = "\f%05d%s\f00000\n"; 504 const char *format_4E2D80 = "\f%05d%s\f00000\n";
505 //const char *format_4E2DC8 = "\f%05d"; 505 //const char *format_4E2DC8 = "\f%05d";
506 const char *format_4E2DE8 = "\f%05d%s\f00000 - "; 506 const char *format_4E2DE8 = "\f%05d%s\f00000 - ";
507 const char *format_4E2E00 = "%s\f%05u\xD\r180%s\n"; // idb 507 const char *format_4E2E00 = "%s\f%05u\xD\r180%s\n"; // idb
508 const char *format_4E2E10 = "%s\f%05u\t110%d\f00000 / %d\n"; 508 const char *format_4E2E10 = "%s\f%05u\t110%d\f00000 / %d\n";
509 __int16 word_4E3C66[777]; // idb 509 __int16 word_4E3C66[777]; // idb
510 int dword_4E455C; // weak 510 int dword_4E455C; // weak
511 int dword_4E4560[6]; 511 std::array<int, 6> dword_4E4560;
512 int dword_4E4578[6]; 512 std::array<int, 6> dword_4E4578;
513 int dword_4E4590[6]; 513 std::array<int, 6> dword_4E4590;
514 int dword_4E45A8[6]; 514 std::array<int, 6> dword_4E45A8;
515 _UNKNOWN dword_4E49D4; // idb 515 _UNKNOWN dword_4E49D4; // idb
516 int dword_4E4A18[777]; // weak 516 int dword_4E4A18[777]; // weak
517 int dword_4E4A1C[777]; // weak 517 int dword_4E4A1C[777]; // weak
518 int dword_4E4A40[777]; // weak 518 int dword_4E4A40[777]; // weak
519 int dword_4E4A44[777]; // weak 519 int dword_4E4A44[777]; // weak
520 float flt_4E4A80[10]; 520 std::array<float, 10> flt_4E4A80;
521 521
522 522
523 int pPartySpellbuffsUI_XYs[14][2] = 523 std::array< std::array<int, 2>, 14> pPartySpellbuffsUI_XYs =
524 { 524 {{
525 {477, 247}, {497, 247}, {522, 247}, {542, 247}, {564, 247}, {581, 247}, {614, 247}, 525 {477, 247}, {497, 247}, {522, 247}, {542, 247}, {564, 247}, {581, 247}, {614, 247},
526 {477, 279}, {497, 279}, {522, 279}, {542, 279}, {564, 279}, {589, 279}, {612, 279} 526 {477, 279}, {497, 279}, {522, 279}, {542, 279}, {564, 279}, {589, 279}, {612, 279}
527 }; 527 }};
528 unsigned char byte_4E5DD8[14] = 528 std::array<unsigned char, 14> byte_4E5DD8 =
529 { 529 {{
530 PARTY_BUFF_FEATHER_FALL, PARTY_BUFF_RESIST_FIRE, PARTY_BUFF_RESIST_AIR, PARTY_BUFF_RESIST_WATER, PARTY_BUFF_RESIST_MIND, PARTY_BUFF_RESIST_EARTH, PARTY_BUFF_RESIST_BODY, 530 PARTY_BUFF_FEATHER_FALL, PARTY_BUFF_RESIST_FIRE, PARTY_BUFF_RESIST_AIR, PARTY_BUFF_RESIST_WATER, PARTY_BUFF_RESIST_MIND, PARTY_BUFF_RESIST_EARTH, PARTY_BUFF_RESIST_BODY,
531 PARTY_BUFF_HEROISM, PARTY_BUFF_HASTE, PARTY_BUFF_SHIELD, PARTY_BUFF_STONE_SKIN, PARTY_BUFF_PROTECTION_FROM_MAGIC, PARTY_BUFF_IMMOLATION, PARTY_BUFF_DAY_OF_GODS 531 PARTY_BUFF_HEROISM, PARTY_BUFF_HASTE, PARTY_BUFF_SHIELD, PARTY_BUFF_STONE_SKIN, PARTY_BUFF_PROTECTION_FROM_MAGIC, PARTY_BUFF_IMMOLATION, PARTY_BUFF_DAY_OF_GODS
532 }; 532 }};
533 unsigned __int8 pPartySpellbuffsUI_smthns[14] = 533 std::array<unsigned __int8, 14> pPartySpellbuffsUI_smthns =
534 { 534 {{
535 14, 1, 10, 4, 7, 2, 9, 535 14, 1, 10, 4, 7, 2, 9,
536 3, 6, 15, 8, 3, 12, 0 536 3, 6, 15, 8, 3, 12, 0
537 }; 537 }};
538 538
539 int pNPCPortraits_x[6][6] = // 004E5E50 539 std::array< std::array<int, 6>, 6> pNPCPortraits_x = // 004E5E50
540 { 540 {{
541 {521, 0, 0, 0, 0, 0}, 541 {521, 0, 0, 0, 0, 0},
542 {521, 521, 0, 0, 0, 0}, 542 {521, 521, 0, 0, 0, 0},
543 {521, 521, 521, 0, 0, 0}, 543 {521, 521, 521, 0, 0, 0},
544 {521, 486, 564, 521, 0, 0}, 544 {521, 486, 564, 521, 0, 0},
545 {521, 486, 564, 486, 564, 0}, 545 {521, 486, 564, 486, 564, 0},
546 {486, 564, 486, 564, 486, 564} 546 {486, 564, 486, 564, 486, 564}
547 }; 547 }};
548 int pNPCPortraits_y[6][6] = // 004E5EE0 548 std::array< std::array<int, 6>, 6> pNPCPortraits_y = // 004E5EE0
549 { 549 {{
550 {38, 0, 0, 0, 0, 0}, 550 {38, 0, 0, 0, 0, 0},
551 {38, 165, 0, 0, 0, 0}, 551 {38, 165, 0, 0, 0, 0},
552 {38, 133, 228, 0, 0, 0}, 552 {38, 133, 228, 0, 0, 0},
553 {38, 133, 133, 228, 0, 0}, 553 {38, 133, 133, 228, 0, 0},
554 {38, 133, 133, 228, 228, 0}, 554 {38, 133, 133, 228, 228, 0},
555 {38, 38, 133, 133, 228, 228} 555 {38, 38, 133, 133, 228, 228}
556 }; 556 }};
557 const char *pHouse_ExitPictures[11]= 557 std::array<const char *, 11> pHouse_ExitPictures=
558 { 558 {
559 "", 559 "",
560 "ticon01", 560 "ticon01",
561 "ticon02", 561 "ticon02",
562 "ticon03", 562 "ticon03",
568 "idoor", 568 "idoor",
569 "isecdoor" 569 "isecdoor"
570 }; 570 };
571 571
572 int bWinNT4_0; // weak 572 int bWinNT4_0; // weak
573 __int16 word_4E8152[11] = {0, 0, 0, 90, 8, 2, 70, 20, 10, 50, 30}; 573 std::array<__int16, 11> word_4E8152 = {0, 0, 0, 90, 8, 2, 70, 20, 10, 50, 30};
574 574
575 stru355 stru_4E82A4 = {0x20, 0x41, 0, 0x20, 0xFF0000, 0xFF00, 0xFF, 0xFF000000}; 575 stru355 stru_4E82A4 = {0x20, 0x41, 0, 0x20, 0xFF0000, 0xFF00, 0xFF, 0xFF000000};
576 stru355 stru_4EFCBC = {0x20, 0x41, 0, 0x10, 0x7C00, 0x3E0, 0x1F, 0x8000}; 576 stru355 stru_4EFCBC = {0x20, 0x41, 0, 0x10, 0x7C00, 0x3E0, 0x1F, 0x8000};
577 char byte_4E94D0 = 5; // weak 577 char byte_4E94D0 = 5; // weak
578 char byte_4E94D1 = 9; // weak 578 char byte_4E94D1 = 9; // weak
579 char _4E94D2_light_type = 6; // weak 579 char _4E94D2_light_type = 6; // weak
580 char byte_4E94D3 = 10; // weak 580 char byte_4E94D3 = 10; // weak
581 int dword_4E98BC_bApplicationActive; // weak 581 int dword_4E98BC_bApplicationActive; // weak
582 //char *off_4EB080; // idb 582 //char *off_4EB080; // idb
583 char *pTransitionStrings[465] = {"", nullptr}; // 004EB080 583 std::array<char*, 465> pTransitionStrings = {"", nullptr}; // 004EB080
584 const char *pPlayerPortraitsNames[25] = 584 std::array<const char*, 25> pPlayerPortraitsNames =
585 { 585 {{
586 "pc01-", "pc02", "pc03", "pc04", "pc05-", 586 "pc01-", "pc02", "pc03", "pc04", "pc05-",
587 "pc06", "pc07", "pc08", "pc09-", "pc10", 587 "pc06", "pc07", "pc08", "pc09-", "pc10",
588 "pc11-", "pc12", "pc13", "pc14", "pc15", 588 "pc11-", "pc12", "pc13", "pc14", "pc15",
589 "pc16", "pc17-", "pc18", "pc19", "pc20", 589 "pc16", "pc17-", "pc18", "pc19", "pc20",
590 "pc21-", "pc22-", "pc23", "pc24-", "pc25-" 590 "pc21-", "pc22-", "pc23", "pc24-", "pc25-"
591 }; 591 }};
592 592
593 593
594 594
595 unsigned char byte_4ECF08[48][25] = // 4ECF08 595 std::array< std::array<unsigned char, 25>, 48> byte_4ECF08 = // 4ECF08
596 { 596 {{
597 {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 597 {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
598 {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 598 {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
599 {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 599 {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
600 {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 600 {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
601 {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 601 {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
640 {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 640 {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
641 {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 641 {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
642 {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 642 {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
643 {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 643 {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
644 {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 644 {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
645 }; 645 }};
646 unsigned char SoundSetAction[110][8] = // 4ED3D8 646 unsigned char SoundSetAction[110][8] = // 4ED3D8
647 { 647 {
648 { 0, 0, 0, 0, 0, 0, 0, 0}, 648 { 0, 0, 0, 0, 0, 0, 0, 0},
649 {38, 0, 0, 37, 38, 45, 0, 0}, 649 {38, 0, 0, 37, 38, 45, 0, 0},
650 {37, 0, 0, 47, 53, 0, 0, 0}, 650 {37, 0, 0, 47, 53, 0, 0, 0},
754 {12, 0, 0, 43, 48, 0, 0, 0}, 754 {12, 0, 0, 43, 48, 0, 0, 0},
755 {39, 0, 0, 48, 0, 0, 0, 0}, 755 {39, 0, 0, 48, 0, 0, 0, 0},
756 {14, 0, 0, 48, 0, 0, 0, 0}, 756 {14, 0, 0, 48, 0, 0, 0, 0},
757 {17, 0, 0, 0, 0, 0, 0, 0} 757 {17, 0, 0, 0, 0, 0, 0, 0}
758 }; 758 };
759 __int16 pPlayerPortraitsXCoords_For_PlayerBuffAnimsDrawing[4] = {34, 149, 264, 379}; 759 std::array<__int16, 4> pPlayerPortraitsXCoords_For_PlayerBuffAnimsDrawing = {34, 149, 264, 379};
760 char byte_4ED970_skill_learn_ability_by_class_table[36][37] = 760 std::array< std::array<char, 37>, 36> byte_4ED970_skill_learn_ability_by_class_table =
761 { 761 {{
762 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 762 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
763 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, 763 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,
764 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, 764 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,
765 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, 765 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,
766 766
801 801
802 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 802 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
803 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, 803 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,
804 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, 804 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,
805 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, 805 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,
806 }; 806 }};
807 int dword_4EDEA0[777]; // weak 807 std::array<int, 777> dword_4EDEA0; // weak
808 int dword_4EDEB4[777]; // weak 808 std::array<int, 777> dword_4EDEB4; // weak
809 int dword_4EDEC4[777]; // weak 809 std::array<int, 777> dword_4EDEC4; // weak
810 _UNKNOWN unk_4EDF40; // weak 810 _UNKNOWN unk_4EDF40; // weak
811 unsigned int pHiredNPCsIconsOffsetsX[2] = {489, 559}; 811 std::array<unsigned int, 2> pHiredNPCsIconsOffsetsX = {489, 559};
812 unsigned int pHiredNPCsIconsOffsetsY[2] = {152, 152}; 812 std::array<unsigned int, 2> pHiredNPCsIconsOffsetsY = {152, 152};
813 int dword_4EE07C[2]; // weak 813 std::array<int, 2> dword_4EE07C; // weak
814 _UNKNOWN unk_4EE084; // weak 814 _UNKNOWN unk_4EE084; // weak
815 __int16 word_4EE088_sound_ids[100] = 815 std::array<__int16, 100> word_4EE088_sound_ids =
816 { 816 {{
817 0, 10000, 10010, 10020, 10030, 10040, 10050, 10060, 10070, 10080, 817 0, 10000, 10010, 10020, 10030, 10040, 10050, 10060, 10070, 10080,
818 10090, 10100, 11000, 11010, 11020, 11030, 11040, 11050, 11060, 11070, 818 10090, 10100, 11000, 11010, 11020, 11030, 11040, 11050, 11060, 11070,
819 11080, 11090, 11100, 12000, 12010, 12020, 12030, 12040, 12050, 12060, 819 11080, 11090, 11100, 12000, 12010, 12020, 12030, 12040, 12050, 12060,
820 12070, 12080, 12090, 12100, 13000, 13010, 13020, 13030, 13040, 13050, 820 12070, 12080, 12090, 12100, 13000, 13010, 13020, 13030, 13040, 13050,
821 13060, 13070, 13080, 13090, 13100, 14000, 14010, 14020, 14030, 14040, 821 13060, 13070, 13080, 13090, 13100, 14000, 14010, 14020, 14030, 14040,
822 14050, 14060, 14070, 14080, 14090, 14100, 15000, 15010, 15020, 15030, 822 14050, 14060, 14070, 14080, 14090, 14100, 15000, 15010, 15020, 15030,
823 15040, 15050, 15060, 15070, 15080, 15090, 15100, 16000, 16010, 16020, 823 15040, 15050, 15060, 15070, 15080, 15090, 15100, 16000, 16010, 16020,
824 16030, 16040, 16050, 16060, 16070, 16080, 16090, 16100, 17000, 17010, 824 16030, 16040, 16050, 16060, 16070, 16080, 16090, 16100, 17000, 17010,
825 17020, 17030, 17040, 17050, 17060, 17070, 17080, 17090, 17100, 18000, 825 17020, 17030, 17040, 17050, 17060, 17070, 17080, 17090, 17100, 18000,
826 18010, 18020, 18030, 18040, 18050, 18060, 18070, 18080, 18090, 18100 826 18010, 18020, 18030, 18040, 18050, 18060, 18070, 18080, 18090, 18100
827 }; 827 }};
828 short word_4EE150[28] = 828 std::array<short, 28> word_4EE150 =
829 { 829 {{
830 1, 2, 3, 4, 5, 7, 32, 33, 36, 37, 38, 40, 41, 42, 43, 45, 46, 830 1, 2, 3, 4, 5, 7, 32, 33, 36, 37, 38, 40, 41, 42, 43, 45, 46,
831 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 60 831 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 60
832 }; 832 }};
833 833
834 int dword_4EED78; // weak 834 int dword_4EED78; // weak
835 _UNKNOWN unk_4EED80; // weak 835 _UNKNOWN unk_4EED80; // weak
836 int dword_4EFA80; // weak 836 int dword_4EFA80; // weak
837 int dword_4EFA84; // weak 837 int dword_4EFA84; // weak
838 void *off_4EFDB0; // weak 838 void *off_4EFDB0; // weak
839 int dword_4F031C[777]; // weak 839 int dword_4F031C[777]; // weak
840 const char *off_4F03B8[19] = 840 std::array<const char *, 19> off_4F03B8 =
841 { 841 {{
842 "", "WEPNTABL", "ARMORY", "MAGSHELF", 842 "", "WEPNTABL", "ARMORY", "MAGSHELF",
843 "MAGSHELF", "MAGSHELF", "MAGSHELF", "MAGSHELF", 843 "MAGSHELF", "MAGSHELF", "MAGSHELF", "MAGSHELF",
844 "MAGSHELF", "MAGSHELF", "MAGSHELF", "MAGSHELF", 844 "MAGSHELF", "MAGSHELF", "MAGSHELF", "MAGSHELF",
845 "MAGSHELF", "MAGSHELF", "MAGSHELF", "MAGSHELF", 845 "MAGSHELF", "MAGSHELF", "MAGSHELF", "MAGSHELF",
846 "MAGSHELF", "MAGSHELF", "MAGSHELF" 846 "MAGSHELF", "MAGSHELF", "MAGSHELF"
847 }; 847 }};
848 848
849 int guild_mambership_flags[32]={ 849 std::array<int, 32> guild_mambership_flags={{
850 54, 54, 54, 54, 52, 52, 52, 52, 55, 55, 55, 55, 53, 53, 850 54, 54, 54, 54, 52, 52, 52, 52, 55, 55, 55, 55, 53, 53,
851 53, 53, 58, 58, 58, 58, 57, 57, 57, 57, 56, 56, 851 53, 53, 58, 58, 58, 58, 57, 57, 57, 57, 56, 56,
852 56, 56, 59, 59, 60, 60}; 852 56, 56, 59, 59, 60, 60}};
853 __int16 word_4F0754[49]; 853 std::array<__int16, 49> word_4F0754;
854 __int16 _4F0882_evt_VAR_PlayerItemInHands_vals[54] = 854 std::array<__int16, 54> _4F0882_evt_VAR_PlayerItemInHands_vals =
855 { 855 {{
856 0x0D4, 0x270, 0x0D5, 0x21C, 0x0D6, 0x2BE, 0x0D7, 0x2BD, 0x0D8, 0x289, 856 0x0D4, 0x270, 0x0D5, 0x21C, 0x0D6, 0x2BE, 0x0D7, 0x2BD, 0x0D8, 0x289,
857 0x0D9, 0x258, 0x0DA, 0x2AB, 0x0DB, 0x281, 0x0DC, 0x280, 0x0DD, 857 0x0D9, 0x258, 0x0DA, 0x2AB, 0x0DB, 0x281, 0x0DC, 0x280, 0x0DD,
858 0x284, 0x0DE, 0x285, 0x0DF, 0x283, 0x0E0, 0x282, 0x0E1, 0x27F, 858 0x284, 0x0DE, 0x285, 0x0DF, 0x283, 0x0E0, 0x282, 0x0E1, 0x27F,
859 0x0E2, 0x1E7, 0x0E3, 0x287, 0x0E4, 0x272, 0x0E5, 0x267, 0x0E6, 859 0x0E2, 0x1E7, 0x0E3, 0x287, 0x0E4, 0x272, 0x0E5, 0x267, 0x0E6,
860 0x275, 0x0E7, 0x25A, 0x0E8, 0x2A4, 0x0E9, 0x2A5, 0x0EA, 0x2A3, 860 0x275, 0x0E7, 0x25A, 0x0E8, 0x2A4, 0x0E9, 0x2A5, 0x0EA, 0x2A3,
861 0x0EB, 0x25C, 0x0EC, 0x25D, 0x0ED, 0x259, 0x0F1, 0x21E 861 0x0EB, 0x25C, 0x0EC, 0x25D, 0x0ED, 0x259, 0x0F1, 0x21E
862 }; 862 }};
863 unsigned short pMaxLevelPerTrainingHallType[6] = {5, 15, 25, 25, 200, 200}; 863 std::array<unsigned short, 6> pMaxLevelPerTrainingHallType = {5, 15, 25, 25, 200, 200};
864 864
865 int price_for_membership[11]={100, 100, 50, 50, 50, 50, 50, 50, 50, 1000, 1000}; // weak 865 std::array<int, 11> price_for_membership={100, 100, 50, 50, 50, 50, 50, 50, 50, 1000, 1000}; // weak
866 866
867 867
868 Vec2_int_ pMonsterArenaPlacements[20]; 868 std::array<Vec2_int_, 20> pMonsterArenaPlacements;
869 __int16 word_4F0F30[32] ={ 4, 7, 10, 11, 869 std::array<__int16, 32> word_4F0F30 ={{ 4, 7, 10, 11,
870 4, 7, 10, 11, 870 4, 7, 10, 11,
871 4, 7, 10, 11, 871 4, 7, 10, 11,
872 4, 7, 10, 11, 872 4, 7, 10, 11,
873 4, 7, 10, 11, 873 4, 7, 10, 11,
874 4, 7, 10, 11, 874 4, 7, 10, 11,
875 4, 7, 10, 11, 875 4, 7, 10, 11,
876 7, 11, 876 7, 11,
877 7, 11}; 877 7, 11}};
878 double dbl_4F2870; // weak 878 double dbl_4F2870; // weak
879 int dword_4F288C; // weak 879 int dword_4F288C; // weak
880 double dbl_4F5372; // weak 880 double dbl_4F5372; // weak
881 int dword_4F5428[777]; // weak 881 int dword_4F5428[777]; // weak
882 int dword_4F542C[777]; // weak 882 int dword_4F542C[777]; // weak
883 _UNKNOWN crtunk_4F54B8; // weak 883 _UNKNOWN crtunk_4F54B8; // weak
884 int dword_4F5B24_ys[777]; // idb 884 std::array<int, 777> dword_4F5B24_ys; // idb
885 int dword_4F5BF4_xs[777]; // idb 885 std::array<int, 777> dword_4F5BF4_xs; // idb
886 int dword_4F5CC4_ys[777]; // idb 886 std::array<int, 777> dword_4F5CC4_ys; // idb
887 int dword_4F5D98_xs[777]; // idb 887 std::array<int, 777> dword_4F5D98_xs; // idb
888 int ai_array_4F5E68[500]; 888 std::array<int, 500> ai_array_4F5E68;
889 int ai_array_4F6638_actor_ids[500]; 889 std::array<int, 500> ai_array_4F6638_actor_ids;
890 int ai_near_actors_targets_pid[500]; 890 std::array<int, 500> ai_near_actors_targets_pid;
891 int ai_arrays_size; // weak 891 int ai_arrays_size; // weak
892 int ai_near_actors_distances[500]; 892 std::array<int, 500> ai_near_actors_distances;
893 unsigned int ai_near_actors_ids[500]; 893 std::array<unsigned int, 500> ai_near_actors_ids;
894 int dword_4F8580[121]; // weak 894 std::array<int, 121> dword_4F8580; // weak
895 int dword_4FA9B0[777]; // weak 895 int dword_4FA9B0[777]; // weak
896 int dword_4FA9B4[777]; // weak 896 int dword_4FA9B4[777]; // weak
897 char byte_4FAA00; // weak 897 char byte_4FAA00; // weak
898 __int16 am_sounds[12]; 898 std::array<__int16, 12> am_sounds;
899 _UNKNOWN unk_4FAA20; // weak 899 _UNKNOWN unk_4FAA20; // weak
900 char byte_4FAA24; // weak 900 char byte_4FAA24; // weak
901 HWND dword_4FAA28; // idb 901 HWND dword_4FAA28; // idb
902 902
903 903
906 int amuint_4FAA38; // weak 906 int amuint_4FAA38; // weak
907 int amuint_4FAA3C_blt_xy[2]; 907 int amuint_4FAA3C_blt_xy[2];
908 int am_uint_4FAA44_blt_xy[2]; 908 int am_uint_4FAA44_blt_xy[2];
909 int amuint_4FAA4C; // weak 909 int amuint_4FAA4C; // weak
910 unsigned int uCardID; // idb 910 unsigned int uCardID; // idb
911 int amuint_4FAA54_blt_xy[2]; 911 std::array<int, 2> amuint_4FAA54_blt_xy;
912 int amuint_4FAA5C_blt_xy[2]; 912 std::array<int, 2> amuint_4FAA5C_blt_xy;
913 int dword_4FAA64; // weak 913 int dword_4FAA64; // weak
914 int dword_4FAA68; // weak 914 int dword_4FAA68; // weak
915 915
916 int dword_4FAA70; // weak 916 int dword_4FAA70; // weak
917 char byte_4FAA74; // weak 917 char byte_4FAA74; // weak
918 char am_byte_4FAA75; // weak 918 char am_byte_4FAA75; // weak
919 char am_byte_4FAA76; // weak 919 char am_byte_4FAA76; // weak
920 920
921 int amuint_4FAA78[777]; // weak 921 std::array<int, 777> amuint_4FAA78; // weak
922 char am_byte_4FAA7C[777]; // weak 922 char am_byte_4FAA7C[777]; // weak
923 int amuint_4FAA80[777]; // weak 923 std::array<int, 777> amuint_4FAA80; // weak
924 int amuint_4FAA84[777]; // weak 924 std::array<int, 777> amuint_4FAA84; // weak
925 int amuint_4FAA88[777]; // weak 925 int amuint_4FAA88[777]; // weak
926 int amuint_4FAA8C[777]; // weak 926 int amuint_4FAA8C[777]; // weak
927 int amuint_4FAA90[777][2]; 927 int amuint_4FAA90[777][2];
928 int dword_4FABB8; // weak 928 int dword_4FABB8; // weak
929 929
955 955
956 char byte_505880; // weak 956 char byte_505880; // weak
957 char byte_505881; // weak 957 char byte_505881; // weak
958 958
959 int dword_505890; // weak 959 int dword_505890; // weak
960 unsigned int pSRZBufferLineOffsets[480]; 960 std::array<unsigned int, 480> pSRZBufferLineOffsets;
961 int areWeLoadingTexture; // weak 961 int areWeLoadingTexture; // weak
962 char byte_506130[777]; // weak 962 std::array<char, 777> byte_506130; // weak
963 int dword_506338; // weak 963 int dword_506338; // weak
964 int dword_50633C; // idb 964 int dword_50633C; // idb
965 signed int sRecoveryTime; // idb 965 signed int sRecoveryTime; // idb
966 unsigned int uRequiredMana; // idb 966 unsigned int uRequiredMana; // idb
967 int _506348_current_lloyd_playerid; // weak 967 int _506348_current_lloyd_playerid; // weak
981 int Book_PageBtn3_flag; //dword_506540 981 int Book_PageBtn3_flag; //dword_506540
982 int BtnDown_flag; //BtnDown_flag 982 int BtnDown_flag; //BtnDown_flag
983 int BtnUp_flag; //BtnUp_flag 983 int BtnUp_flag; //BtnUp_flag
984 int quick_spell_at_page; // weak 984 int quick_spell_at_page; // weak
985 char byte_506550; // weak 985 char byte_506550; // weak
986 char *aMoonPhaseNames[5]; 986 std::array<char *, 5> aMoonPhaseNames;
987 int _506568_autonote_type; // weak 987 int _506568_autonote_type; // weak
988 char bRecallingBeacon; // weak 988 char bRecallingBeacon; // weak
989 int uLastPointedObjectID; // weak 989 int uLastPointedObjectID; // weak
990 //unsigned __int8 bMonsterInfoUI_bDollInitialized; 990 //unsigned __int8 bMonsterInfoUI_bDollInitialized;
991 char *aSpellNames[44]; 991 std::array<char *, 44> aSpellNames;
992 int pMainScreenNum; // weak 992 int pMainScreenNum; // weak
993 int dword_506980_uW; // weak 993 int dword_506980_uW; // weak
994 int dword_506984_uZ; // weak 994 int dword_506984_uZ; // weak
995 int dword_506988_uY; // weak 995 int dword_506988_uY; // weak
996 int dword_50698C_uX; // weak 996 int dword_50698C_uX; // weak
997 int uGameMenuUI_CurentlySelectedKeyIdx; // 506E68 997 int uGameMenuUI_CurentlySelectedKeyIdx; // 506E68
998 unsigned int pPrevVirtualCidesMapping[27]; 998 std::array<unsigned int, 27> pPrevVirtualCidesMapping;
999 int KeyboardPageNum; // weak 999 int KeyboardPageNum; // weak
1000 int dword_506F0C[777]; // idb 1000 std::array<int, 777> dword_506F0C; // idb
1001 int uRestUI_FoodRequiredToRest; 1001 int uRestUI_FoodRequiredToRest;
1002 int dword_506F14; // weak 1002 int dword_506F14; // weak
1003 int _506F18_num_hours_to_sleep; // weak 1003 int _506F18_num_hours_to_sleep; // weak
1004 int dword_506F1C; // weak 1004 int dword_506F1C; // weak
1005 int pVisibleWindowsIdxs[20]; // weak 1005 std::array<int, 20> pVisibleWindowsIdxs; // weak
1006 int uNumVisibleWindows; 1006 int uNumVisibleWindows;
1007 char bFlashHistoryBook; // weak 1007 char bFlashHistoryBook; // weak
1008 char bFlashAutonotesBook; // weak 1008 char bFlashAutonotesBook; // weak
1009 char bFlashQuestBook; // weak 1009 char bFlashQuestBook; // weak
1010 int uTextureID_PlayerBuff_PainReflection; // weak 1010 int uTextureID_PlayerBuff_PainReflection; // weak
1020 struct GUIButton *pBtn_ZoomOut; // idb 1020 struct GUIButton *pBtn_ZoomOut; // idb
1021 struct GUIButton *pBtn_ZoomIn; // idb 1021 struct GUIButton *pBtn_ZoomIn; // idb
1022 unsigned int uGameUIFontShadow; 1022 unsigned int uGameUIFontShadow;
1023 unsigned int uGameUIFontMain; 1023 unsigned int uGameUIFontMain;
1024 int dword_507B00_spell_info_to_draw_in_popup; // weak 1024 int dword_507B00_spell_info_to_draw_in_popup; // weak
1025 char *aMonthNames[12]; 1025 std::array<char *, 12> aMonthNames;
1026 char *aDayNames[7]; 1026 std::array<char *, 7> aDayNames;
1027 char *aSpellSchoolNames[9]; 1027 std::array<char *, 9> aSpellSchoolNames;
1028 char *aAttributeNames[7]; 1028 std::array<char *, 7> aAttributeNames;
1029 int dword_507B94; // weak 1029 int dword_507B94; // weak
1030 int dword_507B98_ctrl_pressed; // weak 1030 int dword_507B98_ctrl_pressed; // weak
1031 unsigned int uActiveCharacter; 1031 unsigned int uActiveCharacter;
1032 int dword_507BF0_is_there_popup_onscreen; // weak 1032 int dword_507BF0_is_there_popup_onscreen; // weak
1033 int dword_507CBC; // weak 1033 int dword_507CBC; // weak
1034 int dword_507CC0_activ_ch; // weak 1034 int dword_507CC0_activ_ch; // weak
1035 __int64 GameUI_RightPanel_BookFlashTimer; // weak 1035 __int64 GameUI_RightPanel_BookFlashTimer; // weak
1036 int _507CD4_RestUI_hourglass_anim_controller; // weak 1036 int _507CD4_RestUI_hourglass_anim_controller; // weak
1037 int dword_507CD8; // weak 1037 int dword_507CD8; // weak
1038 int dword_50B570[50]; // weak 1038 std::array<int, 50> dword_50B570; // weak
1039 int dword_50B638[50]; // weak 1039 std::array<int, 50> dword_50B638; // weak
1040 stru367 stru_50B700; 1040 stru367 stru_50B700;
1041 /*int stru_50B700.field_0; // weak 1041 /*int stru_50B700.field_0; // weak
1042 int stru_50B700.field_38[777]; // idb 1042 int stru_50B700.field_38[777]; // idb
1043 int stru_50B700._view_transformed_ys[45]; 1043 int stru_50B700._view_transformed_ys[45];
1044 int stru_50B700.field_128[777]; 1044 int stru_50B700.field_128[777];
1054 int stru_50B700.field_3D4[777]; // weak 1054 int stru_50B700.field_3D4[777]; // weak
1055 int stru_50B700._xs[777]; // weak 1055 int stru_50B700._xs[777]; // weak
1056 int dword_50BAE8[777]; // weak 1056 int dword_50BAE8[777]; // weak
1057 int stru_50B700._xs2[3 + 45]; // weak 1057 int stru_50B700._xs2[3 + 45]; // weak
1058 int stru_50B700._xs3[48]; // weak*/ 1058 int stru_50B700._xs3[48]; // weak*/
1059 int dword_50BC10[100]; // weak 1059 std::array<int, 100> dword_50BC10; // weak
1060 int dword_50BDA0[100]; // weak 1060 std::array<int, 100> dword_50BDA0; // weak
1061 int dword_50BF30[100]; // weak 1061 std::array<int, 100> dword_50BF30; // weak
1062 char town_portal_caster_id; // weak 1062 char town_portal_caster_id; // weak
1063 int some_active_character; // weak 1063 int some_active_character; // weak
1064 //_UNKNOWN unk_50C190; // weak 1064 //_UNKNOWN unk_50C190; // weak
1065 int dword_50C968; // weak 1065 int dword_50C968; // weak
1066 unsigned int pIconIDs_Turn[5]; 1066 std::array<unsigned int, 5> pIconIDs_Turn;
1067 unsigned int uIconID_TurnStop; 1067 unsigned int uIconID_TurnStop;
1068 unsigned int uIconID_TurnHour; 1068 unsigned int uIconID_TurnHour;
1069 int uIconID_CharacterFrame; // idb 1069 int uIconID_CharacterFrame; // idb
1070 unsigned int uIconID_TurnStart; 1070 unsigned int uIconID_TurnStart;
1071 int dword_50C994; // weak 1071 int dword_50C994; // weak
1083 //int dword_50C9EC[120]; // weak 1083 //int dword_50C9EC[120]; // weak
1084 int dword_50CDC8; 1084 int dword_50CDC8;
1085 int dword_50CDCC; // weak 1085 int dword_50CDCC; // weak
1086 int bProcessorIsNotIntel; // weak 1086 int bProcessorIsNotIntel; // weak
1087 Vec3_int_ layingitem_vel_50FDFC; 1087 Vec3_int_ layingitem_vel_50FDFC;
1088 char pStartingMapName[777]; // idb 1088 std::array<char, 777> pStartingMapName; // idb
1089 unsigned __int8 IsPlayerWearingWatersuit[5]; 1089 std::array<unsigned __int8, 5> IsPlayerWearingWatersuit;
1090 char party_has_equipment[54]; 1090 std::array<char, 54> party_has_equipment;
1091 char byte_5111F6[16]; 1091 std::array<char, 16> byte_5111F6;
1092 1092
1093 int _unused000; // weak 1093 int _unused000; // weak
1094 1094
1095 unsigned __int16 pOdmMinimap[117][137]; 1095 std::array<std::array<unsigned __int16, 137>, 117> pOdmMinimap;
1096 unsigned int uNumBlueFacesInBLVMinimap; 1096 unsigned int uNumBlueFacesInBLVMinimap;
1097 unsigned __int16 pBlueFacesInBLVMinimapIDs[50]; 1097 std::array<unsigned __int16, 50> pBlueFacesInBLVMinimapIDs;
1098 int pTextureIDs_PartyBuffIcons[14]; 1098 std::array<int, 14> pTextureIDs_PartyBuffIcons;
1099 unsigned int uIconIdx_FlySpell; 1099 unsigned int uIconIdx_FlySpell;
1100 unsigned int uIconIdx_WaterWalk; 1100 unsigned int uIconIdx_WaterWalk;
1101 int dword_576E28; // weak 1101 int dword_576E28; // weak
1102 int _576E2C_current_minimap_zoom; // weak 1102 int _576E2C_current_minimap_zoom; // weak
1103 __int64 _5773B8_event_timer; // weak 1103 __int64 _5773B8_event_timer; // weak
1107 int dword_591084; // weak 1107 int dword_591084; // weak
1108 struct Actor *pDialogue_SpeakingActor; 1108 struct Actor *pDialogue_SpeakingActor;
1109 unsigned int uDialogueType; 1109 unsigned int uDialogueType;
1110 int sDialogue_SpeakingActorNPC_ID; 1110 int sDialogue_SpeakingActorNPC_ID;
1111 struct LevelDecoration *_591094_decoration; 1111 struct LevelDecoration *_591094_decoration;
1112 char sHouseName[200]; // idb 1112 std::array<char, 200> sHouseName; // idb
1113 int uCurrentHouse_Animation; // weak 1113 int uCurrentHouse_Animation; // weak
1114 char *dword_591164_teleport_map_name; // idb 1114 char *dword_591164_teleport_map_name; // idb
1115 int dword_591168_teleport_speedz; // weak 1115 int dword_591168_teleport_speedz; // weak
1116 int dword_59116C_teleport_directionx; // weak 1116 int dword_59116C_teleport_directionx; // weak
1117 int dword_591170_teleport_directiony; // weak 1117 int dword_591170_teleport_directiony; // weak
1118 int dword_591174_teleportz; // weak 1118 int dword_591174_teleportz; // weak
1119 int dword_591178_teleporty; // weak 1119 int dword_591178_teleporty; // weak
1120 int dword_59117C_teleportx; // weak 1120 int dword_59117C_teleportx; // weak
1121 char byte_591180[6][100]; // idb 1121 std::array<std::array<char, 100>, 6> byte_591180; // idb
1122 struct NPCData *HouseNPCData[60];//array_5913D8 this array size temporarily increased to 60 from 6 to work aroud house overflow 1122 std::array<struct NPCData *, 60> HouseNPCData;//array_5913D8 this array size temporarily increased to 60 from 6 to work aroud house overflow
1123 1123
1124 struct Texture *pTexture_591428; 1124 struct Texture *pTexture_591428;
1125 struct Texture *pTexture_outside; // idb 1125 struct Texture *pTexture_outside; // idb
1126 struct Texture *pTexture_Dialogue_Background; 1126 struct Texture *pTexture_Dialogue_Background;
1127 _UNKNOWN unk_597F10; // weak 1127 _UNKNOWN unk_597F10; // weak
1128 char byte_5B0938[2000]; 1128 std::array<char, 2000> byte_5B0938;
1129 int EvtTargetObj; // 0x5B5920 1129 int EvtTargetObj; // 0x5B5920
1130 int _unused_5B5924_is_travel_ui_drawn = false; // 005B5924 1130 int _unused_5B5924_is_travel_ui_drawn = false; // 005B5924
1131 int _5B65A8_npcdata_uflags_or_other; // weak 1131 int _5B65A8_npcdata_uflags_or_other; // weak
1132 int _5B65AC_npcdata_fame_or_other; // weak 1132 int _5B65AC_npcdata_fame_or_other; // weak
1133 int _5B65B0_npcdata_rep_or_other; // weak 1133 int _5B65B0_npcdata_rep_or_other; // weak
1140 int dword_5B65CC; // weak 1140 int dword_5B65CC; // weak
1141 signed int dword_5B65D0_dialogue_actor_npc_id; // weak 1141 signed int dword_5B65D0_dialogue_actor_npc_id; // weak
1142 int dword_5C3418; // weak 1142 int dword_5C3418; // weak
1143 int dword_5C341C; // weak 1143 int dword_5C341C; // weak
1144 int _5C3420_pDecoration; 1144 int _5C3420_pDecoration;
1145 char byte_5C3427[777]; // weak 1145 std::array<char, 777> byte_5C3427; // weak
1146 char GameUI_Footer_TimedString[200]; 1146 std::array<char, 200> GameUI_Footer_TimedString;
1147 char pFooterString[200]; 1147 std::array<char, 200> pFooterString;
1148 unsigned int GameUI_Footer_TimeLeft; 1148 unsigned int GameUI_Footer_TimeLeft;
1149 int bForceDrawFooter; // weak 1149 int bForceDrawFooter; // weak
1150 int dword_5C35C0; // weak 1150 int dword_5C35C0; // weak
1151 int bDialogueUI_InitializeActor_NPC_ID; // weak 1151 int bDialogueUI_InitializeActor_NPC_ID; // weak
1152 int dword_5C35C8; // weak 1152 int dword_5C35C8; // weak
1153 char *p2DEventsTXT_Raw; 1153 char *p2DEventsTXT_Raw;
1154 1154
1155 int dword_5C35D4; // weak 1155 int dword_5C35D4; // weak
1156 char *aAMPMNames[2]; 1156 std::array<char *, 2> aAMPMNames;
1157 char byte_5C45AF[777]; // weak 1157 char byte_5C45AF[777]; // weak
1158 1158
1159 char pFinalMessage[4096]; // idb 1159 std::array<char, 4096> pFinalMessage; // idb
1160 char pTmpBuf[2000]; 1160 std::array<char, 2000> pTmpBuf;
1161 char pTmpBuf2[2000]; 1161 std::array<char, 2000> pTmpBuf2;
1162 char byte_5C6D50[100]; // weak 1162 std::array<char, 100> byte_5C6D50; // weak
1163 int ui_current_text_color; // weak 1163 int ui_current_text_color; // weak
1164 __int64 qword_5C6DF0; // weak 1164 __int64 qword_5C6DF0; // weak
1165 int dword_5C6DF8; // weak 1165 int dword_5C6DF8; // weak
1166 char item__getname_buffer[104]; // idb 1166 std::array<char, 104> item__getname_buffer; // idb
1167 char *pClassDescriptions[36]; 1167 std::array<char *, 36> pClassDescriptions;
1168 char *pAttributeDescriptions[7]; 1168 std::array<char *, 7> pAttributeDescriptions;
1169 char *pGrandSkillDesc[38]; 1169 std::array<char *, 38> pGrandSkillDesc;
1170 char *pMasterSkillDesc[38]; 1170 std::array<char *, 38> pMasterSkillDesc;
1171 char *pExpertSkillDesc[38]; 1171 std::array<char *, 38> pExpertSkillDesc;
1172 char *pNormalSkillDesc[38]; 1172 std::array<char *, 38> pNormalSkillDesc;
1173 char *pSkillDesc[38]; 1173 std::array<char *, 38> pSkillDesc;
1174 char *pHealthPointsAttributeDescription; 1174 char *pHealthPointsAttributeDescription;
1175 char *pSpellPointsAttributeDescription; 1175 char *pSpellPointsAttributeDescription;
1176 char *pArmourClassAttributeDescription; 1176 char *pArmourClassAttributeDescription;
1177 char *pPlayerConditionAttributeDescription; // idb 1177 char *pPlayerConditionAttributeDescription; // idb
1178 char *pFastSpellAttributeDescription; 1178 char *pFastSpellAttributeDescription;
1193 char *pClassTXT_Raw; 1193 char *pClassTXT_Raw;
1194 char *pStatsTXT_Raw; 1194 char *pStatsTXT_Raw;
1195 char *pSkillDescTXT_Raw; 1195 char *pSkillDescTXT_Raw;
1196 1196
1197 struct FactionTable *pFactionTable; 1197 struct FactionTable *pFactionTable;
1198 char byte_5C8D1A[777]; // weak 1198 std::array<char, 777> byte_5C8D1A; // weak
1199 1199
1200 char byte_5E4C15[777]; // weak 1200 std::array<char, 777> byte_5E4C15; // weak
1201 char *pSomeItemsNames[14]; 1201 std::array<char *, 14> pSomeItemsNames;
1202 1202
1203 char *pMonstersTXT_Raw; 1203 char *pMonstersTXT_Raw;
1204 char *pMonsterPlacementTXT_Raw; 1204 char *pMonsterPlacementTXT_Raw;
1205 char *pSpellsTXT_Raw; 1205 char *pSpellsTXT_Raw;
1206 char *pMapStatsTXT_Raw; 1206 char *pMapStatsTXT_Raw;
1207 char *pHostileTXT_Raw; 1207 char *pHostileTXT_Raw;
1208 char *pPotionsTXT_Raw; 1208 char *pPotionsTXT_Raw;
1209 char *pPotionNotesTXT_Raw; 1209 char *pPotionNotesTXT_Raw;
1210 1210
1211 int _6807B8_level_decorations_ids[777]; // idb 1211 std::array<int, 777> _6807B8_level_decorations_ids; // idb
1212 int _6807E0_num_decorations_with_sounds_6807B8; // weak 1212 int _6807E0_num_decorations_with_sounds_6807B8; // weak
1213 int _6807E8_level_decorations_ids[777]; // idb 1213 std::array<int, 777> _6807E8_level_decorations_ids; // idb
1214 int _6836C8_num_decorations_6807E8; // weak 1214 int _6836C8_num_decorations_6807E8; // weak
1215 int dword_69B010[64]; 1215 std::array<int, 64> dword_69B010;
1216 float flt_69B138_dist; // weak 1216 float flt_69B138_dist; // weak
1217 char byte_69BD41_unused; // weak 1217 char byte_69BD41_unused; // weak
1218 unsigned int uTextureID_x_u; 1218 unsigned int uTextureID_x_u;
1219 unsigned int uTextureID_LS_saveU; 1219 unsigned int uTextureID_LS_saveU;
1220 unsigned int uTextureID_LS_loadU; 1220 unsigned int uTextureID_LS_loadU;
1244 struct TileTable *pTileTable; // idb 1244 struct TileTable *pTileTable; // idb
1245 int texmapping_terrain_subdivsize; // weak 1245 int texmapping_terrain_subdivsize; // weak
1246 int texmapping_terrain_subdivpow2; // weak 1246 int texmapping_terrain_subdivpow2; // weak
1247 int texmapping_building_subdivsize; // weak 1247 int texmapping_building_subdivsize; // weak
1248 int texmapping_building_subdivpow2; // weak 1248 int texmapping_building_subdivpow2; // weak
1249 int unnamed_6BE060[2] = {0, 1}; 1249 std::array<int, 2> unnamed_6BE060 = {{0, 1}};
1250 int mipmapping_building_mm1; // weak 1250 int mipmapping_building_mm1; // weak
1251 int mipmapping_building_mm2; // weak 1251 int mipmapping_building_mm2; // weak
1252 int mipmapping_building_mm3; // weak 1252 int mipmapping_building_mm3; // weak
1253 int mipmapping_terrain_mm1; // weak 1253 int mipmapping_terrain_mm1; // weak
1254 int mipmapping_terrain_mm2; // weak 1254 int mipmapping_terrain_mm2; // weak
1266 char outdoor_night_top_g; // weak 1266 char outdoor_night_top_g; // weak
1267 char outdoor_night_top_b; // weak 1267 char outdoor_night_top_b; // weak
1268 char outdoor_night_bottom_r; // weak 1268 char outdoor_night_bottom_r; // weak
1269 char outdoor_night_bottom_g; // weak 1269 char outdoor_night_bottom_g; // weak
1270 char outdoor_night_bottom_b; // weak 1270 char outdoor_night_bottom_b; // weak
1271 char pDefaultSkyTexture[777]; // idb 1271 std::array<char, 777> pDefaultSkyTexture; // idb
1272 char byte_6BE124_cfg_textures_DefaultGroundTexture[16]; // idb 1272 std::array<char, 16> byte_6BE124_cfg_textures_DefaultGroundTexture; // idb
1273 int _6BE134_odm_main_tile_group; // weak 1273 int _6BE134_odm_main_tile_group; // weak
1274 int dword_6BE138; // weak 1274 int dword_6BE138; // weak
1275 int dword_6BE13C_uCurrentlyLoadedLocationID; // weak 1275 int dword_6BE13C_uCurrentlyLoadedLocationID; // weak
1276 float fWalkSpeedMultiplier = 1.0f; // weak 1276 float fWalkSpeedMultiplier = 1.0f; // weak
1277 float fBackwardWalkSpeedMultiplier = 1.0f; // weak 1277 float fBackwardWalkSpeedMultiplier = 1.0f; // weak
1283 int uWindowX; // idb 1283 int uWindowX; // idb
1284 int uWindowY; // idb 1284 int uWindowY; // idb
1285 LONG uWindowStyle; // idb 1285 LONG uWindowStyle; // idb
1286 HMENU hOSMenu; // idb 1286 HMENU hOSMenu; // idb
1287 int dword_6BE340; // weak 1287 int dword_6BE340; // weak
1288 char pCurrentMapName[20]; // idb 1288 std::array<char, 20> pCurrentMapName; // idb
1289 unsigned int uLevelMapStatsID; 1289 unsigned int uLevelMapStatsID;
1290 int dword_6BE364_game_settings_1 = 0; // weak 1290 int dword_6BE364_game_settings_1 = 0; // weak
1291 int dword_6BE368_debug_settings_2 = 0; // weak 1291 int dword_6BE368_debug_settings_2 = 0; // weak
1292 unsigned __int8 bUseLoResSprites = false; 1292 unsigned __int8 bUseLoResSprites = false;
1293 unsigned __int8 bUseRegistry = true; 1293 unsigned __int8 bUseRegistry = true;
1300 unsigned int uTurnSpeed; 1300 unsigned int uTurnSpeed;
1301 float flt_6BE3A0; // weak 1301 float flt_6BE3A0; // weak
1302 float flt_6BE3A4_debug_recmod1; 1302 float flt_6BE3A4_debug_recmod1;
1303 float flt_6BE3A8_debug_recmod2; 1303 float flt_6BE3A8_debug_recmod2;
1304 float flt_6BE3AC_debug_recmod1_x_1_6; 1304 float flt_6BE3AC_debug_recmod1_x_1_6;
1305 char byte_6BE3B0[20]; // idb 1305 std::array<char, 20> byte_6BE3B0; // idb
1306 char bUnderwater = false; // weak 1306 char bUnderwater = false; // weak
1307 char bNoNPCHiring = false; // weak 1307 char bNoNPCHiring = false; // weak
1308 int _702AC0_unused = 0; // weak 1308 int _702AC0_unused = 0; // weak
1309 int _702AC4_unused = 0; // weak 1309 int _702AC4_unused = 0; // weak
1310 char _702ACC_unused = 0; // weak 1310 char _702ACC_unused = 0; // weak
1313 bool bNoIntro = false; 1313 bool bNoIntro = false;
1314 bool bNoLogo = false; 1314 bool bNoLogo = false;
1315 bool bNoCD = false; 1315 bool bNoCD = false;
1316 bool bNoSound = false; 1316 bool bNoSound = false;
1317 int aborting_app; // weak 1317 int aborting_app; // weak
1318 int dword_720020_zvalues[100]; 1318 std::array<int, 100> dword_720020_zvalues;
1319 int dword_7201B0_zvalues[299]; 1319 std::array<int, 299> dword_7201B0_zvalues;
1320 int uTextureID_720980; // weak 1320 int uTextureID_720980; // weak
1321 int _720984_unused; // weak 1321 int _720984_unused; // weak
1322 char _72098C_unused; // weak 1322 char _72098C_unused; // weak
1323 __int16 word_7209A0_intercepts_ys_plus_ys[104]; 1323 std::array<__int16, 104> word_7209A0_intercepts_ys_plus_ys;
1324 __int16 word_720A70_intercepts_xs_plus_xs[104]; 1324 std::array<__int16, 104> word_720A70_intercepts_xs_plus_xs;
1325 __int16 word_720B40_intercepts_zs[104]; 1325 std::array<__int16, 104> word_720B40_intercepts_zs;
1326 __int16 word_720C10_intercepts_xs[102]; 1326 std::array<__int16, 102> word_720C10_intercepts_xs;
1327 int dword_720CDC; 1327 int dword_720CDC;
1328 __int16 word_720CE0_ys[777]; // idb 1328 std::array<__int16, 777> word_720CE0_ys; // idb
1329 __int16 word_720DB0_xs[777]; // idb 1329 std::array<__int16, 777> word_720DB0_xs; // idb
1330 int dword_720E80[20]; 1330 std::array<int, 20> dword_720E80;
1331 int dword_720ED0[20]; 1331 std::array<int, 20> dword_720ED0;
1332 int dword_720F20[20]; 1332 std::array<int, 20> dword_720F20;
1333 __int16 word_720F70[777]; // idb 1333 std::array<__int16, 777> word_720F70; // idb
1334 __int16 word_721040[777]; // idb 1334 std::array<__int16, 777> word_721040; // idb
1335 int dword_721110[777]; // idb 1335 std::array<int, 777> dword_721110; // idb
1336 int dword_721160[777]; // idb 1336 std::array<int, 777> dword_721160; // idb
1337 int odm_floor_level[20]; // idb 1337 std::array<int, 20> odm_floor_level; // idb
1338 int blv_prev_party_x; // weak 1338 int blv_prev_party_x; // weak
1339 int blv_prev_party_z; // weak 1339 int blv_prev_party_z; // weak
1340 int blv_prev_party_y; // weak 1340 int blv_prev_party_y; // weak
1341 char *dword_721660; // idb 1341 char *dword_721660; // idb
1342 char *dword_721664; // idb 1342 char *dword_721664; // idb
1343 NPCTopic pNPCTopics[789]; 1343 NPCTopic pNPCTopics[789];
1344 char *dword_722F10; // idb 1344 char *dword_722F10; // idb
1345 const char *pQuestTable[512]; 1345 std::array<const char *, 512> pQuestTable;
1346 _UNKNOWN unk_723714; // weak 1346 _UNKNOWN unk_723714; // weak
1347 char *dword_723718_autonote_related; // idb 1347 char *dword_723718_autonote_related; // idb
1348 int dword_72371C[777]; // weak 1348 int dword_72371C[777]; // weak
1349 const char *pScrolls[82]; 1349 std::array<const char *, 82> pScrolls;
1350 int dword_723E80_award_related[777]; // weak 1350 int dword_723E80_award_related[777]; // weak
1351 int dword_723E84[777]; // weak 1351 int dword_723E84[777]; // weak
1352 int dword_7241C8; // weak 1352 int dword_7241C8; // weak
1353 struct unk_F7B60C stru_73C834; // struct @ MM7.exe::0073C834 1353 struct unk_F7B60C stru_73C834; // struct @ MM7.exe::0073C834
1354 1354
1355 char *aNPCProfessionNames[59]; 1355 std::array<char *, 59> aNPCProfessionNames;
1356 char *pAwardsTXT_Raw; 1356 char *pAwardsTXT_Raw;
1357 char *pScrollsTXT_Raw; 1357 char *pScrollsTXT_Raw;
1358 char *pMerchantsTXT_Raw; 1358 char *pMerchantsTXT_Raw;
1359 const char *pMerchantsBuyPhrases[7]; 1359 std::array<char *, 7> pMerchantsBuyPhrases;
1360 const char *pMerchantsSellPhrases[7]; 1360 std::array<char *, 7> pMerchantsSellPhrases;
1361 const char *pMerchantsRepairPhrases[7]; 1361 std::array<char *, 7> pMerchantsRepairPhrases;
1362 const char *pMerchantsIdentifyPhrases[7]; 1362 std::array<char *, 7> pMerchantsIdentifyPhrases;
1363 char *pTransitionsTXT_Raw; 1363 char *pTransitionsTXT_Raw;
1364 char *pAutonoteTXT_Raw; 1364 char *pAutonoteTXT_Raw;
1365 char *pQuestsTXT_Raw; 1365 char *pQuestsTXT_Raw;
1366 unsigned int uNumTerrainNormals; 1366 unsigned int uNumTerrainNormals;
1367 struct Vec3_float_ *pTerrainNormals; 1367 struct Vec3_float_ *pTerrainNormals;
1368 unsigned short pTerrainNormalIndices[128 * 128 * 2]; 1368 std::array<unsigned short, 128 * 128 * 2> pTerrainNormalIndices;
1369 unsigned int pTerrainSomeOtherData[128 * 128 * 2]; 1369 std::array<unsigned int, 128 * 128 * 2> pTerrainSomeOtherData;
1370 struct unk_F7B60C stru_76D578; // struct @ MM7.exe::0076D578 1370 struct unk_F7B60C stru_76D578; // struct @ MM7.exe::0076D578
1371 struct unk_F7B60C stru_76D590; // struct @ MM7.exe::0076D590 1371 struct unk_F7B60C stru_76D590; // struct @ MM7.exe::0076D590
1372 struct unk_F7B60C stru_76D5A8; // struct @ MM7.exe::0076D5A8 1372 struct unk_F7B60C stru_76D5A8; // struct @ MM7.exe::0076D5A8
1373 char byte_76D5C0; // weak 1373 char byte_76D5C0; // weak
1374 int terrain_76D5C8[128]; 1374 std::array<int, 128> terrain_76D5C8;
1375 int terrain_76D7C8[128]; 1375 std::array<int, 128> terrain_76D7C8;
1376 int terrain_76D9C8[128]; 1376 std::array<int, 128> terrain_76D9C8;
1377 int terrain_76DBC8[128]; 1377 std::array<int, 128> terrain_76DBC8;
1378 int terrain_76DDC8[128]; 1378 std::array<int, 128> terrain_76DDC8;
1379 int terrain_76DFC8[128]; 1379 std::array<int, 128> terrain_76DFC8;
1380 int terrain_76E1C8[128]; 1380 std::array<int, 128> terrain_76E1C8;
1381 int terrain_76E3C8[128]; 1381 std::array<int, 128> terrain_76E3C8;
1382 1382
1383 _UNKNOWN unk_801A00; // weak 1383 _UNKNOWN unk_801A00; // weak
1384 _UNKNOWN unk_801A0C; // weak 1384 _UNKNOWN unk_801A0C; // weak
1385 char byte_80AA10; // weak 1385 char byte_80AA10; // weak
1386 int dword_80AA14; // weak 1386 int dword_80AA14; // weak
1387 int dword_80AA18; // weak 1387 int dword_80AA18; // weak
1388 int dword_80AA1C; // weak 1388 int dword_80AA1C; // weak
1389 int dword_80AA20; // weak 1389 int dword_80AA20; // weak
1390 unsigned int uNumElementsIn80AA28; 1390 unsigned int uNumElementsIn80AA28;
1391 struct stru148 *ptr_80AA28[2000]; 1391 std::array<struct stru148 *, 2000> ptr_80AA28;
1392 struct Edge *pNewEdges; 1392 struct Edge *pNewEdges;
1393 struct Surf *pSurfs; 1393 struct Surf *pSurfs;
1394 struct Edge *pEdges; 1394 struct Edge *pEdges;
1395 struct Span *pSpans; 1395 struct Span *pSpans;
1396 struct Edge *ptr_80C978_Edges; 1396 struct Edge *ptr_80C978_Edges;
1397 struct Surf *ptr_80C97C_Surfs; 1397 struct Surf *ptr_80C97C_Surfs;
1398 struct Edge *ptr_80CA10[480]; 1398 std::array<struct Edge *, 480> ptr_80CA10;
1399 _UNKNOWN unk_80D190; // weak 1399 _UNKNOWN unk_80D190; // weak
1400 int dword_A74C88; // weak 1400 int dword_A74C88; // weak
1401 unsigned int uPlayerCreationUI_SkySliderPos; 1401 unsigned int uPlayerCreationUI_SkySliderPos;
1402 int uPlayerCreationUI_ArrowAnim; 1402 int uPlayerCreationUI_ArrowAnim;
1403 unsigned int uPlayerCreationUI_SelectedCharacter; 1403 unsigned int uPlayerCreationUI_SelectedCharacter;
1404 int dword_A74CDC; // weak 1404 int dword_A74CDC; // weak
1405 struct Texture *pTexture_PlayerFaceMask; 1405 struct Texture *pTexture_PlayerFaceMask;
1406 struct Texture *pTexture_PlayerFaceEradicated; 1406 struct Texture *pTexture_PlayerFaceEradicated;
1407 struct Texture *pTexture_PlayerFaceDead; 1407 struct Texture *pTexture_PlayerFaceDead;
1408 struct Texture *pTextures_PlayerFaces[4][56]; 1408 std::array< std::array<struct Texture *, 56>, 4> pTextures_PlayerFaces;
1409 struct Player *pPlayers[5]; 1409 std::array<struct Player *, 5> pPlayers;
1410 __int64 qword_A750D8; // weak 1410 __int64 qword_A750D8; // weak
1411 __int16 word_A750E0; // weak 1411 __int16 word_A750E0; // weak
1412 __int16 word_A750E2; // weak 1412 __int16 word_A750E2; // weak
1413 char *pClassNames[36]; 1413 std::array<char *, 36> pClassNames;
1414 char *aCharacterConditionNames[19]; 1414 std::array<char *, 19> aCharacterConditionNames;
1415 char *pSkillNames[38]; 1415 std::array<char *, 38> pSkillNames;
1416 char byte_AE3368[777]; // weak 1416 std::array<char, 777> byte_AE3368; // weak
1417 char byte_AE3369; // weak 1417 char byte_AE3369; // weak
1418 char byte_AE336A; // weak 1418 char byte_AE336A; // weak
1419 char byte_AE336B; // weak 1419 char byte_AE336B; // weak
1420 int dword_AE336C; // weak 1420 int dword_AE336C; // weak
1421 int dword_AE3370; // weak 1421 int dword_AE3370; // weak
1422 char byte_AE5B91; // weak 1422 char byte_AE5B91; // weak
1423 int dword_F1B430[32]; // weak 1423 std::array<int, 32> dword_F1B430; // weak
1424 //int dword_F8B144; // nexindex [-1] to the following 1424 //int dword_F8B144; // nexindex [-1] to the following
1425 int player_levels[4] = {1, 1, 1, 1}; 1425 std::array<int, 4> player_levels = {{1, 1, 1, 1}};
1426 __int16 word_F8B158[777]; // weak 1426 std::array<__int16, 777> word_F8B158; // weak
1427 struct Texture *ShopTexture; // idb 1427 struct Texture *ShopTexture; // idb
1428 struct Texture *ItemsInShopTexture[12]; 1428 std::array<struct Texture *, 12> ItemsInShopTexture;
1429 __int16 word_F8B1A0; // weak 1429 __int16 word_F8B1A0; // weak
1430 const char *dword_F8B1A4; // idb 1430 const char *dword_F8B1A4; // idb
1431 int contract_approved; // weak 1431 int contract_approved; // weak
1432 int dword_F8B1AC_award_bit_number; // idb 1432 int dword_F8B1AC_award_bit_number; // idb
1433 int dword_F8B1B0; // weak 1433 int dword_F8B1B0; // weak
1434 int gold_transaction_amount; // F8B1B4 1434 int gold_transaction_amount; // F8B1B4
1435 char *pShopOptions[4]; 1435 std::array<char *, 4> pShopOptions;
1436 _UNKNOWN unk_F8B1C8; // weak 1436 _UNKNOWN unk_F8B1C8; // weak
1437 int dword_F8B1D8; // weak 1437 int dword_F8B1D8; // weak
1438 int dword_F8B1DC; // weak 1438 int dword_F8B1DC; // weak
1439 int dword_F8B1E0; // weak 1439 int dword_F8B1E0; // weak
1440 int dword_F8B1E4; // weak 1440 int dword_F8B1E4; // weak
1441 const char *current_npc_text; // idb 1441 const char *current_npc_text; // idb
1442 char dialogue_show_profession_details = false; // F8B1EC 1442 char dialogue_show_profession_details = false; // F8B1EC
1443 char byte_F8B1EF[777]; // weak 1443 std::array<char, 777> byte_F8B1EF; // weak
1444 char byte_F8B1F0[4]; 1444 std::array<char, 4> byte_F8B1F0;
1445 int dword_F8B1F4; // weak 1445 int dword_F8B1F4; // weak
1446 1446
1447 1447
1448 1448
1449 //_UNKNOWN unk_F8BA50; // weak 1449 //_UNKNOWN unk_F8BA50; // weak
1450 char byte_F8BC0C; // weak 1450 char byte_F8BC0C; // weak
1451 int bGameoverLoop = 0; // weak 1451 int bGameoverLoop = 0; // weak
1452 __int16 intersect_face_vertex_coords_list_a[104]; // word_F8BC48 1452 std::array<__int16, 104> intersect_face_vertex_coords_list_a; // word_F8BC48
1453 __int16 intersect_face_vertex_coords_list_b[104]; // word_F8BD18 1453 std::array<__int16, 104> intersect_face_vertex_coords_list_b; // word_F8BD18
1454 int dword_F93F20; // weak 1454 int dword_F93F20; // weak
1455 int dword_F93F70; // weak 1455 int dword_F93F70; // weak
1456 1456
1457 volatile bool initing; 1457 volatile bool initing;
1458 1458