diff options
author | Léa Gris <lea.gris@noiraude.net> | 2020-11-27 01:26:01 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-11-27 01:26:01 +0100 |
commit | 5b1f943957d3ded24f5c0f371f43d6f62f3864f0 (patch) | |
tree | f2d1a8f807d68a07369a3f0799184a8a1adbe2e6 /src/main/java/gregtech/common/items/GT_IntegratedCircuit_Item.java | |
parent | a65bc5d9189095398d85b36cb0e2890ef5f106ce (diff) | |
download | GT5-Unofficial-5b1f943957d3ded24f5c0f371f43d6f62f3864f0.tar.gz GT5-Unofficial-5b1f943957d3ded24f5c0f371f43d6f62f3864f0.tar.bz2 GT5-Unofficial-5b1f943957d3ded24f5c0f371f43d6f62f3864f0.zip |
feat(gregtech): visual programmed circuit (#355)
* feat(gregtech): visual programmed circuit
Add: Feature a configuration display for the programmed circuit (integrated circuit).
Address feature request https://github.com/GTNewHorizons/GT-New-Horizons-Modpack/issues/6993
* fix(bug): potential out of bound index
Diffstat (limited to 'src/main/java/gregtech/common/items/GT_IntegratedCircuit_Item.java')
-rw-r--r-- | src/main/java/gregtech/common/items/GT_IntegratedCircuit_Item.java | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/main/java/gregtech/common/items/GT_IntegratedCircuit_Item.java b/src/main/java/gregtech/common/items/GT_IntegratedCircuit_Item.java index 92eb3af4d2..ee69c90be1 100644 --- a/src/main/java/gregtech/common/items/GT_IntegratedCircuit_Item.java +++ b/src/main/java/gregtech/common/items/GT_IntegratedCircuit_Item.java @@ -7,6 +7,7 @@ import gregtech.api.enums.ItemList; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; import gregtech.api.items.GT_Generic_Item; +import gregtech.api.util.GT_Config; import gregtech.api.util.GT_LanguageManager; import gregtech.api.util.GT_Log; import gregtech.api.util.GT_ModHandler; @@ -15,13 +16,17 @@ import net.minecraft.creativetab.CreativeTabs; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; +import net.minecraft.util.IIcon; +import java.lang.reflect.Array; import java.util.List; import static gregtech.GT_Mod.GT_FML_LOGGER; +import static gregtech.api.enums.GT_Values.RES_PATH_ITEM; public class GT_IntegratedCircuit_Item extends GT_Generic_Item { private final static String aTextEmptyRow = " "; + protected IIcon[] mIconDamage = new IIcon[25]; public GT_IntegratedCircuit_Item() { super("integrated_circuit", "Programmed Circuit", ""); setHasSubtypes(true); @@ -93,9 +98,13 @@ public class GT_IntegratedCircuit_Item extends GT_Generic_Item { aList.add(new ItemStack(this, 1, 0)); } + @Override @SideOnly(Side.CLIENT) public void registerIcons(IIconRegister aIconRegister) { super.registerIcons(aIconRegister); + for (int i=0; i < mIconDamage.length; i++) { + mIconDamage[i] = aIconRegister.registerIcon(RES_PATH_ITEM + (GT_Config.troll ? "troll" : getUnlocalizedName() + "/" + i)); + } if (GregTech_API.sPostloadFinished) { GT_Log.out.println("GT_Mod: Starting Item Icon Load Phase"); GT_FML_LOGGER.info("GT_Mod: Starting Item Icon Load Phase"); @@ -109,4 +118,9 @@ public class GT_IntegratedCircuit_Item extends GT_Generic_Item { GT_FML_LOGGER.info("GT_Mod: Finished Item Icon Load Phase"); } } + + @Override + public IIcon getIconFromDamage(int damage) { + return (damage < mIconDamage.length ? mIconDamage[damage] : mIcon); + } } |