@@ -212,29 +212,32 @@ void MainWindow::openMap(const QString &basePath, const int territoryType, const
212212 if (contentFinderCondition != 0 ) {
213213 qInfo () << " This map contains a duty! CF:" << contentFinderCondition;
214214
215- auto cfcExh = physis_exh_parse (m_cache.platform (), m_cache.read (QStringLiteral (" exd/ContentFinderCondition.exh" )));
216- if (cfcExh.p_ptr ) {
217- auto cfcSheet = m_cache.readExcelSheet (QStringLiteral (" ContentFinderCondition" ), &cfcExh, getLanguage ());
215+ const auto buffer = m_cache.read (QStringLiteral (" exd/ContentFinderCondition.exh" ));
216+ if (buffer.size > 0 ) {
217+ const auto cfcExh = physis_exh_parse (m_cache.platform (), buffer);
218+ if (cfcExh.p_ptr ) {
219+ auto cfcSheet = m_cache.readExcelSheet (QStringLiteral (" ContentFinderCondition" ), &cfcExh, getLanguage ());
218220
219- auto cfcRow = physis_excel_get_row (&cfcSheet, contentFinderCondition);
220- auto instanceContentId = cfcRow.columns [3 ].u_int16 ._0 ;
221+ auto cfcRow = physis_excel_get_row (&cfcSheet, contentFinderCondition);
222+ auto instanceContentId = cfcRow.columns [3 ].u_int16 ._0 ;
221223
222- auto instanceContentExh = physis_exh_parse (m_cache.platform (), m_cache.read (QStringLiteral (" exd/InstanceContent.exh" )));
223- auto instanceContentSheet = m_cache.readExcelSheet (QStringLiteral (" InstanceContent" ), &instanceContentExh, Language::None);
224+ auto instanceContentExh = physis_exh_parse (m_cache.platform (), m_cache.read (QStringLiteral (" exd/InstanceContent.exh" )));
225+ auto instanceContentSheet = m_cache.readExcelSheet (QStringLiteral (" InstanceContent" ), &instanceContentExh, Language::None);
224226
225- auto instanceContentRow = physis_excel_get_row (&instanceContentSheet, instanceContentId);
227+ auto instanceContentRow = physis_excel_get_row (&instanceContentSheet, instanceContentId);
226228
227- m_lgbEventRange = instanceContentRow.columns [7 ].u_int32 ._0 ;
229+ m_lgbEventRange = instanceContentRow.columns [7 ].u_int32 ._0 ;
228230
229- auto mapEffectId = instanceContentRow.columns [64 ].u_int16 ._0 ;
231+ auto mapEffectId = instanceContentRow.columns [64 ].u_int16 ._0 ;
230232
231- auto mapEffectExh = physis_exh_parse (m_cache.platform (), m_cache.read (QStringLiteral (" exd/ContentDirectorManagedSG.exh" )));
232- auto mapEffectSheet = m_cache.readExcelSheet (QStringLiteral (" ContentDirectorManagedSG" ), &mapEffectExh, Language::None);
233+ auto mapEffectExh = physis_exh_parse (m_cache.platform (), m_cache.read (QStringLiteral (" exd/ContentDirectorManagedSG.exh" )));
234+ auto mapEffectSheet = m_cache.readExcelSheet (QStringLiteral (" ContentDirectorManagedSG" ), &mapEffectExh, Language::None);
233235
234- auto effectCount = physis_excel_get_subrow_count (&mapEffectSheet, mapEffectId);
235- for (size_t i = 0 ; i < effectCount; i++) {
236- auto effectRow = physis_excel_get_subrow (&mapEffectSheet, mapEffectId, i);
237- m_mapEffects.push_back (effectRow.columns [0 ].int32 ._0 );
236+ auto effectCount = physis_excel_get_subrow_count (&mapEffectSheet, mapEffectId);
237+ for (size_t i = 0 ; i < effectCount; i++) {
238+ auto effectRow = physis_excel_get_subrow (&mapEffectSheet, mapEffectId, i);
239+ m_mapEffects.push_back (effectRow.columns [0 ].int32 ._0 );
240+ }
238241 }
239242 }
240243 }
0 commit comments