diff --git a/src/main/java/ganymedes01/etfuturum/blocks/BlockModernWoodPlanks.java b/src/main/java/ganymedes01/etfuturum/blocks/BlockModernWoodPlanks.java index 8128c938..01c0e0f8 100644 --- a/src/main/java/ganymedes01/etfuturum/blocks/BlockModernWoodPlanks.java +++ b/src/main/java/ganymedes01/etfuturum/blocks/BlockModernWoodPlanks.java @@ -3,7 +3,6 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import ganymedes01.etfuturum.configuration.configs.ConfigBlocksItems; -import ganymedes01.etfuturum.configuration.configs.ConfigFunctions; import net.minecraft.block.material.Material; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.item.Item; @@ -43,11 +42,7 @@ public void getSubBlocks(Item item, CreativeTabs tab, List list) { @Override public boolean isFlammable(IBlockAccess aWorld, int aX, int aY, int aZ, ForgeDirection aSide) { - if (ConfigFunctions.enableExtraBurnableBlocks) { - int meta = aWorld.getBlockMetadata(aX, aY, aZ) % getTypes().length; - return meta > 1; - } - return false; + return aWorld.getBlockMetadata(aX, aY, aZ) % getTypes().length > 1; } @Override diff --git a/src/main/java/ganymedes01/etfuturum/blocks/BlockModernWoodSlab.java b/src/main/java/ganymedes01/etfuturum/blocks/BlockModernWoodSlab.java index 2c3aa858..3ec3108e 100644 --- a/src/main/java/ganymedes01/etfuturum/blocks/BlockModernWoodSlab.java +++ b/src/main/java/ganymedes01/etfuturum/blocks/BlockModernWoodSlab.java @@ -1,12 +1,13 @@ package ganymedes01.etfuturum.blocks; -import com.google.common.collect.Lists; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; import ganymedes01.etfuturum.ModBlocks; import ganymedes01.etfuturum.configuration.configs.ConfigFunctions; import net.minecraft.block.material.Material; +import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.creativetab.CreativeTabs; import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; import net.minecraft.util.IIcon; import net.minecraft.world.IBlockAccess; import net.minecraftforge.common.util.ForgeDirection; @@ -26,11 +27,12 @@ public BlockModernWoodSlab(boolean isDouble) { @Override public void getSubBlocks(Item p_149666_1_, CreativeTabs p_149666_2_, List p_149666_3_) { - List list = Lists.newArrayList(); - ModBlocks.WOOD_PLANKS.get().getSubBlocks(p_149666_1_, p_149666_2_, list); - for (int i = 0; i < Math.min(list.size(), 8); i++) { - p_149666_3_.add(list.get(i)); - } + ModBlocks.WOOD_PLANKS.get().getSubBlocks(p_149666_1_, p_149666_2_, p_149666_3_); + } + + @Override + @SideOnly(Side.CLIENT) + public void registerBlockIcons(IIconRegister reg) { } @Override diff --git a/src/main/java/ganymedes01/etfuturum/mixins/interpolatedtexturemap/client/MixinTextureMap.java b/src/main/java/ganymedes01/etfuturum/mixins/interpolatedtexturemap/client/MixinTextureMap.java index ed66fd79..ab642b40 100644 --- a/src/main/java/ganymedes01/etfuturum/mixins/interpolatedtexturemap/client/MixinTextureMap.java +++ b/src/main/java/ganymedes01/etfuturum/mixins/interpolatedtexturemap/client/MixinTextureMap.java @@ -31,31 +31,24 @@ public abstract class MixinTextureMap extends AbstractTexture implements ITickab @Final private Map mapRegisteredSprites; + @Shadow + protected abstract ResourceLocation completeResourceLocation(ResourceLocation p_147634_1_, int p_147634_2_); + @Inject(method = "registerIcon", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;(Ljava/lang/String;)V"), cancellable = true) private void registerInterpolatedIcon(String textureName, CallbackInfoReturnable cir) { try { - String prefixedTextureName; - String unprefixedName; - String domain; - if (textureName.contains(":")) { - domain = textureName.split(":")[0]; - unprefixedName = textureName.substring(textureName.indexOf(":") + 1); - } else { - domain = "minecraft"; - unprefixedName = textureName; - } - prefixedTextureName = domain + ":textures/" + (textureType == 0 ? "blocks" : "items") + "/" + unprefixedName + ".png"; - IResource resource = Minecraft.getMinecraft().getResourceManager().getResource(new ResourceLocation(prefixedTextureName)); + IResource resource = Minecraft.getMinecraft().getResourceManager().getResource(completeResourceLocation(new ResourceLocation(textureName), 0)); if (resource instanceof SimpleResource) { //This returns IMetadataSections, which seems to already remove unused mcmeta fields in 1.7.10 //I'm just running this to poplate the mcmetaJson field more easily; this does it for us - resource.getMetadata(""); - JsonObject mcmetaJson = ((SimpleResource) resource).mcmetaJson; - JsonObject animationJson; - if (mcmetaJson != null && (animationJson = mcmetaJson.getAsJsonObject("animation")) != null && animationJson.getAsJsonPrimitive("interpolate").getAsBoolean()) { - InterpolatedIcon interpolatedIcon = new InterpolatedIcon(textureName); - mapRegisteredSprites.put(textureName, interpolatedIcon); - cir.setReturnValue(interpolatedIcon); + if (resource.getMetadata("") != null) { + JsonObject mcmetaJson = ((SimpleResource) resource).mcmetaJson; + JsonObject animationJson; + if (mcmetaJson != null && (animationJson = mcmetaJson.getAsJsonObject("animation")) != null && animationJson.getAsJsonPrimitive("interpolate").getAsBoolean()) { + InterpolatedIcon interpolatedIcon = new InterpolatedIcon(textureName); + mapRegisteredSprites.put(textureName, interpolatedIcon); + cir.setReturnValue(interpolatedIcon); + } } } } catch (Exception ignored) {/*Should quietly fail, no need to failhard*/}