Hustler-Pixelwelt T13: Import bricht ohne pixelwelt-woms ab, statt die grauen Raum-Ebenen zu löschen (--ohne-woms für den bewussten Fall)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
ba007a325a
commit
ebab573803
2 files changed
+21
-9
No files matched your search
@@ -919,17 +919,25 @@ export function schreibe(plan, wurzel = REPO) {
|
||||
const mb = (b) => `${(b / 1024 / 1024).toFixed(2).replace('.', ',')} MB`
|
||||
|
||||
export async function main(argumente) {
|
||||
if (argumente.includes('--help') || argumente.includes('-h') || argumente.length < 1 || argumente.length > 2) {
|
||||
console.log('Aufruf: node scripts/hustler-import.mjs <pfad-zu-pixelwelt-v2> [<pfad-zu-pixelwelt-woms>]')
|
||||
return argumente.length >= 1 && argumente.length <= 2 ? 0 : 2
|
||||
// --ohne-woms: bewusst nur mit pixelwelt-v2 arbeiten (entfernt vorhandene graue Raum-Ebenen und setzt das Haus auf v2 zurück)
|
||||
const ohneWoms = argumente.includes('--ohne-woms')
|
||||
const pfade = argumente.filter((a) => a !== '--ohne-woms')
|
||||
if (pfade.includes('--help') || pfade.includes('-h') || pfade.length < 1 || pfade.length > 2) {
|
||||
console.log('Aufruf: node scripts/hustler-import.mjs <pfad-zu-pixelwelt-v2> <pfad-zu-pixelwelt-woms> (oder bewusst ohne zweiten Ordner: --ohne-woms)')
|
||||
return pfade.length >= 1 && pfade.length <= 2 ? 0 : 2
|
||||
}
|
||||
const v2 = path.resolve(argumente[0])
|
||||
let woms = argumente[1] ? path.resolve(argumente[1]) : null
|
||||
const v2 = path.resolve(pfade[0])
|
||||
let woms = pfade[1] ? path.resolve(pfade[1]) : null
|
||||
const hinweise = []
|
||||
if (woms && !existsSync(woms)) {
|
||||
hinweise.push(`Hinweis: Der Ordner ${woms} gibt es noch nicht; es wird nur mit pixelwelt-v2 gearbeitet.`)
|
||||
woms = null
|
||||
if (woms && !existsSync(woms)) woms = null
|
||||
// Ohne den Ordner mit dem neu gezeichneten Haus würden die eingecheckten grauen Raum-Ebenen gelöscht und haus.png auf v2 zurückgesetzt
|
||||
// (Endprüfung R6): das nur auf ausdrücklichen Wunsch
|
||||
const hausImRepo = path.join(REPO, ASSETS, 'haus')
|
||||
const graueImRepo = existsSync(hausImRepo) && readdirSync(hausImRepo).some((n) => /^raum-grau-[a-z0-9_-]+\.png$/i.test(n))
|
||||
if (!woms && graueImRepo && !ohneWoms) {
|
||||
throw new ImportFehler('Der Ordner pixelwelt-woms fehlt (zweites Argument), im Repo liegen aber graue Raum-Ebenen. Ohne ihn würden sie gelöscht und das Haus auf pixelwelt-v2 zurückgesetzt. Ordner angeben oder bewusst --ohne-woms setzen.')
|
||||
}
|
||||
if (!woms && ohneWoms) hinweise.push('Hinweis: --ohne-woms – es wird nur mit pixelwelt-v2 gearbeitet.')
|
||||
const plan = await baue({ v2, woms })
|
||||
const z = schreibe(plan)
|
||||
for (const h of hinweise) console.log(h)
|
||||
|
||||
Reference in new issue
Block a user