From 5ff1e0795fed83f82e5b945aec16e0c75d4de015 Mon Sep 17 00:00:00 2001 From: Wulian233 <1055917385@qq.com> Date: Sun, 11 Jan 2026 20:09:03 +0800 Subject: [PATCH] =?UTF-8?q?Forge=20Quilt=20=E6=A8=A1=E7=BB=84=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E6=94=AF=E6=8C=81=E8=AF=86=E5=88=AB=E5=AD=90=E6=96=87?= =?UTF-8?q?=E4=BB=B6=E5=A4=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/org/jackhuang/hmcl/mod/ModManager.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/mod/ModManager.java b/HMCLCore/src/main/java/org/jackhuang/hmcl/mod/ModManager.java index ec25f1ed31..65fd5af71f 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/mod/ModManager.java +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/mod/ModManager.java @@ -26,7 +26,6 @@ import org.jackhuang.hmcl.util.io.CompressingUtils; import org.jackhuang.hmcl.util.io.FileUtils; import org.jackhuang.hmcl.util.tree.ZipFileTree; -import org.jackhuang.hmcl.util.versioning.VersionNumber; import org.jetbrains.annotations.Unmodifiable; import java.io.IOException; @@ -177,11 +176,13 @@ public void refreshMods() throws IOException { analyzer = LibraryAnalyzer.analyze(getRepository().getResolvedPreservingPatchesVersion(id), null); + boolean supportSubfolders = analyzer.has(LibraryAnalyzer.LibraryType.FORGE) + || analyzer.has(LibraryAnalyzer.LibraryType.QUILT); + if (Files.isDirectory(getModsDirectory())) { try (DirectoryStream modsDirectoryStream = Files.newDirectoryStream(getModsDirectory())) { for (Path subitem : modsDirectoryStream) { - if (Files.isDirectory(subitem) && VersionNumber.isIntVersionNumber(FileUtils.getName(subitem))) { - // If the folder name is game version, forge will search mod in this subdirectory + if (supportSubfolders && Files.isDirectory(subitem)) { try (DirectoryStream subitemDirectoryStream = Files.newDirectoryStream(subitem)) { for (Path subsubitem : subitemDirectoryStream) { addModInfo(subsubitem);