Files
zkldi_Tachi/seeds/scripts/rerunners/add-level-version-folders.js
T
zk 593adb2717 feat: Dev Container (#1149)
* temporary dvctr

* start of work

* fix: timeouts in windows

* fish?

* feat: better, working stuff

* refactor: rename database-seeds to seeds/

* better

* fdsaf

* feat: don't let our container get owned by root

* fix: better user handling

* feat: falling asleep at my desk i yield to you what i have done

* feat: autoadminify

* docs: denote trickshot

* feat: open in browser on launch

* better seeds workings...

* fix: dont kill shell

* docs: mention dev/debs

* fix: whoops

* fix: make seeds load within the century

* feat: rest of the containerisation

* feat: new alias

* style: fix linter errors

* fix: bad call

* fix: better justfile
2024-08-17 15:01:40 +01:00

65 lines
1.5 KiB
JavaScript

const { FormatGame } = require("tachi-common");
const { MutateCollection, CreateFolderID } = require("../util");
module.exports = function AddLevelVersionFolders(name, game, playtypes, version, levels) {
const ptFolders = {};
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`,
title: `${FormatGame(game, playtype)} (${name})`,
description: `Levels for ${FormatGame(game, playtype)} in ${name}.`,
folders: ptFolders[playtype].map((e) => e.folderID),
game,
playtype,
inactive: false,
default: false,
});
}
return tables;
});
};
// usage:
// const levels = [];
// for (let i = 1; i <= 12; i++) {
// levels.push(i.toString())
// }
//
// AddLevelVersionFolders("CastHour", "iidx", ["SP", "DP"], "29", levels);