Dizzy-AU/code/converter.js
2022-12-06 02:39:40 -06:00

60 lines
2.2 KiB
JavaScript

const fs = require("fs");
var path = process.argv[2]
console.log(path);
var json = JSON.parse(fs.readFileSync(path + "/story/database.json", { encoding: "utf8" }));
var artjson = JSON.parse(fs.readFileSync(path + "/art/data.json", { encoding: "utf8" }));
var fullMd = "";
var indexmd = "# Table Of Contents\n\n";
var artMd = "# Art Of The Dizzy AU\n\nSome art, either by MeowcaTheoRange or other people who like the Dizzy AU. Check it out below!\n\n";
json.forEach((v, i) => {
var mdTemp = `# ${v.scene}\n`;
var chlist = ``;
var chars = {
"---": "---"
};
var funnyTable = [
"|",
"|",
"|"
];
v.appearing_characters.forEach((vv, vi) => {
chars[vv[0]] = vv[1];
mdTemp += `- ${vv[1]}\n`;
chlist += `- ${vv[1]}\n\n`;
});
v.content.forEach((vv, vi) => {
switch (vv.type) {
case "message":
mdTemp += `\n### ${chars[vv.person]}\n`;
vv.content.forEach((vvv, vvi) => {
mdTemp += `\n> ${vvv}\n`;
});
break;
case "break":
mdTemp += `\n -- ${vv.content} --\n`;
break;
}
});
if (json[i - 1]) {
funnyTable[0] += " |";
funnyTable[1] += " --- |";
funnyTable[2] += " [Previous](https://meowcatheorange.github.io/Dizzy-AU/story/human-readable/" + json[i - 1].id + ") |";
}
if (json[i + 1]) {
funnyTable[0] += " |";
funnyTable[1] += " --- |";
funnyTable[2] += " [Next](https://meowcatheorange.github.io/Dizzy-AU/story/human-readable/" + json[i + 1].id + ") |";
}
mdTemp += "\n\n" + funnyTable.join("\n");
fullMd += mdTemp + "\n\n";
fs.writeFileSync(`${path}/story/human-readable/${v.id}.md`, mdTemp, {encoding: "utf8"});
indexmd += "### [" + v.id + "](https://meowcatheorange.github.io/Dizzy-AU/story/human-readable/" + v.id + ")\n\n" + chlist
})
artjson.forEach((v, i) => {
artMd += `## ${v.title}\n${v.description}\n\n![](${v.image})\n\nCredit: \`${v.credit}\`${v.link != undefined ? ` \([${v.linkName}](${v.link})\)` : ""}\n\n`;
})
fs.writeFileSync(`${path}/story/toc.md`, indexmd, {encoding: "utf8"});
fs.writeFileSync(`${path}/story/human-readable.md`, fullMd, {encoding: "utf8"});
fs.writeFileSync(`${path}/art.md`, artMd, {encoding: "utf8"});