From 171fb79478302114847b0c510d8bba7e51d7f9fe Mon Sep 17 00:00:00 2001 From: bartimaeusnek <33183715+bartimaeusnek@users.noreply.github.com> Date: Thu, 17 Dec 2020 20:35:40 +0100 Subject: Quick render crashfix Former-commit-id: bee32a395417ad6b3baad5e8f3e6c2d2022dbeee --- .../material/GT_Enhancement/BWGTMetaItems.java | 29 +++++++++++++++++----- 1 file changed, 23 insertions(+), 6 deletions(-) (limited to 'src/main/java/com') diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/BWGTMetaItems.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/BWGTMetaItems.java index efc29dc129..4310d06156 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/BWGTMetaItems.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/GT_Enhancement/BWGTMetaItems.java @@ -31,6 +31,8 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; +import gregtech.api.enums.TextureSet; +import gregtech.api.enums.Textures; import gregtech.api.interfaces.IIconContainer; import gregtech.api.util.GT_LanguageManager; import gregtech.api.util.GT_OreDictUnificator; @@ -42,6 +44,7 @@ import net.minecraft.item.ItemStack; import net.minecraft.world.World; import net.minecraftforge.oredict.OreDictionary; +import java.util.HashMap; import java.util.HashSet; import java.util.List; import java.util.Set; @@ -111,13 +114,27 @@ public class BWGTMetaItems extends BW_MetaGenerated_Items { return werkstoff != null ? this.orePrefixes.mLocalizedMaterialPre + werkstoff.mDefaultLocalName + this.orePrefixes.mLocalizedMaterialPost : Materials._NULL.mDefaultLocalName; } + @Override protected IIconContainer getIconContainerBartWorks(int aMetaData) { - if (SideReference.Side.Client) { - if (aMetaData > 1000 && hasList) - return PrefixTextureLinker.texMap.get(this.orePrefixes).get(NoMetaValue.get(aMetaData-1001).mIconSet); - return PrefixTextureLinker.texMap.get(this.orePrefixes).get(Materials.values()[(short) aMetaData].mIconSet); - } - return null; + if (SideReference.Side.Server || PrefixTextureLinker.texMap == null) + return null; + + HashMap iconLink = PrefixTextureLinker.texMap.get(this.orePrefixes); + + if (iconLink == null) + return null; + + Materials material; + + if (aMetaData > 1000 && hasList) + material = NoMetaValue.get(aMetaData-1001); + else + material = Materials.values()[aMetaData]; + + if (material == null || material.mIconSet == null) + return null; + + return iconLink.get(material.mIconSet); } @Override -- cgit