From 9d77fa53c7a41a0452b9644b314d7c6e24101828 Mon Sep 17 00:00:00 2001 From: Tianpao Date: Sat, 26 Jul 2025 16:27:14 +0800 Subject: [PATCH] =?UTF-8?q?feat=EF=BC=9Afabric=E5=90=AF=E5=8A=A8=E8=84=9A?= =?UTF-8?q?=E6=9C=AC=EF=BC=8C=E5=9E=83=E5=9C=BE=E5=9B=9E=E6=94=B6=EF=BC=8C?= =?UTF-8?q?rubbish=E6=94=B9=E5=90=8D=20fix=EF=BC=9Ajson=E8=A7=A3=E6=9E=90?= =?UTF-8?q?=E5=A4=B1=E8=B4=A5=E5=B4=A9=E6=BA=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main.ts | 28 +++++++++++++++++++++++++--- src/ml_install/fabric.ts | 4 ++-- src/utils/DeEarth.ts | 8 +++++++- src/utils/utils.ts | 5 +++++ 4 files changed, 39 insertions(+), 6 deletions(-) diff --git a/src/main.ts b/src/main.ts index 46f3816..72ca522 100644 --- a/src/main.ts +++ b/src/main.ts @@ -5,7 +5,7 @@ import fs from "node:fs"; import fse from "fs-extra"; import { join, basename, dirname } from "node:path"; import { platform, what_platform } from "./platform/index.js"; -import { isDevelopment, isInstallJava, readzipentry } from "./utils/utils.js"; +import { type ForgeInfo, isDevelopment, isInstallJava, readzipentry } from "./utils/utils.js"; import fabric from "./ml_install/fabric.js"; import forge from "./ml_install/forge.js"; import neoforge from "./ml_install/neoforge.js"; @@ -39,7 +39,7 @@ if (!argv) { function initdir() { if (!fs.existsSync(unzip_path)) { - fse.ensureDirSync(join(unzip_path, "rubbish")); + fse.ensureDirSync(join(unzip_path, ".rubbish")); } } @@ -88,12 +88,13 @@ async function main(modpack_path: string) { const plat = platform(what_platform(dud_files)); const info = await plat.getinfo(pack_info); await plat.downloadfile(pack_info, dirx); - await DeEarthMain(join(dirx, "mods"), join(unzip_path, "rubbish")); + await DeEarthMain(join(dirx, "mods"), join(unzip_path, ".rubbish")); await install(info.loader, info.minecraft, info.loader_version, dirx); fs.writeFileSync( join(dirx, "eula.txt"), "#By changing the setting below to TRUE you are indicating your agreement to our EULA (https://aka.ms/MinecraftEULA).\n#This serverpack created by DeEarthX(QQ_Group:559349662)\neula=true" ); + await garcol(dirx,{minecraft_verison: info.minecraft, forge_verison: info.loader_version}).catch((e)=>{}); LOGGER.info("DeEarthX已将服务端制作完成!"); zipfile.close(); }); @@ -116,6 +117,9 @@ async function install( break; case "fabric-loader": await fabric(minecraft, loaderver, path); + const com = "java -jar fabric-server-launch.jar" + fs.writeFileSync(join(path,'run.bat'),com) + fs.writeFileSync(join(path,'run.sh'),com) break; case "forge": await forge(minecraft, loaderver, path); @@ -126,6 +130,24 @@ async function install( } } +async function garcol(p:string,fi:ForgeInfo): Promise { + return new Promise((resolve,reject)=>{ + try{ + LOGGER.info("正在删除垃圾文件......") + const x = [`Forge-${fi.minecraft_verison}-${fi.forge_verison}.jar`,`installer.log`,`installer.jar`,`fabric-installer-1.0.3.jar`,`options.txt`,`shaderpacks/`,`resourcepacks/`] + for (let i=0;i