This commit is contained in:
theBowja 2022-05-29 15:18:47 -04:00
parent f02836b1ce
commit 4c5eddac98
2 changed files with 55 additions and 1 deletions

View File

@ -0,0 +1,53 @@
const xmat = getExcel('MaterialExcelConfigData');
const xsource = getExcel('MaterialSourceDataExcelConfigData');
const xfetter = getExcel('FettersExcelConfigData');
// copied from collateCharacter
const playerIdToTextMapHash = { 10000005: 2329553598, 10000007: 3241049361 };
function collateVoiceover(lang) {
const language = getLanguage(lang);
let mynamecard = xplayableAvatar.reduce((accum, obj) => {
let data = {};
data.Id = obj.Id;
data.name = language[obj.NameTextMapHash];
if(isPlayer(obj)) data.name = language[playerIdToTextMapHash[obj.Id]];
data.story = [];
data.combat = [];
let xvoices = xfetter.filter(ele => ele.AvatarId === obj.Id);
xvoices.forEach(ele => {
let tmp = {
Id: ele.FetterId, // DEBUG
title: language[ele.VoiceTitleTextMapHash],
text: sanitizeDescription(language[ele.VoiceFileTextTextMapHash]),
unlock: ele.Tips.map(e => language[e]).filter(e => e !== '') // TextList/JumpList
}
if(tmp.unlock.length === 0) delete tmp.unlock;
if(ele.IsHiden === 1) data.story.push(tmp);
else if(ele.IsHiden === 2) data.combat.push(tmp);
else console.log('unknown voiceover tab: ' + ele.FetterId);
});
// data.description = sanitizeDescription(language[obj.DescTextMapHash]);
// data.sortorder = obj.Id;
// let sauce = xsource.find(ele => ele.Id === obj.Id);
// data.source = sauce.TextList.map(ele => language[ele]).filter(ele => ele !== '');
let filename = makeFileName(getLanguage('EN')[isPlayer(obj) ? playerIdToTextMapHash[obj.Id] : obj.NameTextMapHash]);
if(filename === '') return accum;
if(accum[filename] !== undefined) console.log('filename collision: ' + filename);
accum[filename] = data;
return accum;
}, {});
return mynamecard;
}
module.exports = collateVoiceover;

View File

@ -126,7 +126,7 @@ function exportData(folder, collateFunc, englishonly, skipwrite) {
// exportData('talents', require('./collateTalent.js'));
// exportData('weapons', require('./collateWeapon.js'));
// exportCurve('weapons', 'WeaponCurveExcelConfigData')
exportData('artifacts', require('./collateArtifact.js'));
// exportData('artifacts', require('./collateArtifact.js'));
// exportData('foods', require('./collateFood'));
// exportData('materials', require('./collateMaterial'), false); // change: used both TextList/JumpList. temp removed dropdomain/daysofweek
// exportData('domains', require('./collateDomain')); // run twice // remember to add back recommendedelements and disorder and entrypicpath
@ -143,6 +143,7 @@ exportData('artifacts', require('./collateArtifact.js'));
// exportData('achievements', require('./collateAchievement'));
// exportData('achievementgroups', require('./collateAchievementGroup'));
// exportData('commissions', require('./collateCommission'), true);
exportData('voiceovers', require('./collateVoiceover'), true);
// // exportData('fishingpoints', require('./collateFishingPoint'));