mirror of
https://github.com/HMCL-dev/HMCL.git
synced 2025-08-03 19:36:53 -04:00
修复 NeoForge 版本识别错误的问题 (#3638)
This commit is contained in:
parent
e7e8d45497
commit
72b5428f8b
@ -216,11 +216,6 @@ public final class LibraryAnalyzer implements Iterable<LibraryAnalyzer.LibraryMa
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected String patchVersion(Version gameVersion, String libraryVersion) {
|
protected String patchVersion(Version gameVersion, String libraryVersion) {
|
||||||
Matcher matcher = NEO_FORGE_VERSION_MATCHER.matcher(libraryVersion);
|
|
||||||
if (matcher.find()) {
|
|
||||||
return matcher.group("forge");
|
|
||||||
}
|
|
||||||
|
|
||||||
String res = scanVersion(gameVersion);
|
String res = scanVersion(gameVersion);
|
||||||
if (res != null) {
|
if (res != null) {
|
||||||
return res;
|
return res;
|
||||||
@ -233,6 +228,11 @@ public final class LibraryAnalyzer implements Iterable<LibraryAnalyzer.LibraryMa
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Matcher matcher = NEO_FORGE_VERSION_MATCHER.matcher(libraryVersion);
|
||||||
|
if (matcher.find()) {
|
||||||
|
return matcher.group("forge");
|
||||||
|
}
|
||||||
|
|
||||||
return super.patchVersion(gameVersion, libraryVersion);
|
return super.patchVersion(gameVersion, libraryVersion);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -248,7 +248,9 @@ public final class LibraryAnalyzer implements Iterable<LibraryAnalyzer.LibraryMa
|
|||||||
|
|
||||||
for (int i = 0; i < gameArguments.size() - 1; i++) {
|
for (int i = 0; i < gameArguments.size() - 1; i++) {
|
||||||
Argument argument = gameArguments.get(i);
|
Argument argument = gameArguments.get(i);
|
||||||
if (argument instanceof StringArgument && "--fml.neoForgeVersion".equals(((StringArgument) argument).getArgument())) {
|
if (argument instanceof StringArgument) {
|
||||||
|
String argumentValue = ((StringArgument) argument).getArgument();
|
||||||
|
if ("--fml.neoForgeVersion".equals(argumentValue) || "--fml.forgeVersion".equals(argumentValue)) {
|
||||||
Argument next = gameArguments.get(i + 1);
|
Argument next = gameArguments.get(i + 1);
|
||||||
if (next instanceof StringArgument) {
|
if (next instanceof StringArgument) {
|
||||||
return ((StringArgument) next).getArgument();
|
return ((StringArgument) next).getArgument();
|
||||||
@ -256,6 +258,7 @@ public final class LibraryAnalyzer implements Iterable<LibraryAnalyzer.LibraryMa
|
|||||||
return null; // Normally, there should not be two --fml.neoForgeVersion argument.
|
return null; // Normally, there should not be two --fml.neoForgeVersion argument.
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user