43 lines
1.4 KiB
JavaScript
43 lines
1.4 KiB
JavaScript
const decompress = require('decompress');
|
|
const fs = require('fs');
|
|
const jsonfile = require('jsonfile')
|
|
const file = 'blocks.json'
|
|
let blocks;
|
|
jsonfile.readFile(file, function (err, obj) {
|
|
if (err) console.error(err)
|
|
// console.dir(obj)
|
|
blocks = obj;
|
|
})
|
|
|
|
extract("1.8")
|
|
// extract("1.20.1")
|
|
|
|
function extract(string) {
|
|
decompress(`test/${string}.zip`, `out/${string}`).then(files => {
|
|
// try {
|
|
// fs.renameSync(`out/${string}/assets/minecraft/textures/blocks`, `out/${string}/assets/minecraft/textures/block`)
|
|
// fs.renameSync(`out/${string}/assets/minecraft/textures/items`, `out/${string}/assets/minecraft/textures/item`)
|
|
// } catch (error) {
|
|
// console.log(error);
|
|
// }
|
|
files.forEach(element => {
|
|
if (!element.path.includes("assets/minecraft/textures/")) {
|
|
return;
|
|
}
|
|
let texture = element.path.match(/(?:[A-Za-z]*\/)*([A-za-z]*)\/([A-Za-z_]*).png/);
|
|
// console.log(texture)
|
|
if (texture) {
|
|
let type = texture[0]
|
|
let name = texture[1]
|
|
// console.log(texture.input)
|
|
// console.log(type)
|
|
// console.log(name)
|
|
// if (type == "items") {
|
|
// fs.renameSync()
|
|
// }
|
|
}
|
|
console.log(blocks)
|
|
})
|
|
})
|
|
}
|