diff options
| author | miozune <miozune@gmail.com> | 2023-02-20 01:59:03 +0900 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-02-19 17:59:03 +0100 |
| commit | df8abec198820c0b03d615629dea0133e4ef6f20 (patch) | |
| tree | 34b54ab460e00c6c13a25ea40e13883100945dfb | |
| parent | 4fa9549f46eb883cff9a96346be38d73bca7c5f4 (diff) | |
| download | GT5-Unofficial-df8abec198820c0b03d615629dea0133e4ef6f20.tar.gz GT5-Unofficial-df8abec198820c0b03d615629dea0133e4ef6f20.tar.bz2 GT5-Unofficial-df8abec198820c0b03d615629dea0133e4ef6f20.zip | |
Fix weirdness with custom renderers (#290)
Former-commit-id: 1fbd438fc1e30dceb7de5ac321fb76d20171e628
4 files changed, 38 insertions, 24 deletions
diff --git a/build.gradle b/build.gradle index b808930520..6997e9d25f 100644 --- a/build.gradle +++ b/build.gradle @@ -1,4 +1,4 @@ -//version: 1676031737 +//version: 1676679815 /* DO NOT CHANGE THIS FILE! Also, you may replace this file at any time if there is an update available. @@ -677,7 +677,7 @@ dependencies { java17Dependencies("com.github.GTNewHorizons:lwjgl3ify:${lwjgl3ifyVersion}") } if (modId != 'hodgepodge') { - java17Dependencies('com.github.GTNewHorizons:Hodgepodge:2.0.31') + java17Dependencies('com.github.GTNewHorizons:Hodgepodge:2.0.35') } java17PatchDependencies('net.minecraft:launchwrapper:1.15') {transitive = false} diff --git a/dependencies.gradle b/dependencies.gradle index 6172aaef14..b20cb2ae49 100644 --- a/dependencies.gradle +++ b/dependencies.gradle @@ -1,7 +1,7 @@ // Add your dependencies here dependencies { - api("com.github.GTNewHorizons:GT5-Unofficial:5.09.41.278:dev") + api("com.github.GTNewHorizons:GT5-Unofficial:5.09.41.287:dev") api("com.github.GTNewHorizons:TecTech:5.0.85:dev") implementation("com.github.GTNewHorizons:TinkersConstruct:1.9.23-GTNH:dev") api("com.github.GTNewHorizons:Galacticraft:3.0.64-GTNH:dev") diff --git a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/BW_MetaGenerated_Items.java b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/BW_MetaGenerated_Items.java index 30f1a6813f..99d4afb1e1 100644 --- a/src/main/java/com/github/bartimaeusnek/bartworks/system/material/BW_MetaGenerated_Items.java +++ b/src/main/java/com/github/bartimaeusnek/bartworks/system/material/BW_MetaGenerated_Items.java @@ -216,7 +216,7 @@ public class BW_MetaGenerated_Items extends GT_MetaGenerated_Item implements IRa } @Override - public final IIcon getIconFromDamage(int aMetaData) { + public IIcon getIconFromDamage(int aMetaData) { if (aMetaData < 0) return null; Werkstoff tMaterial = werkstoffHashMap.get((short) aMetaData); if (tMaterial == null) return null; 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 96bc459e91..c2c3730874 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 @@ -26,6 +26,7 @@ import net.minecraft.entity.item.EntityItem; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; +import net.minecraft.util.IIcon; import net.minecraft.world.World; import net.minecraftforge.oredict.OreDictionary; @@ -44,6 +45,7 @@ import gregtech.api.enums.TextureSet; import gregtech.api.enums.Textures; import gregtech.api.interfaces.IIconContainer; import gregtech.api.util.GT_OreDictUnificator; +import gregtech.common.render.items.GT_GeneratedMaterial_Renderer; public class BWGTMetaItems extends BW_MetaGenerated_Items { @@ -98,10 +100,7 @@ public class BWGTMetaItems extends BW_MetaGenerated_Items { private Materials getMaterial(ItemStack is) { if (is == null || is.getItem() != this) return null; final int meta = is.getItemDamage(); - Materials material; - if (meta > 1000 && hasList) material = NoMetaValue.get(meta - 1001); - else material = Materials.values()[meta]; - return material; + return getMaterialFromMeta(meta); } @Override @@ -127,11 +126,12 @@ public class BWGTMetaItems extends BW_MetaGenerated_Items { @Override public IIconContainer getIconContainer(int aMetaData) { if (this.orePrefixes.mTextureIndex == -1) return getIconContainerBartWorks(aMetaData); - if (aMetaData > 1000 && hasList) - return NoMetaValue.get(aMetaData - 1001).mIconSet.mTextures[this.orePrefixes.mTextureIndex]; - if (aMetaData < 0 || aMetaData > Materials.values().length || Materials.values()[(short) aMetaData] == null) + Materials material = getMaterialFromMeta(aMetaData); + if (material != null) { + return material.mIconSet.mTextures[this.orePrefixes.mTextureIndex]; + } else { return null; - return Materials.values()[(short) aMetaData].mIconSet.mTextures[this.orePrefixes.mTextureIndex]; + } } @Override @@ -142,14 +142,32 @@ public class BWGTMetaItems extends BW_MetaGenerated_Items { if (iconLink == null) return null; - Materials material; - - if (aMetaData > 1000 && hasList) material = NoMetaValue.get(aMetaData - 1001); - else material = Materials.values()[aMetaData]; + Materials material = getMaterialFromMeta(aMetaData); if (material == null || material.mIconSet == null) return null; - return iconLink.get(material.mIconSet); + return iconLink.getOrDefault(material.mIconSet, iconLink.get(TextureSet.SET_DULL)); + } + + @Override + public IIcon getIconFromDamage(int aMetaData) { + return getIcon(aMetaData, 0); + } + + @Override + public GT_GeneratedMaterial_Renderer getMaterialRenderer(int aMetaData) { + return getMaterialFromMeta(aMetaData).renderer; + } + + public Materials getMaterialFromMeta(int aMetaData) { + if (aMetaData > 1000 && hasList) { + return NoMetaValue.get(aMetaData - 1001); + } else { + if (aMetaData < 0 || aMetaData >= Materials.values().length) { + return null; + } + return Materials.values()[aMetaData]; + } } @Override @@ -184,15 +202,12 @@ public class BWGTMetaItems extends BW_MetaGenerated_Items { @Override public short[] getColorForGUI(ItemStack aStack) { - if (aStack.getItemDamage() > 1000 && hasList) return NoMetaValue.get(aStack.getItemDamage() - 1001).mRGBa; - return Materials.values()[aStack.getItemDamage()].mRGBa; + return getMaterial(aStack).mRGBa; } @Override public String getNameForGUI(ItemStack aStack) { - if (aStack.getItemDamage() > 1000 && hasList) - return NoMetaValue.get(aStack.getItemDamage() - 1001).mDefaultLocalName; - return Materials.values()[aStack.getItemDamage()].mDefaultLocalName; + return getMaterial(aStack).mDefaultLocalName; } @Override @@ -200,8 +215,7 @@ public class BWGTMetaItems extends BW_MetaGenerated_Items { @Override public short[] getRGBa(ItemStack aStack) { - if (aStack.getItemDamage() > 1000 && hasList) return NoMetaValue.get(aStack.getItemDamage() - 1001).mRGBa; - return Materials.values()[aStack.getItemDamage()].mRGBa; + return getMaterial(aStack).mRGBa; } public boolean onEntityItemUpdate(EntityItem aItemEntity) { |
