Mercurial > mm7
diff mm7_data.h @ 1231:182b910c528d
Слияние
author | Ritor1 |
---|---|
date | Sun, 09 Jun 2013 10:18:51 +0600 |
parents | ac1b79c498a8 8c02e6f74b29 |
children | be76a797780e |
line wrap: on
line diff
--- a/mm7_data.h Sun Jun 09 10:16:10 2013 +0600 +++ b/mm7_data.h Sun Jun 09 10:18:51 2013 +0600 @@ -2,7 +2,7 @@ #include <string> #include "VectorTypes.h" #include "OSAPI.h" - +#include <array> typedef char _UNKNOWN; @@ -309,7 +309,7 @@ extern int (__stdcall *off_4DAFDC)(char); // weak extern char asc_4DB724[]; // idb extern int dword_4DBD94; // weak -extern int dword_4DF380[]; // weak +extern std::array<int, 5> dword_4DF380; // weak extern int dword_4DF390; // weak extern char Str2[]; // idb @@ -334,18 +334,18 @@ extern char aIcons[]; // idb extern char aPending[]; // idb extern char aCanTFindS[]; // idb -extern char *spellbook_texture_filename_suffices[]; // weak +extern std::array<char *, 9> spellbook_texture_filename_suffices; // weak extern __int16 word_4E1D3A[]; // weak -extern __int16 pTownPortalBook_xs[6]; -extern __int16 pTownPortalBook_ys[6]; -extern __int16 pTownPortalBook_ws[6]; -extern __int16 pTownPortalBook_hs[6]; -extern unsigned char pSpellbookSpellIndices[9][12]; // 4E2430 -extern unsigned int pLloydsBeaconsPreviewXs[5]; // 004E249C -extern unsigned int pLloydsBeaconsPreviewYs[5]; -extern unsigned int pLloydsBeacons_SomeXs[5]; -extern unsigned int pLloydsBeacons_SomeYs[5]; // idb -extern char aSbwb00[7]; // weak +extern std::array<__int16, 6> pTownPortalBook_xs; +extern std::array<__int16, 6> pTownPortalBook_ys; +extern std::array<__int16, 6> pTownPortalBook_ws; +extern std::array<__int16, 6> pTownPortalBook_hs; +extern std::array<std::array<unsigned char, 12>, 9> pSpellbookSpellIndices; // 4E2430 from pSpellbookSpellIndices[9][12] +extern std::array<unsigned int, 5> pLloydsBeaconsPreviewXs; // 004E249C +extern std::array<unsigned int, 5> pLloydsBeaconsPreviewYs; +extern std::array<unsigned int, 5> pLloydsBeacons_SomeXs; +extern std::array<unsigned int, 5> pLloydsBeacons_SomeYs; // idb +extern std::array<char, 7> aSbwb00; // weak extern char aW[2]; // idb extern char aA[2]; // idb extern char aSD[]; // idb @@ -424,18 +424,18 @@ extern char aS100110D02dSS[]; // idb extern int pCurrentScreen; // 004E28F8 extern unsigned int uGammaPos; -extern int BtnTurnCoord[8]; -extern __int16 RightClickPortraitXmin[4]; -extern __int16 RightClickPortraitXmax[4]; +extern std::array<int, 8> BtnTurnCoord; +extern std::array<__int16, 4> RightClickPortraitXmin; +extern std::array<__int16, 4> RightClickPortraitXmax; extern void *off_4E2A12; // weak //extern int pArmorSkills[5]; //extern int pWeaponSkills[9]; //extern int pMiscSkills[12]; //extern int pMagicSkills[9]; -extern unsigned int pHealthBarPos[4]; -extern unsigned int pManaBarPos[4]; -extern char _4E2B21_buff_spell_tooltip_colors[80]; -extern unsigned char monster_popup_y_offsets[]; // weak +extern std::array<unsigned int, 4> pHealthBarPos; +extern std::array<unsigned int, 4> pManaBarPos; +extern std::array<char, 80> _4E2B21_buff_spell_tooltip_colors; +extern std::array<unsigned char, 88> monster_popup_y_offsets; // weak extern unsigned char hourglass_icon_idx; // weak @@ -446,96 +446,96 @@ extern const char *format_4E2E10; // format text of resistance in Stats screen extern __int16 word_4E3C66[]; // idb extern int dword_4E455C; // weak -extern int dword_4E4560[6]; -extern int dword_4E4578[6]; -extern int dword_4E4590[6]; -extern int dword_4E45A8[6]; +extern std::array<int, 6> dword_4E4560; +extern std::array<int, 6> dword_4E4578; +extern std::array<int, 6> dword_4E4590; +extern std::array<int, 6> dword_4E45A8; extern _UNKNOWN dword_4E49D4; // idb extern int dword_4E4A18[]; // weak extern int dword_4E4A1C[]; // weak extern int dword_4E4A40[]; // weak extern int dword_4E4A44[]; // weak -extern float flt_4E4A80[10]; +extern std::array<float, 10> flt_4E4A80; -extern int pPartySpellbuffsUI_XYs[14][2]; -extern unsigned char byte_4E5DD8[]; // weak -extern unsigned __int8 pPartySpellbuffsUI_smthns[14]; -extern int pNPCPortraits_x[6][6]; // 004E5E50 -extern int pNPCPortraits_y[6][6]; // 004E5EE0 -extern const char *pHouse_ExitPictures[11]; -extern const char *_4E6BDC_loc_names[11]; +extern std::array< std::array<int, 2>, 14> pPartySpellbuffsUI_XYs; +extern std::array<unsigned char, 14> byte_4E5DD8; // weak +extern std::array<unsigned __int8, 14> pPartySpellbuffsUI_smthns; +extern std::array< std::array<int, 6>, 6> pNPCPortraits_x; // 004E5E50 +extern std::array< std::array<int, 6>, 6> pNPCPortraits_y; // 004E5EE0 +extern std::array<const char *, 11> pHouse_ExitPictures; +extern std::array<const char *, 11> _4E6BDC_loc_names; extern int bWinNT4_0; // weak -extern __int16 word_4E8152[11]; -extern char byte_4E8168[7][14]; +extern std::array<__int16, 11> word_4E8152; +extern std::array< std::array<char, 14>, 7> byte_4E8168; #include "Texture.h" extern stru355 stru_4E82A4;// = {0x20, 0x41, 0, 0x20, 0xFF0000, 0xFF00, 0xFF, 0xFF000000}; extern stru355 stru_4EFCBC;// = {0x20, 0x41, 0, 0x10, 0x7C00, 0x3E0, 0x1F, 0x8000}; extern char byte_4E94D0; // weak extern char _4E94D2_light_type; // weak extern char byte_4E94D3; // weak -extern unsigned int saveload_dlg_xs[2]; -extern unsigned int saveload_dlg_ys[2]; -extern unsigned int saveload_dlg_zs[2]; -extern unsigned int saveload_dlg_ws[2]; +extern std::array<unsigned int, 2> saveload_dlg_xs; +extern std::array<unsigned int, 2> saveload_dlg_ys; +extern std::array<unsigned int, 2> saveload_dlg_zs; +extern std::array<unsigned int, 2> saveload_dlg_ws; extern int dword_4E98BC_bApplicationActive; // weak -extern char *pTransitionStrings[]; // 4EB080 -extern int dword_4EC268[]; // weak -extern int dword_4EC28C[]; // weak +extern std::array<char*, 465> pTransitionStrings; // 4EB080 +extern std::array<int, 9> dword_4EC268; // weak +extern std::array<int, 7> dword_4EC28C; // weak extern int dword_4EC2A8; // weak extern int dword_4EC2AC; // weak -extern const char *pPlayerPortraitsNames[25]; +extern std::array<const char*, 25> pPlayerPortraitsNames; -extern unsigned char byte_4ECF08[48][25]; +extern std::array< std::array<unsigned char, 25>, 48> byte_4ECF08; extern unsigned char SoundSetAction[110][8]; // weak -extern __int16 pPlayerPortraitsXCoords_For_PlayerBuffAnimsDrawing[4]; -extern char byte_4ED970_skill_learn_ability_by_class_table[36][37]; -extern int dword_4EDEA0[]; // weak -extern int dword_4EDEB4[]; // weak -extern int dword_4EDEC4[]; // weak +extern std::array<__int16, 4> pPlayerPortraitsXCoords_For_PlayerBuffAnimsDrawing; +extern std::array< std::array<char, 37>, 36> byte_4ED970_skill_learn_ability_by_class_table; +extern std::array<int, 777> dword_4EDEA0; // weak +extern std::array<int, 777> dword_4EDEB4; // weak +extern std::array<int, 777> dword_4EDEC4; // weak extern _UNKNOWN unk_4EDF40; // weak -extern unsigned int pHiredNPCsIconsOffsetsX[2]; -extern unsigned int pHiredNPCsIconsOffsetsY[2]; -extern int dword_4EE07C[2]; // weak +extern std::array<unsigned int, 2> pHiredNPCsIconsOffsetsX; +extern std::array<unsigned int, 2> pHiredNPCsIconsOffsetsY; +extern std::array<int, 2> dword_4EE07C; // weak extern _UNKNOWN unk_4EE084; // weak -extern __int16 word_4EE088_sound_ids[]; // weak -extern short word_4EE150[]; +extern std::array<__int16, 100> word_4EE088_sound_ids; // weak +extern std::array<short, 28> word_4EE150; extern int dword_4EED78; // weak extern _UNKNOWN unk_4EED80; // weak extern int dword_4EFA80; // weak extern int dword_4EFA84; // weak extern void *off_4EFDB0; // weak extern int dword_4F031C[]; // weak -extern const char *off_4F03B8[]; // idb +extern std::array<const char *, 19> off_4F03B8; // idb extern __int16 word_4F0576[]; // weak -extern int guild_mambership_flags[32]; -extern __int16 word_4F0754[49]; -extern __int16 _4F0882_evt_VAR_PlayerItemInHands_vals[54]; -extern unsigned short pMaxLevelPerTrainingHallType[]; -extern int price_for_membership[]; // weak -extern Vec2_int_ pMonsterArenaPlacements[20]; -extern __int16 word_4F0F30[32]; // weak +extern std::array<int, 32> guild_mambership_flags; +extern std::array<__int16, 49> word_4F0754; +extern std::array<__int16, 54> _4F0882_evt_VAR_PlayerItemInHands_vals; +extern std::array<unsigned short, 6> pMaxLevelPerTrainingHallType; +extern std::array<int, 11> price_for_membership; // weak +extern std::array<Vec2_int_, 20> pMonsterArenaPlacements; +extern std::array<__int16, 32> word_4F0F30; // weak extern double dbl_4F2870; // weak extern int dword_4F288C; // weak extern double dbl_4F5372; // weak extern int dword_4F5428[]; // weak extern int dword_4F542C[]; // weak extern _UNKNOWN crtunk_4F54B8; // weak -extern int dword_4F5B24_ys[]; // idb -extern int dword_4F5BF4_xs[]; // idb -extern int dword_4F5CC4_ys[]; // idb -extern int dword_4F5D98_xs[]; // idb -extern int ai_array_4F5E68[500]; -extern int ai_array_4F6638_actor_ids[500]; -extern int ai_near_actors_targets_pid[500]; +extern std::array<int, 777> dword_4F5B24_ys; // idb +extern std::array<int, 777> dword_4F5BF4_xs; // idb +extern std::array<int, 777> dword_4F5CC4_ys; // idb +extern std::array<int, 777> dword_4F5D98_xs; // idb +extern std::array<int, 500> ai_array_4F5E68; +extern std::array<int, 500> ai_array_4F6638_actor_ids; +extern std::array<int, 500> ai_near_actors_targets_pid; extern int ai_arrays_size; // weak -extern int ai_near_actors_distances[500]; -extern unsigned int ai_near_actors_ids[500]; -extern int dword_4F8580[]; // weak +extern std::array<int, 500> ai_near_actors_distances; +extern std::array<unsigned int, 500> ai_near_actors_ids; +extern std::array<int, 121> dword_4F8580; // weak extern int dword_4FA9B0[]; // weak extern int dword_4FA9B4[]; // weak extern char byte_4FAA00; // weak -extern __int16 am_sounds[12]; +extern std::array<__int16, 12> am_sounds; extern _UNKNOWN unk_4FAA20; // weak extern char byte_4FAA24; // weak extern HWND dword_4FAA28; // idb @@ -547,8 +547,8 @@ extern int am_uint_4FAA44_blt_xy[2]; extern int amuint_4FAA4C; // weak extern unsigned int uCardID; // idb -extern int amuint_4FAA54_blt_xy[2]; -extern int amuint_4FAA5C_blt_xy[2]; +extern std::array<int, 2> amuint_4FAA54_blt_xy; +extern std::array<int, 2> amuint_4FAA5C_blt_xy; extern int dword_4FAA64; // weak extern int dword_4FAA68; // weak @@ -557,10 +557,10 @@ extern char am_byte_4FAA75; // weak extern char am_byte_4FAA76; // weak -extern int amuint_4FAA78[777]; // weak +extern std::array<int, 777> amuint_4FAA78; // weak extern char am_byte_4FAA7C[777]; // weak -extern int amuint_4FAA80[777]; // weak -extern int amuint_4FAA84[777]; // weak +extern std::array<int, 777> amuint_4FAA80; // weak +extern std::array<int, 777> amuint_4FAA84; // weak extern int amuint_4FAA88[777]; // weak extern int amuint_4FAA8C[777]; // weak extern int amuint_4FAA90[777][2]; @@ -592,13 +592,11 @@ extern char byte_505880; // weak extern char byte_505881; // weak -extern int amuint_505884; // weak -extern int amuint_505888; // weak -extern int amuint_50588C; // weak + extern int dword_505890; // weak -extern unsigned int pSRZBufferLineOffsets[480]; +extern std::array<unsigned int, 480> pSRZBufferLineOffsets; extern int areWeLoadingTexture; // weak -extern char byte_506130[]; // weak +extern std::array<char, 777> byte_506130; // weak extern int dword_506338; // weak extern int dword_50633C; // idb extern signed int sRecoveryTime; // idb @@ -621,27 +619,27 @@ extern int BtnUp_flag; //BtnUp_flag extern int quick_spell_at_page; // weak extern char byte_506550; // weak -extern char *aMoonPhaseNames[5]; +extern std::array<char *, 5> aMoonPhaseNames; extern int _506568_autonote_type; // 506568 extern char bRecallingBeacon; // weak extern int uLastPointedObjectID; // weak //extern unsigned __int8 bMonsterInfoUI_bDollInitialized; -extern char *aSpellNames[44]; +extern std::array<char *, 44> aSpellNames; extern int pMainScreenNum; // weak extern int dword_506980_uW; // weak extern int dword_506984_uZ; // weak extern int dword_506988_uY; // weak extern int dword_50698C_uX; // weak extern int uGameMenuUI_CurentlySelectedKeyIdx; // 506E68 -extern bool GameMenuUI_InvaligKeyBindingsFlags[28]; // 506E6C -extern unsigned int pPrevVirtualCidesMapping[27]; +extern std::array<bool, 28> GameMenuUI_InvaligKeyBindingsFlags; // 506E6C +extern std::array<unsigned int, 27> pPrevVirtualCidesMapping; extern int KeyboardPageNum; // weak -extern int dword_506F0C[]; // idb +extern std::array<int, 777> dword_506F0C; // idb extern int uRestUI_FoodRequiredToRest; extern int dword_506F14; // weak extern int _506F18_num_hours_to_sleep; // weak extern int dword_506F1C; // weak -extern int pVisibleWindowsIdxs[20]; // weak +extern std::array<int, 20> pVisibleWindowsIdxs; // weak extern int uNumVisibleWindows; extern char bFlashHistoryBook; // weak extern char bFlashAutonotesBook; // weak @@ -661,10 +659,10 @@ extern unsigned int uGameUIFontShadow; extern unsigned int uGameUIFontMain; extern int dword_507B00_spell_info_to_draw_in_popup; // weak -extern char *aMonthNames[12]; -extern char *aDayNames[7]; -extern char *aSpellSchoolNames[9]; -extern char *aAttributeNames[7]; +extern std::array<char *, 12> aMonthNames; +extern std::array<char *, 7> aDayNames; +extern std::array<char *, 9> aSpellSchoolNames; +extern std::array<char *, 7> aAttributeNames; extern int dword_507B94; // weak extern int dword_507B98_ctrl_pressed; // weak extern unsigned int uActiveCharacter; @@ -674,8 +672,8 @@ extern __int64 GameUI_RightPanel_BookFlashTimer; // weak extern int _507CD4_RestUI_hourglass_anim_controller; // weak extern int dword_507CD8; // weak -extern int dword_50B570[]; // weak -extern int dword_50B638[]; // weak +extern std::array<int, 50> dword_50B570; // weak +extern std::array<int, 50> dword_50B638; // weak extern struct stru367 stru_50B700; /*extern int stru_50B700.field_0; // weak extern int stru_50B700.field_38[]; // idb @@ -695,14 +693,14 @@ extern int dword_50BAE8[]; // weak extern int stru_50B700._xs2[]; // weak extern int stru_50B700._xs3[]; // weak*/ -extern int dword_50BC10[]; // weak -extern int dword_50BDA0[]; // weak -extern int dword_50BF30[]; // weak +extern std::array<int, 100> dword_50BC10; // weak +extern std::array<int, 100> dword_50BDA0; // weak +extern std::array<int, 100> dword_50BF30; // weak extern char town_portal_caster_id; // weak extern int some_active_character; // weak extern _UNKNOWN unk_50C190; // weak extern int dword_50C968; // weak -extern unsigned int pIconIDs_Turn[5]; +extern std::array<unsigned int, 5> pIconIDs_Turn; extern unsigned int uIconID_TurnStop; extern unsigned int uIconID_TurnHour; extern int uIconID_CharacterFrame; // idb @@ -724,19 +722,19 @@ extern int dword_50CDCC; // weak extern int bProcessorIsNotIntel; // weak extern Vec3_int_ layingitem_vel_50FDFC; -extern char pStartingMapName[]; // idb -extern unsigned __int8 IsPlayerWearingWatersuit[5]; -extern char party_has_equipment[54]; -extern char byte_5111F6[]; -extern unsigned int papredoll_dbrds[16]; +extern std::array<char, 777> pStartingMapName; // idb +extern std::array<unsigned __int8, 5> IsPlayerWearingWatersuit; +extern std::array<char, 54> party_has_equipment; +extern std::array<char, 16> byte_5111F6; +extern std::array<unsigned int, 16> papredoll_dbrds; extern int bRingsShownInCharScreen; // weak extern int _unused000; // weak -extern unsigned __int16 pOdmMinimap[117][137]; +extern std::array<std::array<unsigned __int16, 137>, 117> pOdmMinimap; extern unsigned int uNumBlueFacesInBLVMinimap; -extern unsigned __int16 pBlueFacesInBLVMinimapIDs[50]; -extern int pTextureIDs_PartyBuffIcons[14]; +extern std::array<unsigned __int16, 50> pBlueFacesInBLVMinimapIDs; +extern std::array<int, 14> pTextureIDs_PartyBuffIcons; extern unsigned int uIconIdx_FlySpell; extern unsigned int uIconIdx_WaterWalk; extern int dword_576E28; // weak @@ -750,7 +748,7 @@ extern unsigned int uDialogueType; extern signed int sDialogue_SpeakingActorNPC_ID; extern struct LevelDecoration *_591094_decoration; -extern char sHouseName[200]; // idb +extern std::array<char, 200> sHouseName; // idb extern int uCurrentHouse_Animation; // weak extern char *dword_591164_teleport_map_name; // idb extern int dword_591168_teleport_speedz; // weak @@ -759,14 +757,14 @@ extern int dword_591174_teleportz; // weak extern int dword_591178_teleporty; // weak extern int dword_59117C_teleportx; // weak -extern char byte_591180[6][100]; // idb -extern struct NPCData *HouseNPCData[60]; +extern std::array<std::array<char, 100>, 6> byte_591180; // idb +extern std::array<struct NPCData *, 60> HouseNPCData; //this array size temporarily increased to 60 from 6 to work aroud house overflow extern struct Texture *pTexture_591428; extern struct Texture *pTexture_outside; // idb extern struct Texture *pTexture_Dialogue_Background; extern _UNKNOWN unk_597F10; // weak -extern char byte_5B0938[2000]; +extern std::array<char, 2000> byte_5B0938; extern int EvtTargetObj; // weak extern int _unused_5B5924_is_travel_ui_drawn; // 005B5924 extern int _5B65A8_npcdata_uflags_or_other; // weak @@ -783,9 +781,9 @@ extern int dword_5C3418; // weak extern int dword_5C341C; // weak extern int _5C3420_pDecoration; -extern char byte_5C3427[]; // weak -extern char GameUI_Footer_TimedString[200]; -extern char pFooterString[200]; +extern std::array<char, 777> byte_5C3427; // weak +extern std::array<char, 200> GameUI_Footer_TimedString; +extern std::array<char, 200> pFooterString; extern unsigned int GameUI_Footer_TimeLeft; extern int bForceDrawFooter; // weak extern int dword_5C35C0; // weak @@ -794,24 +792,24 @@ extern char *p2DEventsTXT_Raw; extern int dword_5C35D4; // weak -extern char *aAMPMNames[2]; +extern std::array<char *, 2> aAMPMNames; extern char byte_5C45AF[]; // weak -extern char pTmpBuf3[]; -extern char pFinalMessage[4096]; // idb -extern char pTmpBuf[2000]; -extern char pTmpBuf2[2000]; -extern char byte_5C6D50[]; // weak +extern std::array<char, 10000> pTmpBuf3; +extern std::array<char, 4096> pFinalMessage; // idb +extern std::array<char, 2000> pTmpBuf; +extern std::array<char, 2000> pTmpBuf2; +extern std::array<char, 100> byte_5C6D50; // weak extern int ui_current_text_color; // weak extern __int64 qword_5C6DF0; // weak extern int dword_5C6DF8; // weak -extern char item__getname_buffer[104]; // idb -extern char *pClassDescriptions[36]; -extern char *pAttributeDescriptions[7]; -extern char *pGrandSkillDesc[38]; -extern char *pMasterSkillDesc[38]; -extern char *pExpertSkillDesc[38]; -extern char *pNormalSkillDesc[38]; -extern char *pSkillDesc[38]; +extern std::array<char, 104> item__getname_buffer; // idb +extern std::array<char *, 36> pClassDescriptions; +extern std::array<char *, 7> pAttributeDescriptions; +extern std::array<char *, 38> pGrandSkillDesc; +extern std::array<char *, 38> pMasterSkillDesc; +extern std::array<char *, 38> pExpertSkillDesc; +extern std::array<char *, 38> pNormalSkillDesc; +extern std::array<char *, 38> pSkillDesc; extern char *pHealthPointsAttributeDescription; extern char *pSpellPointsAttributeDescription; extern char *pArmourClassAttributeDescription; @@ -835,10 +833,10 @@ extern char *pStatsTXT_Raw; extern char *pSkillDescTXT_Raw; extern struct FactionTable *pFactionTable; -extern char byte_5C8D1A[]; // weak +extern std::array<char, 777> byte_5C8D1A; // weak -extern char byte_5E4C15[]; // weak -extern char *pSomeItemsNames[14]; +extern std::array<char, 777> byte_5E4C15; // weak +extern std::array<char *, 14> pSomeItemsNames; extern char *pMonstersTXT_Raw; extern char *pMonsterPlacementTXT_Raw; @@ -848,11 +846,11 @@ extern char *pPotionsTXT_Raw; extern char *pPotionNotesTXT_Raw; -extern int _6807B8_level_decorations_ids[]; // idb +extern std::array<int, 777> _6807B8_level_decorations_ids; // idb extern int _6807E0_num_decorations_with_sounds_6807B8; // weak -extern int _6807E8_level_decorations_ids[]; // idb +extern std::array<int, 777> _6807E8_level_decorations_ids; // idb extern int _6836C8_num_decorations_6807E8; // weak -extern int dword_69B010[64]; +extern std::array<int, 64> dword_69B010; extern float flt_69B138_dist; // weak extern char byte_69BD41_unused; // weak extern unsigned int uTextureID_x_u; @@ -886,7 +884,7 @@ extern int texmapping_terrain_subdivpow2; // weak extern int texmapping_building_subdivsize; // weak extern int texmapping_building_subdivpow2; // weak -extern int unnamed_6BE060[2]; +extern std::array<int, 2> unnamed_6BE060; extern int mipmapping_building_mm1; // weak extern int mipmapping_building_mm2; // weak extern int mipmapping_building_mm3; // weak @@ -908,8 +906,8 @@ extern char outdoor_night_bottom_r; // weak extern char outdoor_night_bottom_g; // weak extern char outdoor_night_bottom_b; // weak -extern char pDefaultSkyTexture[]; // idb -extern char byte_6BE124_cfg_textures_DefaultGroundTexture[16]; // idb +extern std::array<char, 777> pDefaultSkyTexture; // idb +extern std::array<char, 16> byte_6BE124_cfg_textures_DefaultGroundTexture; // idb extern int _6BE134_odm_main_tile_group; // weak extern int dword_6BE138; // weak extern int dword_6BE13C_uCurrentlyLoadedLocationID; // weak @@ -928,7 +926,7 @@ extern LONG uWindowStyle; // idb extern HMENU hOSMenu; // idb extern int dword_6BE340; // weak -extern char pCurrentMapName[20]; // idb +extern std::array<char, 20> pCurrentMapName; // idb extern unsigned int uLevelMapStatsID; extern int dword_6BE364_game_settings_1; // weak extern int dword_6BE368_debug_settings_2; // weak @@ -945,7 +943,7 @@ extern float flt_6BE3A4_debug_recmod1; extern float flt_6BE3A8_debug_recmod2; extern float flt_6BE3AC_debug_recmod1_x_1_6; -extern char byte_6BE3B0[20]; // idb +extern std::array<char, 20> byte_6BE3B0; // idb extern char bUnderwater; // weak extern char bNoNPCHiring; // weak extern int _702AC0_unused; // weak @@ -958,69 +956,69 @@ extern bool bNoCD; extern bool bNoSound; extern int aborting_app; // weak -extern int dword_720020_zvalues[100]; -extern int dword_7201B0_zvalues[299]; +extern std::array<int, 100> dword_720020_zvalues; +extern std::array<int, 299> dword_7201B0_zvalues; extern int dword_7207F0[]; // idb extern int uTextureID_720980; // weak extern int _720984_unused; // weak extern char _72098C_unused; // weak -extern __int16 word_7209A0_intercepts_ys_plus_ys[104]; -extern __int16 word_720A70_intercepts_xs_plus_xs[104]; -extern __int16 word_720B40_intercepts_zs[104]; -extern __int16 word_720C10_intercepts_xs[102]; +extern std::array<__int16, 104> word_7209A0_intercepts_ys_plus_ys; +extern std::array<__int16, 104> word_720A70_intercepts_xs_plus_xs; +extern std::array<__int16, 104> word_720B40_intercepts_zs; +extern std::array<__int16, 102> word_720C10_intercepts_xs; extern int dword_720CDC; -extern __int16 word_720CE0_ys[]; // idb -extern __int16 word_720DB0_xs[]; // idb -extern int dword_720E80[20]; -extern int dword_720ED0[20]; -extern int dword_720F20[20]; -extern __int16 word_720F70[]; // idb -extern __int16 word_721040[]; // idb -extern int dword_721110[]; // idb -extern int dword_721160[]; // idb -extern int odm_floor_level[20]; // idb dword_7211B0 +extern std::array<__int16, 777> word_720CE0_ys; // idb +extern std::array<__int16, 777> word_720DB0_xs; // idb +extern std::array<int, 20> dword_720E80; +extern std::array<int, 20> dword_720ED0; +extern std::array<int, 20> dword_720F20; +extern std::array<__int16, 777> word_720F70; // idb +extern std::array<__int16, 777> word_721040; // idb +extern std::array<int, 777> dword_721110; // idb +extern std::array<int, 777> dword_721160; // idb +extern std::array<int, 20> odm_floor_level; // idb dword_7211B0 extern int blv_prev_party_x; // weak extern int blv_prev_party_z; // weak extern int blv_prev_party_y; // weak extern char *dword_721660; // idb extern char *dword_721664; // idb extern char *dword_722F10; // idb -extern const char *pQuestTable[512]; +extern std::array<const char *, 512> pQuestTable; extern _UNKNOWN unk_723714; // weak extern char *dword_723718_autonote_related; // idb extern int dword_72371C[]; // weak -extern const char *pScrolls[82]; +extern std::array<const char *, 82> pScrolls; extern int dword_723E80_award_related[]; // weak extern int dword_723E84[]; // weak extern int dword_7241C8; // weak -extern char *aNPCProfessionNames[59]; +extern std::array<char *, 59> aNPCProfessionNames; extern char *pAwardsTXT_Raw; extern char *pScrollsTXT_Raw; extern char *pMerchantsTXT_Raw; -extern const char *pMerchantsBuyPhrases[7]; -extern const char *pMerchantsSellPhrases[7]; -extern const char *pMerchantsRepairPhrases[7]; -extern const char *pMerchantsIdentifyPhrases[7]; +extern std::array<char *, 7> pMerchantsBuyPhrases; +extern std::array<char *, 7> pMerchantsSellPhrases; +extern std::array<char *, 7> pMerchantsRepairPhrases; +extern std::array<char *, 7> pMerchantsIdentifyPhrases; extern char *pTransitionsTXT_Raw; extern char *pAutonoteTXT_Raw; extern char *pQuestsTXT_Raw; extern unsigned int uNumTerrainNormals; extern struct Vec3_float_ *pTerrainNormals; -extern unsigned short pTerrainNormalIndices[128 * 128 * 2]; -extern unsigned int pTerrainSomeOtherData[128 * 128 * 2]; +extern std::array<unsigned short, 128 * 128 * 2> pTerrainNormalIndices; +extern std::array<unsigned int, 128 * 128 * 2> pTerrainSomeOtherData; extern char byte_76D5C0; extern struct unk_F7B60C stru_76D578; extern struct unk_F7B60C stru_76D590; extern struct unk_F7B60C stru_76D5A8; -extern int terrain_76D5C8[128]; -extern int terrain_76D7C8[128]; -extern int terrain_76D9C8[128]; -extern int terrain_76DBC8[128]; -extern int terrain_76DDC8[128]; -extern int terrain_76DFC8[128]; -extern int terrain_76E1C8[128]; -extern int terrain_76E3C8[128]; +extern std::array<int, 128> terrain_76D5C8; +extern std::array<int, 128> terrain_76D7C8; +extern std::array<int, 128> terrain_76D9C8; +extern std::array<int, 128> terrain_76DBC8; +extern std::array<int, 128> terrain_76DDC8; +extern std::array<int, 128> terrain_76DFC8; +extern std::array<int, 128> terrain_76E1C8; +extern std::array<int, 128> terrain_76E3C8; struct unk_F7B60C { int some_data_ptr; // dword @ 000000 @@ -1039,14 +1037,14 @@ extern int dword_80AA1C; // weak extern int dword_80AA20; // weak extern unsigned int uNumElementsIn80AA28; -extern struct stru148 *ptr_80AA28[]; +extern std::array<struct stru148 *, 2000> ptr_80AA28; extern struct Edge *pNewEdges; extern struct Surf *pSurfs; extern struct Edge *pEdges; extern struct Span *pSpans; extern struct Edge *ptr_80C978_Edges; extern struct Surf *ptr_80C97C_Surfs; -extern struct Edge *ptr_80CA10[480]; +extern std::array<struct Edge *, 480> ptr_80CA10; extern _UNKNOWN unk_80D190; // weak extern int dword_A74C88; // weak extern unsigned int uPlayerCreationUI_SkySliderPos; @@ -1056,34 +1054,34 @@ extern struct Texture *pTexture_PlayerFaceMask; extern struct Texture *pTexture_PlayerFaceEradicated; extern struct Texture *pTexture_PlayerFaceDead; -extern struct Texture *pTextures_PlayerFaces[4][56]; +extern std::array< std::array<struct Texture *, 56>, 4> pTextures_PlayerFaces; extern int dword_A75070; // weak -extern struct Player *pPlayers[5]; +extern std::array<struct Player *, 5> pPlayers; extern __int64 qword_A750D8; // weak extern __int16 word_A750E0; // weak extern __int16 word_A750E2; // weak -extern char *pClassNames[36]; -extern char *aCharacterConditionNames[19]; -extern char *pSkillNames[38]; -extern char byte_AE3368[]; // weak +extern std::array<char *, 36> pClassNames; +extern std::array<char *, 19> aCharacterConditionNames; +extern std::array<char *, 38> pSkillNames; +extern std::array<char, 777> byte_AE3368; // weak extern char byte_AE3369; // weak extern char byte_AE336A; // weak extern char byte_AE336B; // weak extern int dword_AE336C; // weak extern int dword_AE3370; // weak extern char byte_AE5B91; // weak -extern int dword_F1B430[32]; // weak -extern int player_levels[4]; -extern __int16 word_F8B158[]; // weak +extern std::array<int, 32> dword_F1B430; // weak +extern std::array<int, 4> player_levels; +extern std::array<__int16, 777> word_F8B158; // weak extern struct Texture *ShopTexture; // idb -extern struct Texture *ItemsInShopTexture[12]; +extern std::array<struct Texture *, 12> ItemsInShopTexture; extern __int16 word_F8B1A0; // weak extern const char *dword_F8B1A4; // idb extern int contract_approved; // weak extern int dword_F8B1AC_award_bit_number; // idb extern int dword_F8B1B0; // weak extern int gold_transaction_amount; // F8B1B4 -extern char *pShopOptions[4]; +extern std::array<char *, 4> pShopOptions; extern _UNKNOWN unk_F8B1C8; // weak extern int dword_F8B1D8; // weak extern int dword_F8B1DC; // weak @@ -1091,8 +1089,8 @@ extern int dword_F8B1E4; // weak extern const char *current_npc_text; // 0xF8B1E8 extern char dialogue_show_profession_details; // weak -extern char byte_F8B1EF[]; // weak -extern char byte_F8B1F0[4]; +extern std::array<char, 777> byte_F8B1EF; // weak +extern std::array<char, 4> byte_F8B1F0; extern int dword_F8B1F4; // weak @@ -1101,8 +1099,8 @@ //extern _UNKNOWN unk_F8BA50; // weak extern char byte_F8BC0C; // weak extern int bGameoverLoop; // weak -extern __int16 intersect_face_vertex_coords_list_a[]; // word_F8BC48 -extern __int16 intersect_face_vertex_coords_list_b[]; // word_F8BD18 +extern std::array<__int16, 104> intersect_face_vertex_coords_list_a; // word_F8BC48 +extern std::array<__int16, 104> intersect_face_vertex_coords_list_b; // word_F8BD18 //extern _UNKNOWN unk_F8EA04; // weak //extern _UNKNOWN unk_F8F8F8; // weak extern int dword_F93F20; // weak @@ -1155,7 +1153,7 @@ unsigned int __fastcall SearchActorByMonsterID(unsigned int *pTotalActors, int uMonsterID); unsigned int __fastcall SearchActorByGroup(unsigned int *pTotalActors, unsigned int uGroup); unsigned int __fastcall SearchActorByID(unsigned int *pTotalActors, unsigned int a2); -void __cdecl PrepareArcomage(); +void PrepareArcomage(); // int __cdecl crt_retnull_sub(); unsigned int __stdcall R8G8B8_to_TargetFormat(int uColor); // idb