| 1061 | } |
| 1062 | |
| 1063 | void CFileManager::LoadIndexFiles() |
| 1064 | { |
| 1065 | Info(Data, "loading indexes"); |
| 1066 | |
| 1067 | auto *LandArtPtr = (ArtIdxBlock *)m_ArtIdx.Start; |
| 1068 | auto *StaticArtPtr = |
| 1069 | (ArtIdxBlock *)((size_t)m_ArtIdx.Start + (g_Data.m_Land.size() * sizeof(ArtIdxBlock))); |
| 1070 | auto *GumpArtPtr = (GumpIdxBlock *)m_GumpIdx.Start; |
| 1071 | auto *TexturePtr = (TexIdxBlock *)m_TextureIdx.Start; |
| 1072 | auto *MultiPtr = (MultiIdxBlock *)m_MultiIdx.Start; |
| 1073 | auto *SoundPtr = (SoundIdxBlock *)m_SoundIdx.Start; |
| 1074 | auto *LightPtr = (LightIdxBlock *)m_LightIdx.Start; |
| 1075 | |
| 1076 | if (m_MultiCollection.Start != nullptr) |
| 1077 | { |
| 1078 | g_Index.m_MultiIndexCount = MAX_MULTI_DATA_INDEX_COUNT; |
| 1079 | } |
| 1080 | else |
| 1081 | { |
| 1082 | g_Index.m_MultiIndexCount = (int)(m_MultiIdx.Size / sizeof(MultiIdxBlock)); |
| 1083 | if (g_Index.m_MultiIndexCount > MAX_MULTI_DATA_INDEX_COUNT) |
| 1084 | { |
| 1085 | g_Index.m_MultiIndexCount = MAX_MULTI_DATA_INDEX_COUNT; |
| 1086 | } |
| 1087 | } |
| 1088 | |
| 1089 | int maxGumpsCount = |
| 1090 | (int)(m_GumpIdx.Start == nullptr ? MAX_GUMP_DATA_INDEX_COUNT : (m_GumpIdx.End - m_GumpIdx.Start) / sizeof(GumpIdxBlock)); |
| 1091 | if (m_ArtMul.Start != nullptr) |
| 1092 | { |
| 1093 | MulReadIndexFile( |
| 1094 | MAX_LAND_DATA_INDEX_COUNT, |
| 1095 | [&](int i) { return &g_Index.m_Land[i]; }, |
| 1096 | (size_t)m_ArtMul.Start, |
| 1097 | LandArtPtr, |
| 1098 | [&LandArtPtr]() { return ++LandArtPtr; }); |
| 1099 | MulReadIndexFile( |
| 1100 | g_Data.m_Static.size(), |
| 1101 | [&](int i) { return &g_Index.m_Static[i]; }, |
| 1102 | (size_t)m_ArtMul.Start, |
| 1103 | StaticArtPtr, |
| 1104 | [&StaticArtPtr]() { return ++StaticArtPtr; }); |
| 1105 | } |
| 1106 | else |
| 1107 | { |
| 1108 | UopReadIndexFile( |
| 1109 | MAX_LAND_DATA_INDEX_COUNT, |
| 1110 | [&](int i) { return &g_Index.m_Land[i]; }, |
| 1111 | "artLegacyMUL", |
| 1112 | 8, |
| 1113 | ".tga", |
| 1114 | m_ArtLegacyMUL); |
| 1115 | UopReadIndexFile( |
| 1116 | g_Data.m_Static.size() + MAX_LAND_DATA_INDEX_COUNT, |
| 1117 | [&](int i) { return &g_Index.m_Static[i - MAX_LAND_DATA_INDEX_COUNT]; }, |
| 1118 | "artLegacyMUL", |
| 1119 | 8, |
| 1120 | ".tga", |
nothing calls this directly
no test coverage detected