X-Git-Url: http://deadsoftware.ru/gitweb?a=blobdiff_plain;f=core%2Fsrc%2Fru%2Fdeadsoftware%2Fcavedroid%2Fmisc%2FAssets.java;h=6a4305f4a5273a2a79a36f13940e07bcb1cd7467;hb=409a22b3fe7c43b7f686f33cc2f01b6277edec78;hp=abec0a0b2f5f0a4ecac1a6128b1a3f622445f1a1;hpb=8b34480aaaf0112671d319accff573030079c7b6;p=cavedroid.git diff --git a/core/src/ru/deadsoftware/cavedroid/misc/Assets.java b/core/src/ru/deadsoftware/cavedroid/misc/Assets.java index abec0a0..6a4305f 100644 --- a/core/src/ru/deadsoftware/cavedroid/misc/Assets.java +++ b/core/src/ru/deadsoftware/cavedroid/misc/Assets.java @@ -12,6 +12,7 @@ import com.badlogic.gdx.utils.JsonValue; import ru.deadsoftware.cavedroid.game.objects.TouchButton; import ru.deadsoftware.cavedroid.misc.utils.AssetLoader; +import java.io.File; import java.util.HashMap; import java.util.LinkedList; import java.util.List; @@ -112,6 +113,25 @@ public class Assets { } } + private static Texture resolveTexture(AssetLoader assetLoader, String textureName, String lookUpPath, Map cache) { + if (cache.containsKey(textureName)) { + return cache.get(textureName); + } + + final Texture texture = loadTexture(assetLoader.getAssetHandle(lookUpPath + File.separator + textureName + ".png")); + cache.put(textureName, texture); + + return texture; + } + + public static Texture resolveItemTexture(AssetLoader assetLoader, String textureName) { + return resolveTexture(assetLoader, textureName, "textures/items", itemTextures); + } + + public static Texture resolveBlockTexture(AssetLoader assetLoader, String textureName) { + return resolveTexture(assetLoader, textureName, "textures/blocks", blockTextures); + } + private static void loadAllPngsFromDirInto(FileHandle dir, Map loadInto) { for (FileHandle handle : dir.list((d, name) -> name.endsWith(".png"))) { loadInto.put(handle.nameWithoutExtension(), loadTexture(handle));