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 | |
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')
26 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); + } } diff --git a/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/0.png b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/0.png Binary files differnew file mode 100644 index 0000000000..e35727ec34 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/0.png diff --git a/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/1.png b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/1.png Binary files differnew file mode 100644 index 0000000000..d2b07c8a6c --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/1.png diff --git a/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/10.png b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/10.png Binary files differnew file mode 100644 index 0000000000..d3648dbd35 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/10.png diff --git a/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/11.png b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/11.png Binary files differnew file mode 100644 index 0000000000..ccf9f81399 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/11.png diff --git a/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/12.png b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/12.png Binary files differnew file mode 100644 index 0000000000..3150356e16 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/12.png diff --git a/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/13.png b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/13.png Binary files differnew file mode 100644 index 0000000000..0f5d3c1ca5 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/13.png diff --git a/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/14.png b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/14.png Binary files differnew file mode 100644 index 0000000000..8109357533 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/14.png diff --git a/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/15.png b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/15.png Binary files differnew file mode 100644 index 0000000000..1bc89f80b2 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/15.png diff --git a/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/16.png b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/16.png Binary files differnew file mode 100644 index 0000000000..4cf2f0d825 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/16.png diff --git a/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/17.png b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/17.png Binary files differnew file mode 100644 index 0000000000..3ac05fd824 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/17.png diff --git a/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/18.png b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/18.png Binary files differnew file mode 100644 index 0000000000..b668f379cf --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/18.png diff --git a/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/19.png b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/19.png Binary files differnew file mode 100644 index 0000000000..d13a9415cd --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/19.png diff --git a/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/2.png b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/2.png Binary files differnew file mode 100644 index 0000000000..b31f73a4f7 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/2.png diff --git a/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/20.png b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/20.png Binary files differnew file mode 100644 index 0000000000..5858bc43b8 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/20.png diff --git a/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/21.png b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/21.png Binary files differnew file mode 100644 index 0000000000..e7d903a404 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/21.png diff --git a/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/22.png b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/22.png Binary files differnew file mode 100644 index 0000000000..45d56bb2e7 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/22.png diff --git a/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/23.png b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/23.png Binary files differnew file mode 100644 index 0000000000..5d2a8f638a --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/23.png diff --git a/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/24.png b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/24.png Binary files differnew file mode 100644 index 0000000000..78f30e2299 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/24.png diff --git a/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/3.png b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/3.png Binary files differnew file mode 100644 index 0000000000..996887e4ef --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/3.png diff --git a/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/4.png b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/4.png Binary files differnew file mode 100644 index 0000000000..0ef50ef775 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/4.png diff --git a/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/5.png b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/5.png Binary files differnew file mode 100644 index 0000000000..2b67a655f5 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/5.png diff --git a/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/6.png b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/6.png Binary files differnew file mode 100644 index 0000000000..a30a06a13c --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/6.png diff --git a/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/7.png b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/7.png Binary files differnew file mode 100644 index 0000000000..e5dfc35674 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/7.png diff --git a/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/8.png b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/8.png Binary files differnew file mode 100644 index 0000000000..0ed9386325 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/8.png diff --git a/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/9.png b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/9.png Binary files differnew file mode 100644 index 0000000000..97398ff800 --- /dev/null +++ b/src/main/resources/assets/gregtech/textures/items/gt.integrated_circuit/9.png |