Add main script for l.v. folders

This commit is contained in:
zkldi
2021-11-25 08:58:45 +00:00
parent 5b178e63b8
commit d326f24f65
@@ -0,0 +1,65 @@
const { FormatGame } = require("tachi-common");
const { MutateCollection, CreateFolderID } = require("../util");
const ptFolders = {};
module.exports = function AddLevelVersionFolders(name, game, playtypes, version, levels) {
MutateCollection("folders.json", (folders) => {
for (const level of levels) {
const folder = {
title: `Level ${level} (${name})`,
game,
type: "charts",
data: {
level,
versions: version
},
inactive: false,
searchTerms: [],
}
for (const playtype of playtypes) {
const folderID = CreateFolderID(folder.data, folder.game, playtype);
const realFolder = Object.assign({ playtype, folderID }, folder);
if (ptFolders[playtype]) {
ptFolders[playtype].push(realFolder);
} else {
ptFolders[playtype] = [realFolder];
}
folders.push(realFolder);
}
}
return folders;
});
MutateCollection("tables.json", (tables) => {
for (const playtype of playtypes) {
tables.push({
tableID: `${game}-${playtype}-${version}-levels`,
description: `Levels for ${FormatGame(game, playtype)} in ${name}.`,
folders: ptFolders[playtype].map(e => e.folderID),
game,
playtype,
inactive: false,
});
}
return tables;
});
}
// usage:
// const levels = [];
// for (let i = 1; i <= 12; i++) {
// levels.push(i.toString())
// }
//
// addLevelVersionFolders("CastHour", "iidx", ["SP", "DP"], "29", levels);