diff options
author | Léa Gris <lea.gris@noiraude.net> | 2021-05-20 22:57:12 +0200 |
---|---|---|
committer | Léa Gris <lea.gris@noiraude.net> | 2021-05-21 13:41:21 +0200 |
commit | 678c9a6e1e7a3a1127c40ae5c3dda7ef4519bfb7 (patch) | |
tree | f275c84399e59b714bcd9a70f0ffa6d6020f5ffe /src/main/java/gregtech/common/tileentities/storage | |
parent | 04468545985a4fed401d9b6626670e8af5938920 (diff) | |
download | GT5-Unofficial-678c9a6e1e7a3a1127c40ae5c3dda7ef4519bfb7.tar.gz GT5-Unofficial-678c9a6e1e7a3a1127c40ae5c3dda7ef4519bfb7.tar.bz2 GT5-Unofficial-678c9a6e1e7a3a1127c40ae5c3dda7ef4519bfb7.zip |
feat(render): implementation-free api texture factory
Provides an implementation-free API Texture factory an builder.
Deprecates gregtech.api.objects.GT_*Texture.java classes
Once all GregTech add-on will be migrated to the new implemnetation-free API,
changes to the implementation will not affect the add-on.
For now, this API allow rendering of in-world glow textures.
In-inventory/hand rendering of glow texture require implementation changes
that are postponed until no add-on uses the deprecated embedded implementation API.
Diffstat (limited to 'src/main/java/gregtech/common/tileentities/storage')
4 files changed, 23 insertions, 22 deletions
diff --git a/src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_DigitalChestBase.java b/src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_DigitalChestBase.java index 9f6727955c..18fa7a759d 100644 --- a/src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_DigitalChestBase.java +++ b/src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_DigitalChestBase.java @@ -6,8 +6,7 @@ import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_TieredMachineBlock; import gregtech.api.objects.AE2DigitalChestHandler; -import gregtech.api.render.GT_RenderedGlowTexture; -import gregtech.api.render.GT_RenderedTexture; +import gregtech.api.render.TextureFactory; import gregtech.api.util.GT_Utility; import gregtech.common.gui.GT_Container_QuantumChest; import gregtech.common.gui.GT_GUIContainer_QuantumChest; @@ -432,8 +431,8 @@ public abstract class GT_MetaTileEntity_DigitalChestBase extends GT_MetaTileEnti if (aSide != aFacing) return new ITexture[]{MACHINE_CASINGS[mTier][aColorIndex + 1]}; return new ITexture[]{ MACHINE_CASINGS[mTier][aColorIndex + 1], - new GT_RenderedTexture(OVERLAY_SCHEST), - new GT_RenderedGlowTexture(OVERLAY_SCHEST_GLOW) + TextureFactory.of(OVERLAY_SCHEST), + TextureFactory.builder().addIcon(OVERLAY_SCHEST_GLOW).glow().build() }; } } diff --git a/src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_Locker.java b/src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_Locker.java index 0692d95412..0cf3121773 100644 --- a/src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_Locker.java +++ b/src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_Locker.java @@ -1,18 +1,22 @@ package gregtech.common.tileentities.storage; import gregtech.api.GregTech_API; -import gregtech.api.enums.Textures; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_TieredMachineBlock; import gregtech.api.objects.GT_ItemStack; -import gregtech.api.render.GT_RenderedTexture; +import gregtech.api.render.TextureFactory; import gregtech.api.util.GT_Utility; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; +import static gregtech.api.enums.Textures.BlockIcons.LOCKERS; +import static gregtech.api.enums.Textures.BlockIcons.MACHINE_CASINGS; +import static gregtech.api.enums.Textures.BlockIcons.OVERLAYS_ENERGY_IN; +import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_LOCKER; + public class GT_MetaTileEntity_Locker extends GT_MetaTileEntity_TieredMachineBlock { public byte mType = 0; @@ -38,11 +42,11 @@ public class GT_MetaTileEntity_Locker extends GT_MetaTileEntity_TieredMachineBlo public ITexture[][][] getTextureSet(ITexture[] aTextures) { ITexture[][][] rTextures = new ITexture[3][17][]; for (byte i = -1; i < 16; i = (byte) (i + 1)) { - ITexture[] tmp0 = {Textures.BlockIcons.MACHINE_CASINGS[this.mTier][(i + 1)]}; + ITexture[] tmp0 = {MACHINE_CASINGS[this.mTier][(i + 1)]}; rTextures[0][(i + 1)] = tmp0; - ITexture[] tmp1 = {Textures.BlockIcons.MACHINE_CASINGS[this.mTier][(i + 1)], Textures.BlockIcons.OVERLAYS_ENERGY_IN[this.mTier]}; + ITexture[] tmp1 = {MACHINE_CASINGS[this.mTier][(i + 1)], OVERLAYS_ENERGY_IN[this.mTier]}; rTextures[1][(i + 1)] = tmp1; - ITexture[] tmp2 = {Textures.BlockIcons.MACHINE_CASINGS[this.mTier][(i + 1)], new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_LOCKER)}; + ITexture[] tmp2 = {MACHINE_CASINGS[this.mTier][(i + 1)], TextureFactory.of(OVERLAY_LOCKER)}; rTextures[2][(i + 1)] = tmp2; } return rTextures; @@ -50,7 +54,7 @@ public class GT_MetaTileEntity_Locker extends GT_MetaTileEntity_TieredMachineBlo public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) { if (aSide == aFacing) { - return new ITexture[]{this.mTextures[2][(aColorIndex + 1)][0], this.mTextures[2][(aColorIndex + 1)][1], Textures.BlockIcons.LOCKERS[Math.abs(this.mType % Textures.BlockIcons.LOCKERS.length)]}; + return new ITexture[]{this.mTextures[2][(aColorIndex + 1)][0], this.mTextures[2][(aColorIndex + 1)][1], LOCKERS[Math.abs(this.mType % LOCKERS.length)]}; } return this.mTextures[0][(aColorIndex + 1)]; } @@ -96,7 +100,7 @@ public class GT_MetaTileEntity_Locker extends GT_MetaTileEntity_TieredMachineBlo } public long maxAmperesIn() { - return this.mInventory.length * 2; + return this.mInventory.length * 2L; } public int rechargerSlotStartIndex() { @@ -129,7 +133,7 @@ public class GT_MetaTileEntity_Locker extends GT_MetaTileEntity_TieredMachineBlo public void doSound(byte aIndex, double aX, double aY, double aZ) { if (aIndex == 16) { - GT_Utility.doSoundAtClient((String) GregTech_API.sSoundList.get(3), 1, 1.0F); + GT_Utility.doSoundAtClient(GregTech_API.sSoundList.get(3), 1, 1.0F); } } diff --git a/src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_QuantumTank.java b/src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_QuantumTank.java index 5a07bb9216..396b6d6464 100644 --- a/src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_QuantumTank.java +++ b/src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_QuantumTank.java @@ -4,8 +4,7 @@ import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicTank; -import gregtech.api.render.GT_RenderedGlowTexture; -import gregtech.api.render.GT_RenderedTexture; +import gregtech.api.render.TextureFactory; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.util.EnumChatFormatting; import net.minecraftforge.common.util.ForgeDirection; @@ -94,8 +93,8 @@ public class GT_MetaTileEntity_QuantumTank extends GT_MetaTileEntity_BasicTank { if (aSide != ForgeDirection.UP.ordinal()) return new ITexture[]{MACHINE_CASINGS[mTier][aColorIndex + 1]}; return new ITexture[]{ MACHINE_CASINGS[mTier][aColorIndex + 1], - new GT_RenderedTexture(OVERLAY_QTANK), - new GT_RenderedGlowTexture(OVERLAY_QTANK_GLOW) + TextureFactory.of(OVERLAY_QTANK), + TextureFactory.builder().addIcon(OVERLAY_QTANK_GLOW).glow().build() }; } @@ -144,7 +143,7 @@ public class GT_MetaTileEntity_QuantumTank extends GT_MetaTileEntity_BasicTank { "Stored Fluid:", EnumChatFormatting.GOLD + "No Fluid" + EnumChatFormatting.RESET, EnumChatFormatting.GREEN + Integer.toString(0) + " L" + EnumChatFormatting.RESET + " " + - EnumChatFormatting.YELLOW + Integer.toString(getCapacity()) + " L" + EnumChatFormatting.RESET + EnumChatFormatting.YELLOW + getCapacity() + " L" + EnumChatFormatting.RESET }; } return new String[]{ @@ -152,7 +151,7 @@ public class GT_MetaTileEntity_QuantumTank extends GT_MetaTileEntity_BasicTank { "Stored Fluid:", EnumChatFormatting.GOLD + mFluid.getLocalizedName() + EnumChatFormatting.RESET, EnumChatFormatting.GREEN + Integer.toString(mFluid.amount) + " L" + EnumChatFormatting.RESET + " " + - EnumChatFormatting.YELLOW + Integer.toString(getCapacity()) + " L" + EnumChatFormatting.RESET + EnumChatFormatting.YELLOW + getCapacity() + " L" + EnumChatFormatting.RESET }; } diff --git a/src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_SuperTank.java b/src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_SuperTank.java index 5c4f005698..41171720f5 100644 --- a/src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_SuperTank.java +++ b/src/main/java/gregtech/common/tileentities/storage/GT_MetaTileEntity_SuperTank.java @@ -4,8 +4,7 @@ import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicTank; -import gregtech.api.render.GT_RenderedGlowTexture; -import gregtech.api.render.GT_RenderedTexture; +import gregtech.api.render.TextureFactory; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.util.EnumChatFormatting; import net.minecraftforge.common.util.ForgeDirection; @@ -94,8 +93,8 @@ public class GT_MetaTileEntity_SuperTank extends GT_MetaTileEntity_BasicTank { if (aSide != ForgeDirection.UP.ordinal()) return new ITexture[]{MACHINE_CASINGS[mTier][aColorIndex + 1]}; return new ITexture[]{ MACHINE_CASINGS[mTier][aColorIndex + 1], - new GT_RenderedTexture(OVERLAY_QTANK), - new GT_RenderedGlowTexture(OVERLAY_QTANK_GLOW) + TextureFactory.of(OVERLAY_QTANK), + TextureFactory.builder().addIcon(OVERLAY_QTANK_GLOW).glow().build() }; } |