diff --git a/public/scripts/world-info.js b/public/scripts/world-info.js index 6c4ec8f3c..1c34fdce8 100644 --- a/public/scripts/world-info.js +++ b/public/scripts/world-info.js @@ -902,6 +902,30 @@ function convertAgnaiMemoryBook(inputObj) { return outputObj; } +function convertRisuLorebook(inputObj) { + const outputObj = { entries: {} }; + + inputObj.data.forEach((entry, index) => { + outputObj.entries[index] = { + uid: index, + key: entry.key.split(',').map(x => x.trim()), + keysecondary: entry.secondkey ? entry.secondkey.split(',').map(x => x.trim()) : [], + comment: entry.comment, + content: entry.content, + constant: entry.alwaysActive, + selective: entry.selective, + order: entry.insertorder, + position: world_info_position.before, + disable: false, + addMemo: true, + excludeRecursion: false, + displayIndex: index, + }; + }); + + return outputObj; +} + function convertNovelLorebook(inputObj) { const outputObj = { entries: {} @@ -1055,13 +1079,21 @@ jQuery(() => { // Convert Novel Lorebook if (jsonData.lorebookVersion !== undefined) { + console.log('Converting Novel Lorebook'); formData.append('convertedData', JSON.stringify(convertNovelLorebook(jsonData))); } // Convert Agnai Memory Book if (jsonData.kind === 'memory') { + console.log('Converting Agnai Memory Book'); formData.append('convertedData', JSON.stringify(convertAgnaiMemoryBook(jsonData))); } + + // Convert Risu Lorebook + if (jsonData.type === 'risu') { + console.log('Converting Risu Lorebook'); + formData.append('convertedData', JSON.stringify(convertRisuLorebook(jsonData))); + } } catch (error) { toastr.error(`Error parsing file: ${error}`); return;