Dizzy-AU/code/converter.js

41 lines
1.6 KiB
JavaScript
Raw Normal View History

2022-05-28 17:22:38 +00:00
const fs = require("fs");
2022-05-28 17:30:22 +00:00
var path = process.argv[2]
console.log(path);
2022-05-28 17:22:38 +00:00
2022-05-28 17:30:22 +00:00
var json = JSON.parse(fs.readFileSync(path + "/story/database.json", { encoding: "utf8" }));
2022-05-30 01:18:57 +00:00
var artjson = JSON.parse(fs.readFileSync(path + "/art/data.json", { encoding: "utf8" }));
2022-05-28 19:02:19 +00:00
var fullMd = "";
2022-05-30 01:24:54 +00:00
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";
2022-05-28 17:22:38 +00:00
json.forEach((v, i) => {
var mdTemp = `# ${v.scene}\n`;
var chars = {
"---": "---"
};
v.appearing_characters.forEach((vv, vi) => {
chars[vv[0]] = vv[1];
mdTemp += `- ${vv[1]}\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;
}
});
2022-05-28 19:02:19 +00:00
fullMd += mdTemp + "\n\n";
2022-05-28 17:30:22 +00:00
fs.writeFileSync(`${path}/story/human-readable/${v.id}.md`, mdTemp, {encoding: "utf8"});
2022-05-28 17:22:38 +00:00
})
2022-05-30 01:18:57 +00:00
artjson.forEach((v, i) => {
2022-05-30 01:24:54 +00:00
artMd += `## ${v.title}\n${v.description}\n\n![](${v.image})\n\nCredit: \`${v.credit}\`${v.link != undefined ? ` \([${v.linkName}](${v.link})\)` : ""}\n\n`;
2022-05-30 01:18:57 +00:00
})
2022-05-28 19:02:19 +00:00
fs.writeFileSync(`${path}/story/human-readable.md`, fullMd, {encoding: "utf8"});
2022-05-30 01:18:57 +00:00
fs.writeFileSync(`${path}/art.md`, artMd, {encoding: "utf8"});
2022-05-28 19:55:57 +00:00
fs.writeFileSync(`${path}/index.md`, "# The full, unbroken story of the Dizzy AU.\n[See it on GitHub Pages.](https://meowcatheorange.github.io/Dizzy-AU/index)\n\n" + fullMd, {encoding: "utf8"});