Skip to content
This repository was archived by the owner on Dec 30, 2022. It is now read-only.

Commit f25e8c5

Browse files
committed
Search in assets for the correct version
Signed-off-by: DeathsGun <deathsgun@protonmail.com>
1 parent 56f2fa4 commit f25e8c5

File tree

2 files changed

+12
-4
lines changed

2 files changed

+12
-4
lines changed

src/main/kotlin/xyz/deathsgun/modmanager/ModManager.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,12 +51,12 @@ class ModManager : ClientModInitializer {
5151
@JvmStatic
5252
fun getVersion(): String {
5353
return FabricLoader.getInstance().allMods.find { it.metadata.id.equals("modmanager") }
54-
?.metadata?.version?.friendlyString ?: "1.1.0+1.17.1-alpha"
54+
?.metadata?.version?.friendlyString ?: "1.1.0+1.17-alpha"
5555
}
5656

5757
@JvmStatic
5858
fun getMinecraftVersion(): String {
59-
return MinecraftClient.getInstance()?.game?.version?.name ?: "1.17.1"
59+
return MinecraftClient.getInstance()?.game?.version?.releaseTarget ?: "1.17"
6060
}
6161
}
6262

src/main/kotlin/xyz/deathsgun/modmanager/update/UpdateManager.kt

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -250,9 +250,17 @@ class UpdateManager {
250250

251251
private fun installVersion(mod: Mod, version: Version, dir: Path, fabricId: String = mod.slug): ModUpdateResult {
252252
return try {
253-
val asset =
254-
version.assets.find { (it.filename.endsWith(".jar") || it.primary) && !it.filename.contains("forge") }
253+
val assets = version.assets.filter {
254+
(it.filename.endsWith(".jar") || it.primary) && !it.filename.contains("forge")
255+
}
256+
if (assets.isEmpty()) {
257+
return ModUpdateResult.Error(TranslatableText("modmanager.error.update.noFabricJar"))
258+
}
259+
var asset = assets[0]
260+
if (assets.size > 1) {
261+
asset = assets.find { it.filename.contains(ModManager.getMinecraftVersion(), true) }
255262
?: return ModUpdateResult.Error(TranslatableText("modmanager.error.update.noFabricJar"))
263+
}
256264
val jar = dir.resolve(asset.filename) // Download into same directory where the old jar was
257265
val request = HttpRequest.newBuilder(URI.create(asset.url)).GET()
258266
.setHeader("User-Agent", "ModManager ${ModManager.getVersion()}").build()

0 commit comments

Comments
 (0)