diff --git a/.gitignore b/.gitignore index 0cca196..3c6e517 100644 --- a/.gitignore +++ b/.gitignore @@ -25,4 +25,7 @@ dist-ssr *.zip Dex-v3-core.exe core-x86_64-pc-windows-msvc.exe -config.json \ No newline at end of file +config.json +*.exe +*.jar +instance \ No newline at end of file diff --git a/backend/src/Dex.ts b/backend/src/Dex.ts index f5452d5..aa669f2 100644 --- a/backend/src/Dex.ts +++ b/backend/src/Dex.ts @@ -22,11 +22,10 @@ export class Dex { this.ws = e }) this.in = {} - console.log(this.ws) - } +} public async Main(buffer: Buffer) { - const first = new Date().getTime() + const first = Date.now() const info = await this._getinfo(buffer) const plat = what_platform(info) const mpname = this.in.name @@ -46,8 +45,7 @@ export class Dex { })); //改变状态(DeEarth筛选模组完毕) const mlinfo = await platform(plat).getinfo(this.in) await mlsetup(mlinfo.loader,mlinfo.minecraft,mlinfo.loader_version,unpath) //安装服务端 - const latest = new Date().getTime() - console.log(latest - first) + const latest = Date.now() this.ws.send(JSON.stringify({ status: "finish", result: latest - first diff --git a/backend/src/modloader/fabric.ts b/backend/src/modloader/fabric.ts index 5726327..9e42c7b 100644 --- a/backend/src/modloader/fabric.ts +++ b/backend/src/modloader/fabric.ts @@ -40,7 +40,7 @@ export class Fabric{ async install(){ await execPromise(`java -jar fabric-installer.jar server -dir . -mcversion ${this.minecraft} -loader ${this.loaderVersion}`,{ cwd:this.path - }) + }).catch(e=>console.log(e)) } private async wshell(){ diff --git a/backend/src/modloader/index.ts b/backend/src/modloader/index.ts index 43c18a6..3ffba0d 100644 --- a/backend/src/modloader/index.ts +++ b/backend/src/modloader/index.ts @@ -30,7 +30,7 @@ export function modloader(ml:string,mcv:string,mlv:string,path:string){ export async function mlsetup(ml:string,mcv:string,mlv:string,path:string){ const minecraft = new Minecraft(ml,mcv,mlv,path); - console.log(ml) + //console.log(ml) await modloader(ml,mcv,mlv,path).setup() await minecraft.setup() } \ No newline at end of file diff --git a/backend/src/modloader/minecraft.ts b/backend/src/modloader/minecraft.ts index 1b89f98..6f16526 100644 --- a/backend/src/modloader/minecraft.ts +++ b/backend/src/modloader/minecraft.ts @@ -88,7 +88,7 @@ export class Minecraft { const mcpath = `${this.path}/server.jar` await fastdownload([`https://bmclapi2.bangbang93.com/version/${this.minecraft}/server`, mcpath]) // 依赖解压 - const zip = await yauzl_promise(await fs.promises.readFile(mcpath)) + /*const zip = await yauzl_promise(await fs.promises.readFile(mcpath)) for await (const entry of zip) { // if (entry.fileName.startsWith("META-INF/libraries/") && entry.fileName.endsWith("/") &&entry.fileName !== "META-INF/libraries/") { // fs.promises.mkdir(`${this.path}/libraries/${entry.fileName.replace("META-INF/libraries/", "")}`,{ @@ -105,16 +105,12 @@ export class Minecraft { const out = entry.ReadEntrySync await fsExtra.outputFile(`${this.path}/libraries/${entry.fileName.replace("META-INF/libraries/", "")}`,out) } - } + }*/ // 依赖解压 } async eula(){ - const context = ` - #By changing the setting below to TRUE you are indicating your agreement to our EULA (https://aka.ms/MinecraftEULA). - #Spawn by DeEarthX(QQgroup:559349662) Tianpao:(https://space.bilibili.com/1728953419) - eula=true - ` + const context = `#By changing the setting below to TRUE you are indicating your agreement to our EULA (https://aka.ms/MinecraftEULA).\n#Spawn by DeEarthX(QQgroup:559349662) Tianpao:(https://space.bilibili.com/1728953419)\neula=true` await fs.promises.writeFile(`${this.path}/eula.txt`,context) } } \ No newline at end of file diff --git a/backend/src/utils/DeEarth.ts b/backend/src/utils/DeEarth.ts index e86f300..05da1f0 100644 --- a/backend/src/utils/DeEarth.ts +++ b/backend/src/utils/DeEarth.ts @@ -5,6 +5,7 @@ import got from "got" import { Utils } from "./utils.js" import pa from "node:path" import WebSocket from "ws" +import config from "./config.js" interface IMixins{ name: string data: string @@ -43,10 +44,19 @@ export class DeEarth{ fs.mkdirSync(this.movepath,{recursive:true}) } await this.getFile() - const hash = await this.Check_Hashes() - const mixins = await this.Check_Mixins() + let hash; + let mixins; + if (config.filter.hashes){ //Hash + hash = await this.Check_Hashes() + } + if (config.filter.mixins){ //Mixins + mixins = await this.Check_Mixins() + } + if(!hash||mixins){ + return; + } const result = [...new Set(hash.concat(mixins))] - console.log(result) + //console.log(result) result.forEach(async e=>{ await fs.promises.rename(`${e}`,`${this.movepath}/${e}`.replace(this.modspath,"")) //await fs.promises.rename(`${this.modspath}/${e}`,`${this.movepath}/${e}`) @@ -57,7 +67,7 @@ export class DeEarth{ const cmap = new Map() const fmap = new Map() const hashes:string[] = [] - const files = this.file.forEach(e=>{ + this.file.forEach(e=>{ hashes.push(e.hash); cmap.set(e.hash,e.filename) }) diff --git a/backend/src/utils/debugger.ts b/backend/src/utils/debugger.ts new file mode 100644 index 0000000..beb31e8 --- /dev/null +++ b/backend/src/utils/debugger.ts @@ -0,0 +1,7 @@ +class Debugger{ + static log(msg: any){ + if (process.env.DEBUG){ + console.log(msg) + } + } +} \ No newline at end of file diff --git a/backend/src/utils/utils.ts b/backend/src/utils/utils.ts index af7cf32..353b117 100644 --- a/backend/src/utils/utils.ts +++ b/backend/src/utils/utils.ts @@ -84,7 +84,8 @@ export async function fastdownload(data: [string, string]) { return 0; } })();*/ - console.log(e) + + //console.log(e) await got .get(e[0], { responseType: "buffer", @@ -172,7 +173,7 @@ export async function xfastdownload(data: [string, string][]) { return 0; } })();*/ - console.log(e) + //console.log(e) await got .get(e[0], { responseType: "buffer", diff --git a/front/src-tauri/capabilities/default.json b/front/src-tauri/capabilities/default.json index 815d775..a0030d9 100644 --- a/front/src-tauri/capabilities/default.json +++ b/front/src-tauri/capabilities/default.json @@ -12,9 +12,10 @@ "shell:default", "shell:allow-execute", "shell:allow-spawn", + "shell:allow-kill", "shell:allow-open", { - "identifier": "shell:allow-execute", + "identifier": "shell:allow-spawn", "allow": [ { "name": "core", diff --git a/front/src-tauri/icons/128x128.png b/front/src-tauri/icons/128x128.png index 6be5e50..26d76e1 100644 Binary files a/front/src-tauri/icons/128x128.png and b/front/src-tauri/icons/128x128.png differ diff --git a/front/src-tauri/icons/128x128.png1 b/front/src-tauri/icons/128x128.png1 new file mode 100644 index 0000000..6be5e50 Binary files /dev/null and b/front/src-tauri/icons/128x128.png1 differ diff --git a/front/src-tauri/icons/128x128@2x.png b/front/src-tauri/icons/128x128@2x.png index e81bece..26d76e1 100644 Binary files a/front/src-tauri/icons/128x128@2x.png and b/front/src-tauri/icons/128x128@2x.png differ diff --git a/front/src-tauri/icons/128x128@2x.png1 b/front/src-tauri/icons/128x128@2x.png1 new file mode 100644 index 0000000..e81bece Binary files /dev/null and b/front/src-tauri/icons/128x128@2x.png1 differ diff --git a/front/src-tauri/icons/32x32.png b/front/src-tauri/icons/32x32.png index a437dd5..26d76e1 100644 Binary files a/front/src-tauri/icons/32x32.png and b/front/src-tauri/icons/32x32.png differ diff --git a/front/src-tauri/icons/32x32.png1 b/front/src-tauri/icons/32x32.png1 new file mode 100644 index 0000000..a437dd5 Binary files /dev/null and b/front/src-tauri/icons/32x32.png1 differ diff --git a/front/src-tauri/icons/icon.icns b/front/src-tauri/icons/icon.icns index 12a5bce..90234ce 100644 Binary files a/front/src-tauri/icons/icon.icns and b/front/src-tauri/icons/icon.icns differ diff --git a/front/src-tauri/icons/icon.icns1 b/front/src-tauri/icons/icon.icns1 new file mode 100644 index 0000000..12a5bce Binary files /dev/null and b/front/src-tauri/icons/icon.icns1 differ diff --git a/front/src-tauri/icons/icon.ico b/front/src-tauri/icons/icon.ico index b3636e4..b56a947 100644 Binary files a/front/src-tauri/icons/icon.ico and b/front/src-tauri/icons/icon.ico differ diff --git a/front/src-tauri/icons/icon.ico1 b/front/src-tauri/icons/icon.ico1 new file mode 100644 index 0000000..b3636e4 Binary files /dev/null and b/front/src-tauri/icons/icon.ico1 differ diff --git a/front/src-tauri/src/lib.rs b/front/src-tauri/src/lib.rs index 84ee6f6..bdbc4d0 100644 --- a/front/src-tauri/src/lib.rs +++ b/front/src-tauri/src/lib.rs @@ -1,3 +1,5 @@ +use tauri::Manager; + // Learn more about Tauri commands at https://tauri.app/develop/calling-rust/ #[tauri::command] fn greet(name: &str) -> String { diff --git a/front/src-tauri/tauri.conf.json b/front/src-tauri/tauri.conf.json index bc402b0..24783aa 100644 --- a/front/src-tauri/tauri.conf.json +++ b/front/src-tauri/tauri.conf.json @@ -1,6 +1,6 @@ { "$schema": "https://schema.tauri.app/config/2", - "productName": "dex-v3-ui", + "productName": "DeEarthX-V3", "version": "0.1.0", "identifier": "top.tianpao.dex-v3-ui", "build": { @@ -15,7 +15,10 @@ "title": "DeEarthX V3", "width": 1280, "height": 720, - "dragDropEnabled": false + "dragDropEnabled": false, + "fullscreen": false, + "resizable": false, + "center": true } ], "security": { @@ -32,6 +35,19 @@ "icons/icon.icns", "icons/icon.ico" ], - "externalBin": ["binaries/core"] + "externalBin": ["binaries/core"], + "windows": { + "webviewInstallMode": { + "type": "downloadBootstrapper" + }, + "nsis": { + "languages": ["SimpChinese","English"], + "displayLanguageSelector": true, + "installMode": "perMachine" + }, + "wix": { + "language": "zh-CN" + } + } } } diff --git a/front/src/App.vue b/front/src/App.vue index d47e54d..e16f5bf 100644 --- a/front/src/App.vue +++ b/front/src/App.vue @@ -1,9 +1,43 @@