const xmat = getExcel('MaterialExcelConfigData'); const xsource = getExcel('MaterialSourceDataExcelConfigData'); const xcodex = getExcel('AnimalCodexExcelConfigData'); const xdescribe = getExcel('AnimalDescribeExcelConfigData'); const xcapture = getExcel('CaptureExcelConfigData'); // FIX THIS EVERY VERSION const propCOUNTTYPE = "FEBIEOGMDMF"; // AnimalCodexExcelConfigData function collateAnimal(lang) { const language = getLanguage(lang); let mydata = xcodex.reduce((accum, obj) => { if(obj.type === 'CODEX_MONSTER') return accum; if(obj.isDisuse) return accum; let data = {}; data.id = obj.Id; let mydescribe = xdescribe.find(ele => ele.id === obj.describeId); data.name = language[mydescribe.nameTextMapHash]; data.description = sanitizeDescription(language[obj.descTextMapHash]); data.category = language[xmanualtext.find(ele => ele.textMapId === `UI_CODEX_ANIMAL_CATEGORY_${obj.subType.substring(obj.subType.lastIndexOf('_')+1)}`).textMapContentTextMapHash] // data.capturable = xcapture.find(ele => ele.monsterID === obj.Id) ? true : undefined; let counttype = obj[propCOUNTTYPE] || "_NONE"; data.counttype = counttype.substring(counttype.lastIndexOf('_')+1); data.sortorder = obj.SortOrder; data.nameicon = mydescribe.icon; let filename = makeFileName(getLanguage('EN')[mydescribe.nameTextMapHash]); if(filename === '') return accum; if(accum[filename] !== undefined) console.log('filename collision: ' + filename); accum[filename] = data; return accum; }, {}); return mydata; } module.exports = collateAnimal;