From 9a1c4aace2cea2f4831efa323db5113d23e63279 Mon Sep 17 00:00:00 2001 From: Bixilon Date: Tue, 9 Feb 2021 20:56:00 +0100 Subject: [PATCH] AssetsManager: download by asset identifier, fix re-downloading of assets index --- .../de/bixilon/minosoft/data/assets/AssetsManager.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/main/java/de/bixilon/minosoft/data/assets/AssetsManager.java b/src/main/java/de/bixilon/minosoft/data/assets/AssetsManager.java index bc897e398..a14ed2382 100644 --- a/src/main/java/de/bixilon/minosoft/data/assets/AssetsManager.java +++ b/src/main/java/de/bixilon/minosoft/data/assets/AssetsManager.java @@ -20,6 +20,7 @@ import com.google.gson.JsonParser; import de.bixilon.minosoft.Minosoft; import de.bixilon.minosoft.config.ConfigurationPaths; import de.bixilon.minosoft.config.StaticConfiguration; +import de.bixilon.minosoft.data.mappings.ModIdentifier; import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition; import de.bixilon.minosoft.util.CountUpAndDownLatch; import de.bixilon.minosoft.util.Util; @@ -207,7 +208,7 @@ public class AssetsManager { return; } // download minecraft assets - if (!doesAssetExist(this.assetVersion.getIndexHash())) { + if (!verifyAssetHash(this.assetVersion.getIndexHash())) { downloadAssetsIndex(); } this.assetsMap.putAll(verifyAssets(AssetsSource.MOJANG, latch, parseAssetsIndex(this.assetVersion.getIndexHash()))); @@ -318,6 +319,10 @@ public class AssetsManager { return readAssetAsStreamByHash(hash); } + public InputStream readAssetAsStream(ModIdentifier identifier) throws IOException { + return readAssetAsStream(identifier.getMod() + "/" + identifier.getIdentifier()); + } + public JsonElement readJsonAsset(String name) throws IOException { return readJsonAssetByHash(this.assetsMap.get(name)); }