diff options
author | Léa Gris <lea.gris@noiraude.net> | 2022-09-01 13:17:27 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-09-01 13:17:27 +0200 |
commit | b1ac2dc90ec6847e5a328fb12a3ece3b670df33c (patch) | |
tree | ff74c772afc2239939f37d307fa026deef6edb5b | |
parent | 8a6973f2bddfb0a1485422725745c1078b1ea49e (diff) | |
download | GT5-Unofficial-b1ac2dc90ec6847e5a328fb12a3ece3b670df33c.tar.gz GT5-Unofficial-b1ac2dc90ec6847e5a328fb12a3ece3b670df33c.tar.bz2 GT5-Unofficial-b1ac2dc90ec6847e5a328fb12a3ece3b670df33c.zip |
impl(covers): functional covers uses machine casing (#1317)
* impl(covers): functional covers uses machine casing
- Functional covers now will let see the casing, when placed on machines.
- When placed on pipes or frames, they continue to use their own tiered
casing as they used to.
* impr(cover): restore backward compat interface to cover registgration
Registering covers with the old interface works again.
Legacy cover registration just produce covers that renders
the old way without transparency over machine casing.
Removed the useless GT_Cover_Cased class and added the feature
to the GT_CoverBehavior class, maintaining the old constructor alongside
the new constructor with an overlay texture.
* impr(covers): deprecate old constructors
Delete totally redundant and unused EnergyOnly cover
Keeps other unused covers as TODO reimplementation tasks
* impr(covers): fludStorageMonitor overlay
- Re-add FluidStorageMonitor fluid-texture overlay
- Allow light-emitting fluids to render as glow texture.
* impr(covers): Expand foreground texture support to GT_Cover_FacadeBase
* spotlessapply
35 files changed, 499 insertions, 271 deletions
diff --git a/src/main/java/gregtech/api/metatileentity/CoverableTileEntity.java b/src/main/java/gregtech/api/metatileentity/CoverableTileEntity.java index 6c61ae8599..caf3c1b15f 100644 --- a/src/main/java/gregtech/api/metatileentity/CoverableTileEntity.java +++ b/src/main/java/gregtech/api/metatileentity/CoverableTileEntity.java @@ -164,8 +164,19 @@ public abstract class CoverableTileEntity extends BaseTileEntity implements ICov if (GT_Mod.instance.isClientSide() && (GT_Client.hideValue & 0x1) != 0) { return Textures.BlockIcons.HIDDEN_TEXTURE[0]; // See through } - final ITexture coverTexture = getCoverBehaviorAtSideNew(aSide) - .getSpecialCoverTexture(aSide, getCoverIDAtSide(aSide), getComplexCoverDataAtSide(aSide), this); + GT_CoverBehaviorBase<?> coverBehavior = getCoverBehaviorAtSideNew(aSide); + final ITexture coverTexture; + if (coverBehavior != null) { + if (!(this instanceof BaseMetaPipeEntity)) { + coverTexture = coverBehavior.getSpecialCoverFGTexture( + aSide, getCoverIDAtSide(aSide), getComplexCoverDataAtSide(aSide), this); + } else { + coverTexture = coverBehavior.getSpecialCoverTexture( + aSide, getCoverIDAtSide(aSide), getComplexCoverDataAtSide(aSide), this); + } + } else { + coverTexture = null; + } return coverTexture != null ? coverTexture : GregTech_API.sCovers.get(new GT_ItemStack(getCoverIDAtSide(aSide))); diff --git a/src/main/java/gregtech/api/util/GT_CoverBehavior.java b/src/main/java/gregtech/api/util/GT_CoverBehavior.java index de1514c956..595e421147 100644 --- a/src/main/java/gregtech/api/util/GT_CoverBehavior.java +++ b/src/main/java/gregtech/api/util/GT_CoverBehavior.java @@ -3,6 +3,7 @@ package gregtech.api.util; import static gregtech.api.enums.GT_Values.E; import gregtech.api.enums.GT_Values; +import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.ICoverable; import gregtech.api.net.GT_Packet_TileEntityCoverGUI; import net.minecraft.entity.player.EntityPlayer; @@ -19,7 +20,11 @@ public abstract class GT_CoverBehavior extends GT_CoverBehaviorBase<ISerializabl public EntityPlayer lastPlayer = null; public GT_CoverBehavior() { - super(ISerializableObject.LegacyCoverData.class); + this(null); + } + + public GT_CoverBehavior(ITexture coverTexture) { + super(ISerializableObject.LegacyCoverData.class, coverTexture); } private static int convert(ISerializableObject.LegacyCoverData data) { diff --git a/src/main/java/gregtech/api/util/GT_CoverBehaviorBase.java b/src/main/java/gregtech/api/util/GT_CoverBehaviorBase.java index 470a250ee7..efbff79957 100644 --- a/src/main/java/gregtech/api/util/GT_CoverBehaviorBase.java +++ b/src/main/java/gregtech/api/util/GT_CoverBehaviorBase.java @@ -25,9 +25,15 @@ public abstract class GT_CoverBehaviorBase<T extends ISerializableObject> { public EntityPlayer lastPlayer = null; private final Class<T> typeToken; + private final ITexture coverFGTexture; protected GT_CoverBehaviorBase(Class<T> typeToken) { + this(typeToken, null); + } + + protected GT_CoverBehaviorBase(Class<T> typeToken, ITexture coverTexture) { this.typeToken = typeToken; + this.coverFGTexture = coverTexture; } public abstract T createDataObject(int aLegacyData); @@ -88,6 +94,15 @@ public abstract class GT_CoverBehaviorBase<T extends ISerializableObject> { } /** + * Get the special foreground cover texture associated with this cover. Return null if one should use the texture passed to + * {@link gregtech.api.GregTech_API#registerCover(ItemStack, ITexture, GT_CoverBehaviorBase)} or its overloads. + */ + public final ITexture getSpecialCoverFGTexture( + byte aSide, int aCoverID, ISerializableObject aCoverVariable, ICoverable aTileEntity) { + return getSpecialCoverFGTextureImpl(aSide, aCoverID, forceCast(aCoverVariable), aTileEntity); + } + + /** * Get the special cover texture associated with this cover. Return null if one should use the texture passed to * {@link gregtech.api.GregTech_API#registerCover(ItemStack, ITexture, GT_CoverBehaviorBase)} or its overloads. */ @@ -380,6 +395,11 @@ public abstract class GT_CoverBehaviorBase<T extends ISerializableObject> { return GT_Utility.intToStack(aCoverID); } + protected ITexture getSpecialCoverFGTextureImpl( + byte aSide, int aCoverID, T aCoverVariable, ICoverable aTileEntity) { + return coverFGTexture; + } + protected ITexture getSpecialCoverTextureImpl(byte aSide, int aCoverID, T aCoverVariable, ICoverable aTileEntity) { return null; } diff --git a/src/main/java/gregtech/common/covers/GT_Cover_Arm.java b/src/main/java/gregtech/common/covers/GT_Cover_Arm.java index fd4f2a684c..7d824565cb 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_Arm.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_Arm.java @@ -6,6 +6,7 @@ import gregtech.api.gui.widgets.GT_GuiFakeItemButton; import gregtech.api.gui.widgets.GT_GuiIcon; import gregtech.api.gui.widgets.GT_GuiIconButton; import gregtech.api.gui.widgets.GT_GuiIntegerTextBox; +import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.ICoverable; import gregtech.api.interfaces.tileentity.IMachineProgress; import gregtech.api.net.GT_Packet_TileEntityCover; @@ -27,7 +28,16 @@ public class GT_Cover_Arm extends GT_CoverBehavior { protected static final int SLOT_ID_MIN = 0; protected static final int CONVERTED_BIT = 0x80000000; + /** + * @deprecated use {@link #GT_Cover_Arm(int aTickRate, ITexture coverTexture)} instead + */ + @Deprecated public GT_Cover_Arm(int aTickRate) { + this(aTickRate, null); + } + + public GT_Cover_Arm(int aTickRate, ITexture coverTexture) { + super(coverTexture); this.mTickRate = aTickRate; } diff --git a/src/main/java/gregtech/common/covers/GT_Cover_ControlsWork.java b/src/main/java/gregtech/common/covers/GT_Cover_ControlsWork.java index 6fd6eb1337..dda79321c9 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_ControlsWork.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_ControlsWork.java @@ -5,6 +5,7 @@ import gregtech.api.gui.GT_GUICover; import gregtech.api.gui.widgets.GT_GuiIcon; import gregtech.api.gui.widgets.GT_GuiIconButton; import gregtech.api.gui.widgets.GT_GuiIconCheckButton; +import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.ICoverable; import gregtech.api.interfaces.tileentity.IMachineProgress; import gregtech.api.net.GT_Packet_TileEntityCover; @@ -16,6 +17,19 @@ import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.Fluid; public class GT_Cover_ControlsWork extends GT_CoverBehavior { + + /** + * @deprecated use {@link #GT_Cover_ControlsWork(ITexture coverTexture)} instead + */ + @Deprecated + public GT_Cover_ControlsWork() { + this(null); + } + + public GT_Cover_ControlsWork(ITexture coverTexture) { + super(coverTexture); + } + @Override public int doCoverThings( byte aSide, byte aInputRedstone, int aCoverID, int aCoverVariable, ICoverable aTileEntity, long aTimer) { diff --git a/src/main/java/gregtech/common/covers/GT_Cover_Conveyor.java b/src/main/java/gregtech/common/covers/GT_Cover_Conveyor.java index 592475b610..ebd87e85ab 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_Conveyor.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_Conveyor.java @@ -6,6 +6,7 @@ import gregtech.api.enums.GT_Values; import gregtech.api.gui.GT_GUICover; import gregtech.api.gui.widgets.GT_GuiIcon; import gregtech.api.gui.widgets.GT_GuiIconButton; +import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.ICoverable; import gregtech.api.interfaces.tileentity.IMachineProgress; import gregtech.api.net.GT_Packet_TileEntityCover; @@ -20,12 +21,24 @@ public class GT_Cover_Conveyor extends GT_CoverBehavior { public final int mTickRate; private final int mMaxStacks; + /** + * @deprecated use {@link #GT_Cover_Conveyor(int aTickRate, int maxStacks, ITexture coverTexture)} instead + */ + @Deprecated public GT_Cover_Conveyor(int aTickRate) { - this.mTickRate = aTickRate; - this.mMaxStacks = 1; + this(aTickRate, 1, null); } + /** + * @deprecated use {@link #GT_Cover_Conveyor(int aTickRate, int maxStacks, ITexture coverTexture)} instead + */ + @Deprecated public GT_Cover_Conveyor(int aTickRate, int maxStacks) { + this(aTickRate, maxStacks, null); + } + + public GT_Cover_Conveyor(int aTickRate, int maxStacks, ITexture coverTexture) { + super(coverTexture); this.mTickRate = aTickRate; this.mMaxStacks = maxStacks; } diff --git a/src/main/java/gregtech/common/covers/GT_Cover_Crafting.java b/src/main/java/gregtech/common/covers/GT_Cover_Crafting.java index 61f7aefed9..95d5236f60 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_Crafting.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_Crafting.java @@ -1,5 +1,6 @@ package gregtech.common.covers; +import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.ICoverable; import gregtech.api.util.GT_CoverBehavior; import net.minecraft.entity.player.EntityPlayer; @@ -8,6 +9,19 @@ import net.minecraft.inventory.ContainerWorkbench; import net.minecraft.network.play.server.S2DPacketOpenWindow; public class GT_Cover_Crafting extends GT_CoverBehavior { + + /** + * @deprecated use {@link #GT_Cover_Crafting(ITexture coverTexture)} instead + */ + @Deprecated + public GT_Cover_Crafting() { + this(null); + } + + public GT_Cover_Crafting(ITexture coverTexture) { + super(coverTexture); + } + @Override public boolean isRedstoneSensitive( byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, long aTimer) { diff --git a/src/main/java/gregtech/common/covers/GT_Cover_DoesWork.java b/src/main/java/gregtech/common/covers/GT_Cover_DoesWork.java index 54ca59b373..c37e4b5cbb 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_DoesWork.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_DoesWork.java @@ -5,6 +5,7 @@ import gregtech.api.gui.GT_GUICover; import gregtech.api.gui.widgets.GT_GuiIcon; import gregtech.api.gui.widgets.GT_GuiIconButton; import gregtech.api.gui.widgets.GT_GuiIconCheckButton; +import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.ICoverable; import gregtech.api.interfaces.tileentity.IMachineProgress; import gregtech.api.net.GT_Packet_TileEntityCover; @@ -15,6 +16,19 @@ import net.minecraft.entity.player.EntityPlayer; import net.minecraftforge.fluids.Fluid; public class GT_Cover_DoesWork extends GT_CoverBehavior { + + /** + * @deprecated use {@link #GT_Cover_DoesWork(ITexture coverTexture)} instead + */ + @Deprecated + public GT_Cover_DoesWork() { + this(null); + } + + public GT_Cover_DoesWork(ITexture coverTexture) { + super(coverTexture); + } + @Override public boolean isRedstoneSensitive( byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, long aTimer) { diff --git a/src/main/java/gregtech/common/covers/GT_Cover_Drain.java b/src/main/java/gregtech/common/covers/GT_Cover_Drain.java index c2a831cd6e..cb93df0bd2 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_Drain.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_Drain.java @@ -1,6 +1,7 @@ package gregtech.common.covers; import gregtech.api.enums.Materials; +import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.ICoverable; import gregtech.api.interfaces.tileentity.IMachineProgress; import gregtech.api.util.GT_CoverBehavior; @@ -15,6 +16,19 @@ import net.minecraftforge.fluids.IFluidBlock; import net.minecraftforge.fluids.IFluidHandler; public class GT_Cover_Drain extends GT_CoverBehavior { + + /** + * @deprecated use {@link #GT_Cover_Drain(ITexture coverTexture)} instead + */ + @Deprecated + public GT_Cover_Drain() { + this(null); + } + + public GT_Cover_Drain(ITexture coverTexture) { + super(coverTexture); + } + @Override public boolean isRedstoneSensitive( byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, long aTimer) { diff --git a/src/main/java/gregtech/common/covers/GT_Cover_EUMeter.java b/src/main/java/gregtech/common/covers/GT_Cover_EUMeter.java index 81b8fa8283..c9e7ef363a 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_EUMeter.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_EUMeter.java @@ -7,6 +7,7 @@ import gregtech.api.gui.widgets.GT_GuiIcon; import gregtech.api.gui.widgets.GT_GuiIconButton; import gregtech.api.gui.widgets.GT_GuiIconCheckButton; import gregtech.api.gui.widgets.GT_GuiIntegerTextBox; +import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.ICoverable; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; @@ -28,8 +29,17 @@ import net.minecraft.world.World; import net.minecraftforge.fluids.Fluid; public class GT_Cover_EUMeter extends GT_CoverBehaviorBase<GT_Cover_EUMeter.EUMeterData> { + + /** + * @deprecated use {@link #GT_Cover_EUMeter(ITexture coverTexture)} instead + */ + @Deprecated public GT_Cover_EUMeter() { - super(EUMeterData.class); + this(null); + } + + public GT_Cover_EUMeter(ITexture coverTexture) { + super(EUMeterData.class, coverTexture); } @Override diff --git a/src/main/java/gregtech/common/covers/GT_Cover_EnergyOnly.java b/src/main/java/gregtech/common/covers/GT_Cover_EnergyOnly.java deleted file mode 100644 index 53951ea771..0000000000 --- a/src/main/java/gregtech/common/covers/GT_Cover_EnergyOnly.java +++ /dev/null @@ -1,126 +0,0 @@ -package gregtech.common.covers; - -import gregtech.api.interfaces.tileentity.ICoverable; -import gregtech.api.interfaces.tileentity.IMachineProgress; -import gregtech.api.util.GT_CoverBehavior; -import gregtech.api.util.GT_Utility; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraftforge.fluids.Fluid; - -public class GT_Cover_EnergyOnly extends GT_CoverBehavior { - @Override - public boolean isRedstoneSensitive( - byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, long aTimer) { - return false; - } - - @Override - public int onCoverScrewdriverclick( - byte aSide, - int aCoverID, - int aCoverVariable, - ICoverable aTileEntity, - EntityPlayer aPlayer, - float aX, - float aY, - float aZ) { - aCoverVariable = (aCoverVariable + 1) % 3; - switch (aCoverVariable) { - case 0: - GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("028", "Allow")); - break; - case 1: - GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("029", "Allow (conditional)")); - break; - case 2: - GT_Utility.sendChatToPlayer(aPlayer, GT_Utility.trans("030", "Disallow (conditional)")); - break; - } - return aCoverVariable; - } - - @Override - public float getBlastProofLevel(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity) { - return 20.0F; - } - - @Override - public boolean letsRedstoneGoIn(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity) { - return false; - } - - @Override - public boolean letsRedstoneGoOut(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity) { - return false; - } - - @Override - public boolean letsEnergyIn(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity) { - if ((aCoverVariable > 1) && ((aTileEntity instanceof IMachineProgress))) { - if (((IMachineProgress) aTileEntity).isAllowedToWork()) { - return false; - } - } - return true; - } - - @Override - public boolean letsEnergyOut(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity) { - if ((aCoverVariable > 1) && ((aTileEntity instanceof IMachineProgress))) { - if (((IMachineProgress) aTileEntity).isAllowedToWork()) { - return false; - } - } - return true; - } - - @Override - public boolean letsFluidIn(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity) { - return false; - } - - @Override - public boolean letsFluidOut(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity) { - return false; - } - - @Override - public boolean letsItemsIn(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity) { - return false; - } - - @Override - public boolean letsItemsOut(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity) { - return false; - } - - @Override - public boolean isGUIClickable(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity) { - return false; - } - - @Override - public boolean manipulatesSidedRedstoneOutput( - byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity) { - return false; - } - - @Override - public boolean onCoverRightclick( - byte aSide, - int aCoverID, - int aCoverVariable, - ICoverable aTileEntity, - EntityPlayer aPlayer, - float aX, - float aY, - float aZ) { - return false; - } - - @Override - public boolean onCoverRemoval( - byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, boolean aForced) { - return true; - } -} diff --git a/src/main/java/gregtech/common/covers/GT_Cover_FacadeBase.java b/src/main/java/gregtech/common/covers/GT_Cover_FacadeBase.java index addc154cfb..1332fa66c6 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_FacadeBase.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_FacadeBase.java @@ -137,6 +137,12 @@ public abstract class GT_Cover_FacadeBase extends GT_CoverBehaviorBase<GT_Cover_ } @Override + protected ITexture getSpecialCoverFGTextureImpl( + byte aSide, int aCoverID, FacadeData aCoverVariable, ICoverable aTileEntity) { + return getSpecialCoverTextureImpl(aSide, aCoverID, aCoverVariable, aTileEntity); + } + + @Override protected ITexture getSpecialCoverTextureImpl( byte aSide, int aCoverID, FacadeData aCoverVariable, ICoverable aTileEntity) { if (GT_Utility.isStackInvalid(aCoverVariable.mStack)) return Textures.BlockIcons.ERROR_RENDERING[0]; diff --git a/src/main/java/gregtech/common/covers/GT_Cover_FluidLimiter.java b/src/main/java/gregtech/common/covers/GT_Cover_FluidLimiter.java index a6c07e71f8..0dffd08c5e 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_FluidLimiter.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_FluidLimiter.java @@ -4,6 +4,7 @@ import com.google.common.io.ByteArrayDataInput; import gregtech.api.enums.GT_Values; import gregtech.api.gui.GT_GUICover; import gregtech.api.gui.widgets.GT_GuiIntegerTextBox; +import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.ICoverable; import gregtech.api.net.GT_Packet_TileEntityCoverNew; import gregtech.api.util.GT_CoverBehaviorBase; @@ -27,8 +28,16 @@ import net.minecraftforge.fluids.IFluidHandler; */ public class GT_Cover_FluidLimiter extends GT_CoverBehaviorBase<GT_Cover_FluidLimiter.FluidLimiterData> { + /** + * @deprecated use {@link #GT_Cover_FluidLimiter(ITexture coverTexture)} instead + */ + @Deprecated public GT_Cover_FluidLimiter() { - super(FluidLimiterData.class); + this(null); + } + + public GT_Cover_FluidLimiter(ITexture coverTexture) { + super(FluidLimiterData.class, coverTexture); } @Override diff --git a/src/main/java/gregtech/common/covers/GT_Cover_FluidRegulator.java b/src/main/java/gregtech/common/covers/GT_Cover_FluidRegulator.java index 0bc34b147d..fa20d8206e 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_FluidRegulator.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_FluidRegulator.java @@ -6,6 +6,7 @@ import gregtech.api.gui.GT_GUICover; import gregtech.api.gui.widgets.GT_GuiIcon; import gregtech.api.gui.widgets.GT_GuiIconButton; import gregtech.api.gui.widgets.GT_GuiIntegerTextBox; +import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.ICoverable; import gregtech.api.interfaces.tileentity.IMachineProgress; import gregtech.api.net.GT_Packet_TileEntityCoverNew; @@ -50,8 +51,16 @@ public class GT_Cover_FluidRegulator extends GT_CoverBehaviorBase<GT_Cover_Fluid public final int mTransferRate; private boolean allowFluid = false; + /** + * @deprecated use {@link #GT_Cover_FluidRegulator(int aTransferRate, ITexture coverTexture)} instead + */ + @Deprecated public GT_Cover_FluidRegulator(int aTransferRate) { - super(FluidRegulatorData.class); + this(aTransferRate, null); + } + + public GT_Cover_FluidRegulator(int aTransferRate, ITexture coverTexture) { + super(FluidRegulatorData.class, coverTexture); if (aTransferRate > (-1 >>> (Integer.SIZE - SPEED_LENGTH))) throw new IllegalArgumentException("aTransferRate too big: " + aTransferRate); this.mTransferRate = aTransferRate; diff --git a/src/main/java/gregtech/common/covers/GT_Cover_FluidStorageMonitor.java b/src/main/java/gregtech/common/covers/GT_Cover_FluidStorageMonitor.java index a90d2f2213..8f03f7fff9 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_FluidStorageMonitor.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_FluidStorageMonitor.java @@ -19,6 +19,7 @@ import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_FLUID_STORAGE_MONIT import com.google.common.io.ByteArrayDataInput; import gregtech.api.interfaces.IIconContainer; import gregtech.api.interfaces.ITexture; +import gregtech.api.interfaces.ITextureBuilder; import gregtech.api.interfaces.tileentity.ICoverable; import gregtech.api.render.TextureFactory; import gregtech.api.util.GT_CoverBehaviorBase; @@ -44,6 +45,10 @@ import net.minecraftforge.fluids.FluidTankInfo; import net.minecraftforge.fluids.IFluidContainerItem; import net.minecraftforge.fluids.IFluidHandler; +/** + * TODO: Implement overlay rendering only with + * {@link GT_CoverBehaviorBase#getSpecialCoverFGTextureImpl(byte, int, ISerializableObject, ICoverable)} + */ public class GT_Cover_FluidStorageMonitor extends GT_CoverBehaviorBase<GT_Cover_FluidStorageMonitor.FluidStorageData> { private static final IIconContainer[] icons = new IIconContainer[] { OVERLAY_FLUID_STORAGE_MONITOR0, @@ -107,31 +112,39 @@ public class GT_Cover_FluidStorageMonitor extends GT_CoverBehaviorBase<GT_Cover_ } @Override + protected ITexture getSpecialCoverFGTextureImpl( + byte aSide, int aCoverID, FluidStorageData aCoverVariable, ICoverable aTileEntity) { + return getSpecialCoverTextureImpl(aSide, aCoverID, aCoverVariable, aTileEntity); + } + + @Override protected ITexture getSpecialCoverTextureImpl( byte aSide, int aCoverID, FluidStorageData aCoverVariable, ICoverable aTileEntity) { if (aCoverVariable.slot == -1 || aCoverVariable.fluid == null || aCoverVariable.scale == 0) { return TextureFactory.of(OVERLAY_FLUID_STORAGE_MONITOR0); } - return TextureFactory.of( - TextureFactory.of( - new IIconContainer() { - @Override - public IIcon getIcon() { - return aCoverVariable.fluid.getStillIcon(); - } - - @Override - public IIcon getOverlayIcon() { - return null; - } - - @Override - public ResourceLocation getTextureFile() { - return TextureMap.locationBlocksTexture; - } - }, - colorToRGBA(aCoverVariable.fluid.getColor())), - TextureFactory.of(icons[aCoverVariable.scale])); + final IIconContainer fluidIcon = new IIconContainer() { + @Override + public IIcon getIcon() { + return aCoverVariable.fluid.getStillIcon(); + } + + @Override + public IIcon getOverlayIcon() { + return null; + } + + @Override + public ResourceLocation getTextureFile() { + return TextureMap.locationBlocksTexture; + } + }; + + final short[] fluidRGBA = colorToRGBA(aCoverVariable.fluid.getColor()); + final ITextureBuilder fluidTextureBuilder = + TextureFactory.builder().addIcon(fluidIcon).setRGBA(fluidRGBA); + if (aCoverVariable.fluid.getLuminosity() > 0) fluidTextureBuilder.glow(); + return TextureFactory.of(fluidTextureBuilder.build(), TextureFactory.of(icons[aCoverVariable.scale])); } @Override diff --git a/src/main/java/gregtech/common/covers/GT_Cover_Fluidfilter.java b/src/main/java/gregtech/common/covers/GT_Cover_Fluidfilter.java index 1da703cbb7..ace1645a0f 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_Fluidfilter.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_Fluidfilter.java @@ -8,6 +8,7 @@ import gregtech.api.gui.GT_GUICover; import gregtech.api.gui.widgets.GT_GuiFakeItemButton; import gregtech.api.gui.widgets.GT_GuiIcon; import gregtech.api.gui.widgets.GT_GuiIconButton; +import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.ICoverable; import gregtech.api.net.GT_Packet_TileEntityCoverNew; import gregtech.api.util.GT_CoverBehaviorBase; @@ -39,8 +40,16 @@ public class GT_Cover_Fluidfilter extends GT_CoverBehaviorBase<GT_Cover_Fluidfil private final int ANY_INPUT_FILTER_OUTPUT = 6; // 110 private final int ANY_INPUT_INVERT_OUTPUT = 7; // 111 - public GT_Cover_Fluidfilter() { - super(FluidFilterData.class); + /** + * @deprecated use {@link #GT_Cover_Fluidfilter(ITexture coverTexture)} instead + */ + @Deprecated + GT_Cover_Fluidfilter() { + this(null); + } + + public GT_Cover_Fluidfilter(ITexture coverTexture) { + super(FluidFilterData.class, coverTexture); } @Override diff --git a/src/main/java/gregtech/common/covers/GT_Cover_ItemFilter.java b/src/main/java/gregtech/common/covers/GT_Cover_ItemFilter.java index b50cdb7194..aee762f36c 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_ItemFilter.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_ItemFilter.java @@ -10,6 +10,7 @@ import gregtech.api.gui.GT_GUICover; import gregtech.api.gui.widgets.GT_GuiFakeItemButton; import gregtech.api.gui.widgets.GT_GuiIcon; import gregtech.api.gui.widgets.GT_GuiIconCheckButton; +import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.ICoverable; import gregtech.api.net.GT_Packet_TileEntityCoverNew; import gregtech.api.util.GT_CoverBehaviorBase; @@ -34,8 +35,16 @@ public class GT_Cover_ItemFilter extends GT_CoverBehaviorBase<GT_Cover_ItemFilte private final boolean mExport; + /** + * @deprecated use {@link #GT_Cover_ItemFilter(boolean isExport, ITexture coverTexture)} instead + */ + @Deprecated public GT_Cover_ItemFilter(boolean isExport) { - super(ItemFilterData.class); + this(isExport, null); + } + + public GT_Cover_ItemFilter(boolean isExport, ITexture coverTexture) { + super(ItemFilterData.class, coverTexture); this.mExport = isExport; } diff --git a/src/main/java/gregtech/common/covers/GT_Cover_ItemMeter.java b/src/main/java/gregtech/common/covers/GT_Cover_ItemMeter.java index 4b66c2eaab..82dffaf7a8 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_ItemMeter.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_ItemMeter.java @@ -8,6 +8,7 @@ import gregtech.api.gui.widgets.GT_GuiFakeItemButton; import gregtech.api.gui.widgets.GT_GuiIcon; import gregtech.api.gui.widgets.GT_GuiIconCheckButton; import gregtech.api.gui.widgets.GT_GuiIntegerTextBox; +import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.ICoverable; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; @@ -36,8 +37,16 @@ public class GT_Cover_ItemMeter extends GT_CoverBehaviorBase<GT_Cover_ItemMeter. private static final int CONVERTED_BIT = 0x80000000; private static final int INVERT_BIT = 0x40000000; + /** + * @deprecated use {@link #GT_Cover_ItemMeter(ITexture coverTexture)} instead + */ + @Deprecated public GT_Cover_ItemMeter() { - super(ItemMeterData.class); + this(null); + } + + public GT_Cover_ItemMeter(ITexture coverTexture) { + super(ItemMeterData.class, coverTexture); } @Override diff --git a/src/main/java/gregtech/common/covers/GT_Cover_Lens.java b/src/main/java/gregtech/common/covers/GT_Cover_Lens.java index 735959e15c..b8675bf1c2 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_Lens.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_Lens.java @@ -1,12 +1,22 @@ package gregtech.common.covers; +import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.ICoverable; import gregtech.api.util.GT_CoverBehavior; public class GT_Cover_Lens extends GT_CoverBehavior { private final byte mColor; + /** + * @deprecated use {@link #GT_Cover_Lens(byte aColor, ITexture coverTexture)} instead. + */ + @Deprecated public GT_Cover_Lens(byte aColor) { + this(aColor, null); + } + + public GT_Cover_Lens(byte aColor, ITexture coverTexture) { + super(coverTexture); this.mColor = aColor; } diff --git a/src/main/java/gregtech/common/covers/GT_Cover_LiquidMeter.java b/src/main/java/gregtech/common/covers/GT_Cover_LiquidMeter.java index 55cca29704..ce795bdd09 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_LiquidMeter.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_LiquidMeter.java @@ -6,6 +6,7 @@ import gregtech.api.gui.GT_GUICover; import gregtech.api.gui.widgets.GT_GuiIcon; import gregtech.api.gui.widgets.GT_GuiIconCheckButton; import gregtech.api.gui.widgets.GT_GuiIntegerTextBox; +import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.ICoverable; import gregtech.api.net.GT_Packet_TileEntityCoverNew; import gregtech.api.util.GT_CoverBehaviorBase; @@ -26,10 +27,14 @@ import net.minecraftforge.fluids.FluidStack; import net.minecraftforge.fluids.FluidTankInfo; import net.minecraftforge.fluids.IFluidHandler; +/** + * TODO: Implement overlay rendering only with + * {@link GT_CoverBehaviorBase#getSpecialCoverFGTextureImpl(byte, int, ISerializableObject, ICoverable)} + */ public class GT_Cover_LiquidMeter extends GT_CoverBehaviorBase<GT_Cover_LiquidMeter.LiquidMeterData> { - public GT_Cover_LiquidMeter() { - super(LiquidMeterData.class); + public GT_Cover_LiquidMeter(ITexture coverTexture) { + super(LiquidMeterData.class, coverTexture); } @Override diff --git a/src/main/java/gregtech/common/covers/GT_Cover_NeedMaintainance.java b/src/main/java/gregtech/common/covers/GT_Cover_NeedMaintainance.java index baf3c6232f..369778ef12 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_NeedMaintainance.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_NeedMaintainance.java @@ -4,6 +4,7 @@ import gregtech.api.enums.GT_Values; import gregtech.api.gui.GT_GUICover; import gregtech.api.gui.widgets.GT_GuiIcon; import gregtech.api.gui.widgets.GT_GuiIconCheckButton; +import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.ICoverable; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; @@ -18,6 +19,19 @@ import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.Fluid; public class GT_Cover_NeedMaintainance extends GT_CoverBehavior { + + /** + * @deprecated use {@link #GT_Cover_NeedMaintainance(ITexture coverTexture)} instead + */ + @Deprecated + public GT_Cover_NeedMaintainance() { + this(null); + } + + public GT_Cover_NeedMaintainance(ITexture coverTexture) { + super(coverTexture); + } + private boolean isRotor(ItemStack aRotor) { return !(aRotor == null || !(aRotor.getItem() instanceof GT_MetaGenerated_Tool) diff --git a/src/main/java/gregtech/common/covers/GT_Cover_PlayerDetector.java b/src/main/java/gregtech/common/covers/GT_Cover_PlayerDetector.java index a0f2d830c0..338a214ada 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_PlayerDetector.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_PlayerDetector.java @@ -4,6 +4,7 @@ import gregtech.api.enums.GT_Values; import gregtech.api.gui.GT_GUICover; import gregtech.api.gui.widgets.GT_GuiIcon; import gregtech.api.gui.widgets.GT_GuiIconCheckButton; +import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.ICoverable; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.net.GT_Packet_TileEntityCover; @@ -19,6 +20,18 @@ public class GT_Cover_PlayerDetector extends GT_CoverBehavior { private String placer = ""; private int range = 8; + /** + * @deprecated use {@link #GT_Cover_PlayerDetector(ITexture coverTexture)} instead + */ + @Deprecated + public GT_Cover_PlayerDetector() { + this(null); + } + + public GT_Cover_PlayerDetector(ITexture coverTexture) { + super(coverTexture); + } + @Override public boolean isRedstoneSensitive( byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, long aTimer) { diff --git a/src/main/java/gregtech/common/covers/GT_Cover_Pump.java b/src/main/java/gregtech/common/covers/GT_Cover_Pump.java index 269788cb6d..db60cfa409 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_Pump.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_Pump.java @@ -4,6 +4,7 @@ import gregtech.api.enums.GT_Values; import gregtech.api.gui.GT_GUICover; import gregtech.api.gui.widgets.GT_GuiIcon; import gregtech.api.gui.widgets.GT_GuiIconButton; +import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.ICoverable; import gregtech.api.interfaces.tileentity.IMachineProgress; import gregtech.api.net.GT_Packet_TileEntityCover; @@ -19,7 +20,16 @@ import net.minecraftforge.fluids.IFluidHandler; public class GT_Cover_Pump extends GT_CoverBehavior { public final int mTransferRate; + /** + * @deprecated use {@link #GT_Cover_Pump(int aTransferRate, ITexture coverTexture)} instead + */ + @Deprecated public GT_Cover_Pump(int aTransferRate) { + this(aTransferRate, null); + } + + public GT_Cover_Pump(int aTransferRate, ITexture coverTexture) { + super(coverTexture); this.mTransferRate = aTransferRate; } diff --git a/src/main/java/gregtech/common/covers/GT_Cover_RedstoneConductor.java b/src/main/java/gregtech/common/covers/GT_Cover_RedstoneConductor.java index 06e0ec4001..4be44136e6 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_RedstoneConductor.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_RedstoneConductor.java @@ -1,12 +1,18 @@ package gregtech.common.covers; +import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.ICoverable; import gregtech.api.util.GT_CoverBehavior; import gregtech.api.util.GT_Utility; import net.minecraft.entity.player.EntityPlayer; import net.minecraftforge.fluids.Fluid; +@SuppressWarnings("unused") // Legacy from GT4. TODO: Consider re-enable registration public class GT_Cover_RedstoneConductor extends GT_CoverBehavior { + GT_Cover_RedstoneConductor(ITexture coverTexture) { + super(coverTexture); + } + @Override public boolean isRedstoneSensitive( byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, long aTimer) { diff --git a/src/main/java/gregtech/common/covers/GT_Cover_RedstoneReceiverExternal.java b/src/main/java/gregtech/common/covers/GT_Cover_RedstoneReceiverExternal.java index 374f5a0a81..17d6b2e1c9 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_RedstoneReceiverExternal.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_RedstoneReceiverExternal.java @@ -1,9 +1,23 @@ package gregtech.common.covers; import gregtech.api.GregTech_API; +import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.ICoverable; public class GT_Cover_RedstoneReceiverExternal extends GT_Cover_RedstoneWirelessBase { + + /** + * @deprecated use {@link #GT_Cover_RedstoneReceiverExternal(ITexture coverTexture)} instead + */ + @Deprecated + public GT_Cover_RedstoneReceiverExternal() { + this(null); + } + + public GT_Cover_RedstoneReceiverExternal(ITexture coverTexture) { + super(coverTexture); + } + @Override public boolean isRedstoneSensitive( byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, long aTimer) { diff --git a/src/main/java/gregtech/common/covers/GT_Cover_RedstoneReceiverInternal.java b/src/main/java/gregtech/common/covers/GT_Cover_RedstoneReceiverInternal.java index 61dcb5a602..32bbd17d7f 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_RedstoneReceiverInternal.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_RedstoneReceiverInternal.java @@ -1,10 +1,24 @@ package gregtech.common.covers; import gregtech.api.GregTech_API; +import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.ICoverable; import gregtech.api.interfaces.tileentity.IMachineProgress; public class GT_Cover_RedstoneReceiverInternal extends GT_Cover_RedstoneWirelessBase { + + /** + * @deprecated use {@link #GT_Cover_RedstoneReceiverInternal(ITexture coverTexture)} instead + */ + @Deprecated + public GT_Cover_RedstoneReceiverInternal() { + this(null); + } + + public GT_Cover_RedstoneReceiverInternal(ITexture coverTexture) { + super(coverTexture); + } + @Override public int doCoverThings( byte aSide, byte aInputRedstone, int aCoverID, int aCoverVariable, ICoverable aTileEntity, long aTimer) { diff --git a/src/main/java/gregtech/common/covers/GT_Cover_RedstoneSignalizer.java b/src/main/java/gregtech/common/covers/GT_Cover_RedstoneSignalizer.java index d4ec0a82d6..31a542a924 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_RedstoneSignalizer.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_RedstoneSignalizer.java @@ -1,5 +1,6 @@ package gregtech.common.covers; +import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.ICoverable; import gregtech.api.interfaces.tileentity.IMachineProgress; import gregtech.api.util.GT_CoverBehavior; @@ -7,7 +8,12 @@ import gregtech.api.util.GT_Utility; import net.minecraft.entity.player.EntityPlayer; import net.minecraftforge.fluids.Fluid; +@SuppressWarnings("unused") // TODO: Consider re-registering this public class GT_Cover_RedstoneSignalizer extends GT_CoverBehavior { + GT_Cover_RedstoneSignalizer(ITexture coverTexture) { + super(coverTexture); + } + @Override public boolean isRedstoneSensitive( byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, long aTimer) { diff --git a/src/main/java/gregtech/common/covers/GT_Cover_RedstoneTransmitterExternal.java b/src/main/java/gregtech/common/covers/GT_Cover_RedstoneTransmitterExternal.java index 0c89d7e6e4..1c6623baa7 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_RedstoneTransmitterExternal.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_RedstoneTransmitterExternal.java @@ -1,13 +1,27 @@ package gregtech.common.covers; import gregtech.api.GregTech_API; +import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.ICoverable; public class GT_Cover_RedstoneTransmitterExternal extends GT_Cover_RedstoneWirelessBase { + + /** + * @deprecated use {@link #GT_Cover_RedstoneTransmitterExternal(ITexture coverTexture)} instead + */ + @Deprecated + public GT_Cover_RedstoneTransmitterExternal() { + this(null); + } + + public GT_Cover_RedstoneTransmitterExternal(ITexture coverTexture) { + super(coverTexture); + } + @Override public int doCoverThings( byte aSide, byte aInputRedstone, int aCoverID, int aCoverVariable, ICoverable aTileEntity, long aTimer) { - GregTech_API.sWirelessRedstone.put(Integer.valueOf(aCoverVariable), Byte.valueOf(aInputRedstone)); + GregTech_API.sWirelessRedstone.put(aCoverVariable, aInputRedstone); return aCoverVariable; } diff --git a/src/main/java/gregtech/common/covers/GT_Cover_RedstoneTransmitterInternal.java b/src/main/java/gregtech/common/covers/GT_Cover_RedstoneTransmitterInternal.java index 0003e063b3..a1f020c40c 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_RedstoneTransmitterInternal.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_RedstoneTransmitterInternal.java @@ -1,9 +1,23 @@ package gregtech.common.covers; import gregtech.api.GregTech_API; +import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.ICoverable; public class GT_Cover_RedstoneTransmitterInternal extends GT_Cover_RedstoneWirelessBase { + + /** + * @deprecated use {@link #GT_Cover_RedstoneTransmitterInternal(ITexture coverTexture)} instead + */ + @Deprecated + public GT_Cover_RedstoneTransmitterInternal() { + this(null); + } + + public GT_Cover_RedstoneTransmitterInternal(ITexture coverTexture) { + super(coverTexture); + } + @Override public boolean isRedstoneSensitive( byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, long aTimer) { diff --git a/src/main/java/gregtech/common/covers/GT_Cover_RedstoneWirelessBase.java b/src/main/java/gregtech/common/covers/GT_Cover_RedstoneWirelessBase.java index 02f4786dee..a942d39b57 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_RedstoneWirelessBase.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_RedstoneWirelessBase.java @@ -7,6 +7,7 @@ import gregtech.api.gui.widgets.GT_GuiIcon; import gregtech.api.gui.widgets.GT_GuiIconCheckButton; import gregtech.api.gui.widgets.GT_GuiIntegerTextBox; import gregtech.api.interfaces.IGuiScreen; +import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.ICoverable; import gregtech.api.net.GT_Packet_WirelessRedstoneCover; import gregtech.api.util.GT_CoverBehavior; @@ -23,6 +24,18 @@ public abstract class GT_Cover_RedstoneWirelessBase extends GT_CoverBehavior { private static final int PUBLIC_MASK = 0x0000FFFF; private static final int CHECKBOX_MASK = 0x00010000; + /** + * @deprecated use {@link #GT_Cover_RedstoneWirelessBase(ITexture coverTexture)} instead + */ + @Deprecated + public GT_Cover_RedstoneWirelessBase() { + this(null); + } + + public GT_Cover_RedstoneWirelessBase(ITexture coverTexture) { + super(coverTexture); + } + @Override public boolean onCoverRemoval( byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, boolean aForced) { diff --git a/src/main/java/gregtech/common/covers/GT_Cover_Screen.java b/src/main/java/gregtech/common/covers/GT_Cover_Screen.java index 393f5ee4b4..84fc84d820 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_Screen.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_Screen.java @@ -1,11 +1,25 @@ package gregtech.common.covers; +import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.ICoverable; import gregtech.api.util.GT_CoverBehavior; import net.minecraft.entity.player.EntityPlayer; import net.minecraftforge.fluids.Fluid; public class GT_Cover_Screen extends GT_CoverBehavior { + + /** + * @deprecated use {@link #GT_Cover_Screen(ITexture coverTexture)} instead + */ + @Deprecated + public GT_Cover_Screen() { + this(null); + } + + public GT_Cover_Screen(ITexture coverTexture) { + super(coverTexture); + } + @Override public boolean isRedstoneSensitive( byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, long aTimer) { diff --git a/src/main/java/gregtech/common/covers/GT_Cover_Shutter.java b/src/main/java/gregtech/common/covers/GT_Cover_Shutter.java index 9a2ceac09b..2b15359d64 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_Shutter.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_Shutter.java @@ -4,6 +4,7 @@ import gregtech.api.enums.GT_Values; import gregtech.api.gui.GT_GUICover; import gregtech.api.gui.widgets.GT_GuiIcon; import gregtech.api.gui.widgets.GT_GuiIconCheckButton; +import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.ICoverable; import gregtech.api.interfaces.tileentity.IMachineProgress; import gregtech.api.metatileentity.BaseMetaPipeEntity; @@ -16,6 +17,18 @@ import net.minecraftforge.fluids.Fluid; public class GT_Cover_Shutter extends GT_CoverBehavior { + /** + * @deprecated use {@link #GT_Cover_Shutter(ITexture coverTexture)} instead + */ + @Deprecated + public GT_Cover_Shutter() { + this(null); + } + + public GT_Cover_Shutter(ITexture coverTexture) { + super(coverTexture); + } + @Override public boolean isRedstoneSensitive( byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, long aTimer) { diff --git a/src/main/java/gregtech/common/covers/GT_Cover_SteamValve.java b/src/main/java/gregtech/common/covers/GT_Cover_SteamValve.java index 068576e8ca..30c48fdf56 100644 --- a/src/main/java/gregtech/common/covers/GT_Cover_SteamValve.java +++ b/src/main/java/gregtech/common/covers/GT_Cover_SteamValve.java @@ -1,13 +1,22 @@ package gregtech.common.covers; +import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.ICoverable; import gregtech.api.util.GT_ModHandler; import net.minecraftforge.fluids.FluidStack; public class GT_Cover_SteamValve extends GT_Cover_Pump { + /** + * @deprecated use {@link #GT_Cover_SteamValve(int aTransferRate, ITexture coverTexture)} instead + */ + @Deprecated public GT_Cover_SteamValve(int aTransferRate) { - super(aTransferRate); + this(aTransferRate, null); + } + + public GT_Cover_SteamValve(int aTransferRate, ITexture coverTexture) { + super(aTransferRate, coverTexture); } @Override diff --git a/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_01.java b/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_01.java index df979e2b3e..aa54520d02 100644 --- a/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_01.java +++ b/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_01.java @@ -13,6 +13,7 @@ import gregtech.api.enums.OrePrefixes; import gregtech.api.enums.SubTag; import gregtech.api.enums.TC_Aspects; import gregtech.api.interfaces.IItemBehaviour; +import gregtech.api.interfaces.ITexture; import gregtech.api.items.GT_MetaBase_Item; import gregtech.api.items.GT_MetaGenerated_Item_X32; import gregtech.api.objects.ItemData; @@ -2661,43 +2662,43 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 { GregTech_API.registerCover( ItemList.Electric_Pump_LV.get(1L), TextureFactory.of(MACHINE_CASINGS[1][0], TextureFactory.of(OVERLAY_PUMP)), - new GT_Cover_Pump(32)); + new GT_Cover_Pump(32, TextureFactory.of(OVERLAY_PUMP))); GregTech_API.registerCover( ItemList.Electric_Pump_MV.get(1L), TextureFactory.of(MACHINE_CASINGS[2][0], TextureFactory.of(OVERLAY_PUMP)), - new GT_Cover_Pump(128)); + new GT_Cover_Pump(128, TextureFactory.of(OVERLAY_PUMP))); GregTech_API.registerCover( ItemList.Electric_Pump_HV.get(1L), TextureFactory.of(MACHINE_CASINGS[3][0], TextureFactory.of(OVERLAY_PUMP)), - new GT_Cover_Pump(512)); + new GT_Cover_Pump(512, TextureFactory.of(OVERLAY_PUMP))); GregTech_API.registerCover( ItemList.Electric_Pump_EV.get(1L), TextureFactory.of(MACHINE_CASINGS[4][0], TextureFactory.of(OVERLAY_PUMP)), - new GT_Cover_Pump(2048)); + new GT_Cover_Pump(2048, TextureFactory.of(OVERLAY_PUMP))); GregTech_API.registerCover( ItemList.Electric_Pump_IV.get(1L), TextureFactory.of(MACHINE_CASINGS[5][0], TextureFactory.of(OVERLAY_PUMP)), - new GT_Cover_Pump(8192)); + new GT_Cover_Pump(8192, TextureFactory.of(OVERLAY_PUMP))); GregTech_API.registerCover( ItemList.Electric_Pump_LuV.get(1L), TextureFactory.of(MACHINE_CASINGS[6][0], TextureFactory.of(OVERLAY_PUMP)), - new GT_Cover_Pump(32768)); + new GT_Cover_Pump(32768, TextureFactory.of(OVERLAY_PUMP))); GregTech_API.registerCover( ItemList.Electric_Pump_ZPM.get(1L), TextureFactory.of(MACHINE_CASINGS[7][0], TextureFactory.of(OVERLAY_PUMP)), - new GT_Cover_Pump(131072)); + new GT_Cover_Pump(131072, TextureFactory.of(OVERLAY_PUMP))); GregTech_API.registerCover( ItemList.Electric_Pump_UV.get(1L), TextureFactory.of(MACHINE_CASINGS[8][0], TextureFactory.of(OVERLAY_PUMP)), - new GT_Cover_Pump(524288)); + new GT_Cover_Pump(524288, TextureFactory.of(OVERLAY_PUMP))); GregTech_API.registerCover( ItemList.Electric_Pump_UHV.get(1L), TextureFactory.of(MACHINE_CASINGS[9][0], TextureFactory.of(OVERLAY_PUMP)), - new GT_Cover_Pump(1048576)); + new GT_Cover_Pump(1048576, TextureFactory.of(OVERLAY_PUMP))); GregTech_API.registerCover( ItemList.Electric_Pump_UEV.get(1L), TextureFactory.of(MACHINE_CASINGS[10][0], TextureFactory.of(OVERLAY_PUMP)), - new GT_Cover_Pump(2097152)); + new GT_Cover_Pump(2097152, TextureFactory.of(OVERLAY_PUMP))); GT_ModHandler.addCraftingRecipe( ItemList.Electric_Pump_LV.get(1L), @@ -2854,23 +2855,23 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 { GregTech_API.registerCover( ItemList.Steam_Valve_LV.get(1L), TextureFactory.of(MACHINE_CASINGS[1][0], TextureFactory.of(OVERLAY_VALVE)), - new GT_Cover_SteamValve(1024)); + new GT_Cover_SteamValve(102, TextureFactory.of(OVERLAY_VALVE))); GregTech_API.registerCover( ItemList.Steam_Valve_MV.get(1L), TextureFactory.of(MACHINE_CASINGS[2][0], TextureFactory.of(OVERLAY_VALVE)), - new GT_Cover_SteamValve(2048)); + new GT_Cover_SteamValve(2048, TextureFactory.of(OVERLAY_VALVE))); GregTech_API.registerCover( ItemList.Steam_Valve_HV.get(1L), TextureFactory.of(MACHINE_CASINGS[3][0], TextureFactory.of(OVERLAY_VALVE)), - new GT_Cover_SteamValve(4096)); + new GT_Cover_SteamValve(4096, TextureFactory.of(OVERLAY_VALVE))); GregTech_API.registerCover( ItemList.Steam_Valve_EV.get(1L), TextureFactory.of(MACHINE_CASINGS[4][0], TextureFactory.of(OVERLAY_VALVE)), - new GT_Cover_SteamValve(8192)); + new GT_Cover_SteamValve(8192, TextureFactory.of(OVERLAY_VALVE))); GregTech_API.registerCover( ItemList.Steam_Valve_IV.get(1L), TextureFactory.of(MACHINE_CASINGS[5][0], TextureFactory.of(OVERLAY_VALVE)), - new GT_Cover_SteamValve(16384)); + new GT_Cover_SteamValve(16384, TextureFactory.of(OVERLAY_VALVE))); ItemList.FluidRegulator_LV.set( addItem(tLastID = 660, "Fluid Regulator (LV)", FRText1 + GT_Utility.formatNumbers(640) + FRText2)); @@ -2892,42 +2893,42 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 { GregTech_API.registerCover( ItemList.FluidRegulator_LV.get(1L), TextureFactory.of(MACHINE_CASINGS[1][0], TextureFactory.of(OVERLAY_PUMP)), - new GT_Cover_FluidRegulator(32)); + new GT_Cover_FluidRegulator(32, TextureFactory.of(OVERLAY_PUMP))); GregTech_API.registerCover( ItemList.FluidRegulator_MV.get(1L), TextureFactory.of(MACHINE_CASINGS[2][0], TextureFactory.of(OVERLAY_PUMP)), - new GT_Cover_FluidRegulator(128)); + new GT_Cover_FluidRegulator(128, TextureFactory.of(OVERLAY_PUMP))); GregTech_API.registerCover( ItemList.FluidRegulator_HV.get(1L), TextureFactory.of(MACHINE_CASINGS[3][0], TextureFactory.of(OVERLAY_PUMP)), - new GT_Cover_FluidRegulator(512)); + new GT_Cover_FluidRegulator(512, TextureFactory.of(OVERLAY_PUMP))); GregTech_API.registerCover( ItemList.FluidRegulator_EV.get(1L), TextureFactory.of(MACHINE_CASINGS[4][0], TextureFactory.of(OVERLAY_PUMP)), - new GT_Cover_FluidRegulator(2048)); + new GT_Cover_FluidRegulator(2048, TextureFactory.of(OVERLAY_PUMP))); GregTech_API.registerCover( ItemList.FluidRegulator_IV.get(1L), TextureFactory.of(MACHINE_CASINGS[5][0], TextureFactory.of(OVERLAY_PUMP)), - new GT_Cover_FluidRegulator(8192)); + new GT_Cover_FluidRegulator(8192, TextureFactory.of(OVERLAY_PUMP))); GregTech_API.registerCover( ItemList.FluidRegulator_LuV.get(1L), TextureFactory.of(MACHINE_CASINGS[6][0], TextureFactory.of(OVERLAY_PUMP)), - new GT_Cover_FluidRegulator(32768)); + new GT_Cover_FluidRegulator(32768, TextureFactory.of(OVERLAY_PUMP))); GregTech_API.registerCover( ItemList.FluidRegulator_ZPM.get(1L), TextureFactory.of(MACHINE_CASINGS[7][0], TextureFactory.of(OVERLAY_PUMP)), - new GT_Cover_FluidRegulator(131072)); + new GT_Cover_FluidRegulator(131072, TextureFactory.of(OVERLAY_PUMP))); GregTech_API.registerCover( ItemList.FluidRegulator_UV.get(1L), TextureFactory.of(MACHINE_CASINGS[8][0], TextureFactory.of(OVERLAY_PUMP)), - new GT_Cover_FluidRegulator(524288)); + new GT_Cover_FluidRegulator(524288, TextureFactory.of(OVERLAY_PUMP))); ItemList.FluidFilter.set( addItem(669, "Fluid Filter Cover", "Set with Fluid Container to only accept one Fluid Type")); GregTech_API.registerCover( ItemList.FluidFilter.get(1L), TextureFactory.of(MACHINE_CASINGS[1][0], TextureFactory.of(OVERLAY_SHUTTER)), - new GT_Cover_Fluidfilter()); + new GT_Cover_Fluidfilter(TextureFactory.of(OVERLAY_SHUTTER))); ItemList.ItemFilter_Export.set(addItem( 270, "Item Filter Cover (Export)", @@ -2935,7 +2936,7 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 { GregTech_API.registerCover( ItemList.ItemFilter_Export.get(1L), TextureFactory.of(MACHINE_CASINGS[5][0], TextureFactory.of(OVERLAY_CONVEYOR)), - new GT_Cover_ItemFilter(true)); + new GT_Cover_ItemFilter(true, TextureFactory.of(OVERLAY_CONVEYOR))); ItemList.ItemFilter_Import.set(addItem( 271, "Item Filter Cover (Import)", @@ -2943,13 +2944,13 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 { GregTech_API.registerCover( ItemList.ItemFilter_Import.get(1L), TextureFactory.of(MACHINE_CASINGS[5][0], TextureFactory.of(OVERLAY_CONVEYOR)), - new GT_Cover_ItemFilter(false)); + new GT_Cover_ItemFilter(false, TextureFactory.of(OVERLAY_CONVEYOR))); ItemList.Cover_FluidLimiter.set( addItem(272, "Fluid Limiter Cover", "Limits fluid input depending on fill level")); GregTech_API.registerCover( ItemList.Cover_FluidLimiter.get(1L), TextureFactory.of(MACHINE_CASINGS[1][0], TextureFactory.of(OVERLAY_SHUTTER)), - new GT_Cover_FluidLimiter()); + new GT_Cover_FluidLimiter(TextureFactory.of(OVERLAY_SHUTTER))); ItemList.Conveyor_Module_LV.set(addItem( 630, @@ -3134,43 +3135,43 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 { GregTech_API.registerCover( ItemList.Conveyor_Module_LV.get(1L), TextureFactory.of(MACHINE_CASINGS[1][0], TextureFactory.of(OVERLAY_CONVEYOR)), - new GT_Cover_Conveyor(400, 1)); + new GT_Cover_Conveyor(400, 1, TextureFactory.of(OVERLAY_CONVEYOR))); GregTech_API.registerCover( ItemList.Conveyor_Module_MV.get(1L), TextureFactory.of(MACHINE_CASINGS[2][0], TextureFactory.of(OVERLAY_CONVEYOR)), - new GT_Cover_Conveyor(100, 1)); + new GT_Cover_Conveyor(100, 1, TextureFactory.of(OVERLAY_CONVEYOR))); GregTech_API.registerCover( ItemList.Conveyor_Module_HV.get(1L), TextureFactory.of(MACHINE_CASINGS[3][0], TextureFactory.of(OVERLAY_CONVEYOR)), - new GT_Cover_Conveyor(20, 1)); + new GT_Cover_Conveyor(20, 1, TextureFactory.of(OVERLAY_CONVEYOR))); GregTech_API.registerCover( ItemList.Conveyor_Module_EV.get(1L), TextureFactory.of(MACHINE_CASINGS[4][0], TextureFactory.of(OVERLAY_CONVEYOR)), - new GT_Cover_Conveyor(4, 1)); + new GT_Cover_Conveyor(4, 1, TextureFactory.of(OVERLAY_CONVEYOR))); GregTech_API.registerCover( ItemList.Conveyor_Module_IV.get(1L), TextureFactory.of(MACHINE_CASINGS[5][0], TextureFactory.of(OVERLAY_CONVEYOR)), - new GT_Cover_Conveyor(1, 1)); + new GT_Cover_Conveyor(1, 1, TextureFactory.of(OVERLAY_CONVEYOR))); GregTech_API.registerCover( ItemList.Conveyor_Module_LuV.get(1L), TextureFactory.of(MACHINE_CASINGS[6][0], TextureFactory.of(OVERLAY_CONVEYOR)), - new GT_Cover_Conveyor(1, 2)); + new GT_Cover_Conveyor(1, 2, TextureFactory.of(OVERLAY_CONVEYOR))); GregTech_API.registerCover( ItemList.Conveyor_Module_ZPM.get(1L), TextureFactory.of(MACHINE_CASINGS[7][0], TextureFactory.of(OVERLAY_CONVEYOR)), - new GT_Cover_Conveyor(1, 4)); + new GT_Cover_Conveyor(1, 4, TextureFactory.of(OVERLAY_CONVEYOR))); GregTech_API.registerCover( ItemList.Conveyor_Module_UV.get(1L), TextureFactory.of(MACHINE_CASINGS[8][0], TextureFactory.of(OVERLAY_CONVEYOR)), - new GT_Cover_Conveyor(1, 8)); + new GT_Cover_Conveyor(1, 8, TextureFactory.of(OVERLAY_CONVEYOR))); GregTech_API.registerCover( ItemList.Conveyor_Module_UHV.get(1L), TextureFactory.of(MACHINE_CASINGS[9][0], TextureFactory.of(OVERLAY_CONVEYOR)), - new GT_Cover_Conveyor(1, 16)); + new GT_Cover_Conveyor(1, 16, TextureFactory.of(OVERLAY_CONVEYOR))); GregTech_API.registerCover( ItemList.Conveyor_Module_UEV.get(1L), TextureFactory.of(MACHINE_CASINGS[10][0], TextureFactory.of(OVERLAY_CONVEYOR)), - new GT_Cover_Conveyor(1, 32)); + new GT_Cover_Conveyor(1, 32, TextureFactory.of(OVERLAY_CONVEYOR))); ItemList.Robot_Arm_LV.set(addItem( 650, @@ -3389,23 +3390,23 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 { GregTech_API.registerCover( ItemList.Robot_Arm_LV.get(1L), TextureFactory.of(MACHINE_CASINGS[1][0], TextureFactory.of(OVERLAY_ARM)), - new GT_Cover_Arm(400)); + new GT_Cover_Arm(400, TextureFactory.of(OVERLAY_ARM))); GregTech_API.registerCover( ItemList.Robot_Arm_MV.get(1L), TextureFactory.of(MACHINE_CASINGS[2][0], TextureFactory.of(OVERLAY_ARM)), - new GT_Cover_Arm(100)); + new GT_Cover_Arm(100, TextureFactory.of(OVERLAY_ARM))); GregTech_API.registerCover( ItemList.Robot_Arm_HV.get(1L), TextureFactory.of(MACHINE_CASINGS[3][0], TextureFactory.of(OVERLAY_ARM)), - new GT_Cover_Arm(20)); + new GT_Cover_Arm(20, TextureFactory.of(OVERLAY_ARM))); GregTech_API.registerCover( ItemList.Robot_Arm_EV.get(1L), TextureFactory.of(MACHINE_CASINGS[4][0], TextureFactory.of(OVERLAY_ARM)), - new GT_Cover_Arm(4)); + new GT_Cover_Arm(4, TextureFactory.of(OVERLAY_ARM))); GregTech_API.registerCover( ItemList.Robot_Arm_IV.get(1L), TextureFactory.of(MACHINE_CASINGS[5][0], TextureFactory.of(OVERLAY_ARM)), - new GT_Cover_Arm(1)); + new GT_Cover_Arm(1, TextureFactory.of(OVERLAY_ARM))); ItemList.QuantumEye.set(addItem(tLastID = 724, "Quantum Eye", "Improved Ender Eye")); ItemList.QuantumStar.set(addItem(tLastID = 725, "Quantum Star", "Improved Nether Star")); @@ -4240,41 +4241,41 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 { GregTech_API.registerCover( ItemList.Cover_Controller.get(1L), TextureFactory.of(MACHINE_CASINGS[2][0], TextureFactory.of(OVERLAY_CONTROLLER)), - new GT_Cover_ControlsWork()); + new GT_Cover_ControlsWork(TextureFactory.of(OVERLAY_CONTROLLER))); + + final ITexture doesWorkCoverTexture = TextureFactory.of( + TextureFactory.of(OVERLAY_ACTIVITYDETECTOR), + TextureFactory.builder() + .addIcon(OVERLAY_ACTIVITYDETECTOR_GLOW) + .glow() + .build()); GregTech_API.registerCover( ItemList.Cover_ActivityDetector.get(1L), - TextureFactory.of( - MACHINE_CASINGS[2][0], - TextureFactory.of( - TextureFactory.of(OVERLAY_ACTIVITYDETECTOR), - TextureFactory.builder() - .addIcon(OVERLAY_ACTIVITYDETECTOR_GLOW) - .glow() - .build())), - new GT_Cover_DoesWork()); + TextureFactory.of(MACHINE_CASINGS[2][0], doesWorkCoverTexture), + new GT_Cover_DoesWork(doesWorkCoverTexture)); GregTech_API.registerCover( ItemList.Cover_FluidDetector.get(1L), TextureFactory.of(MACHINE_CASINGS[2][0], TextureFactory.of(OVERLAY_FLUIDDETECTOR)), - new GT_Cover_LiquidMeter()); + new GT_Cover_LiquidMeter(TextureFactory.of(OVERLAY_FLUIDDETECTOR))); GregTech_API.registerCover( ItemList.Cover_ItemDetector.get(1L), TextureFactory.of(MACHINE_CASINGS[2][0], TextureFactory.of(OVERLAY_ITEMDETECTOR)), - new GT_Cover_ItemMeter()); + new GT_Cover_ItemMeter(TextureFactory.of(OVERLAY_ITEMDETECTOR))); GregTech_API.registerCover( ItemList.Cover_EnergyDetector.get(1L), TextureFactory.of(MACHINE_CASINGS[2][0], TextureFactory.of(OVERLAY_ENERGYDETECTOR)), - new GT_Cover_EUMeter()); + new GT_Cover_EUMeter(TextureFactory.of(OVERLAY_ENERGYDETECTOR))); + + final ITexture playerDectectorCoverTexture = TextureFactory.of( + TextureFactory.of(OVERLAY_ACTIVITYDETECTOR), + TextureFactory.builder() + .addIcon(OVERLAY_ACTIVITYDETECTOR_GLOW) + .glow() + .build()); GregTech_API.registerCover( ItemList.Cover_PlayerDetector.get(1L), - TextureFactory.of( - MACHINE_CASINGS[2][0], - TextureFactory.of( - TextureFactory.of(OVERLAY_ACTIVITYDETECTOR), - TextureFactory.builder() - .addIcon(OVERLAY_ACTIVITYDETECTOR_GLOW) - .glow() - .build())), - new GT_Cover_PlayerDetector()); + TextureFactory.of(MACHINE_CASINGS[2][0], playerDectectorCoverTexture), + new GT_Cover_PlayerDetector(playerDectectorCoverTexture)); GregTech_API.registerCover( ItemList.Cover_FluidStorageMonitor.get(1L), TextureFactory.of(OVERLAY_FLUID_STORAGE_MONITOR0), @@ -4440,29 +4441,25 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 { 1200, 128); + final ITexture screenCoverTexture = TextureFactory.of( + TextureFactory.of(OVERLAY_SCREEN), + TextureFactory.builder().addIcon(OVERLAY_SCREEN_GLOW).glow().build()); GregTech_API.registerCover( ItemList.Cover_Screen.get(1L), - TextureFactory.of( - MACHINE_CASINGS[2][0], - TextureFactory.of( - TextureFactory.of(OVERLAY_SCREEN), - TextureFactory.builder() - .addIcon(OVERLAY_SCREEN_GLOW) - .glow() - .build())), - new GT_Cover_Screen()); + TextureFactory.of(MACHINE_CASINGS[2][0], screenCoverTexture), + new GT_Cover_Screen(screenCoverTexture)); GregTech_API.registerCover( ItemList.Cover_Crafting.get(1L), TextureFactory.of(MACHINE_CASINGS[1][0], TextureFactory.of(OVERLAY_CRAFTING)), - new GT_Cover_Crafting()); + new GT_Cover_Crafting(TextureFactory.of(OVERLAY_CRAFTING))); GregTech_API.registerCover( ItemList.Cover_Drain.get(1L), TextureFactory.of(MACHINE_CASINGS[0][0], TextureFactory.of(OVERLAY_DRAIN)), - new GT_Cover_Drain()); + new GT_Cover_Drain(TextureFactory.of(OVERLAY_DRAIN))); GregTech_API.registerCover( ItemList.Cover_Shutter.get(1L), TextureFactory.of(MACHINE_CASINGS[1][0], TextureFactory.of(OVERLAY_SHUTTER)), - new GT_Cover_Shutter()); + new GT_Cover_Shutter(TextureFactory.of(OVERLAY_SHUTTER))); ItemList.Cover_SolarPanel.set(addItem( tLastID = 750, @@ -4662,36 +4659,35 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 { new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 1L))); + final ITexture redstoneTransmitterExternalCoverTexture = TextureFactory.of( + TextureFactory.of(OVERLAY_ACTIVITYDETECTOR), + TextureFactory.builder() + .addIcon(OVERLAY_ACTIVITYDETECTOR_GLOW) + .glow() + .build()); GregTech_API.registerCover( ItemList.Cover_RedstoneTransmitterExternal.get(1L), - TextureFactory.of( - MACHINE_CASINGS[2][0], - TextureFactory.of( - TextureFactory.of(OVERLAY_ACTIVITYDETECTOR), - TextureFactory.builder() - .addIcon(OVERLAY_ACTIVITYDETECTOR_GLOW) - .glow() - .build())), - new GT_Cover_RedstoneTransmitterExternal()); + TextureFactory.of(MACHINE_CASINGS[2][0], redstoneTransmitterExternalCoverTexture), + new GT_Cover_RedstoneTransmitterExternal(redstoneTransmitterExternalCoverTexture)); + + final ITexture redstoneTransmitterInternalCoverTexture = TextureFactory.of( + TextureFactory.of(OVERLAY_ACTIVITYDETECTOR), + TextureFactory.builder() + .addIcon(OVERLAY_ACTIVITYDETECTOR_GLOW) + .glow() + .build()); GregTech_API.registerCover( ItemList.Cover_RedstoneTransmitterInternal.get(1L), - TextureFactory.of( - MACHINE_CASINGS[2][0], - TextureFactory.of( - TextureFactory.of(OVERLAY_ACTIVITYDETECTOR), - TextureFactory.builder() - .addIcon(OVERLAY_ACTIVITYDETECTOR_GLOW) - .glow() - .build())), - new GT_Cover_RedstoneTransmitterInternal()); + TextureFactory.of(MACHINE_CASINGS[2][0], redstoneTransmitterInternalCoverTexture), + new GT_Cover_RedstoneTransmitterInternal(redstoneTransmitterInternalCoverTexture)); GregTech_API.registerCover( ItemList.Cover_RedstoneReceiverExternal.get(1L), TextureFactory.of(MACHINE_CASINGS[2][0], TextureFactory.of(OVERLAY_FLUIDDETECTOR)), - new GT_Cover_RedstoneReceiverExternal()); + new GT_Cover_RedstoneReceiverExternal(TextureFactory.of(OVERLAY_FLUIDDETECTOR))); GregTech_API.registerCover( ItemList.Cover_RedstoneReceiverInternal.get(1L), TextureFactory.of(MACHINE_CASINGS[2][0], TextureFactory.of(OVERLAY_FLUIDDETECTOR)), - new GT_Cover_RedstoneReceiverInternal()); + new GT_Cover_RedstoneReceiverInternal(TextureFactory.of(OVERLAY_FLUIDDETECTOR))); GT_Values.RA.addAssemblerRecipe( new ItemStack[] { @@ -4732,17 +4728,16 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 { "Attach to Multiblock Controller. Emits Redstone Signal if needs Maintenance", new TC_Aspects.TC_AspectStack(TC_Aspects.ORDO, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 1L))); + final ITexture needMaintenanceCoverTexture = TextureFactory.of( + TextureFactory.of(OVERLAY_ACTIVITYDETECTOR), + TextureFactory.builder() + .addIcon(OVERLAY_ACTIVITYDETECTOR_GLOW) + .glow() + .build()); GregTech_API.registerCover( ItemList.Cover_NeedsMaintainance.get(1L), - TextureFactory.of( - MACHINE_CASINGS[2][0], - TextureFactory.of( - TextureFactory.of(OVERLAY_ACTIVITYDETECTOR), - TextureFactory.builder() - .addIcon(OVERLAY_ACTIVITYDETECTOR_GLOW) - .glow() - .build())), - new GT_Cover_NeedMaintainance()); + TextureFactory.of(MACHINE_CASINGS[2][0], needMaintenanceCoverTexture), + new GT_Cover_NeedMaintainance(needMaintenanceCoverTexture)); GT_Values.RA.addAssemblerRecipe( new ItemStack[] { ItemList.Emitter_MV.get(1L), diff --git a/src/main/java/gregtech/loaders/oreprocessing/ProcessingLens.java b/src/main/java/gregtech/loaders/oreprocessing/ProcessingLens.java index 2c8c2587e5..943d711d59 100644 --- a/src/main/java/gregtech/loaders/oreprocessing/ProcessingLens.java +++ b/src/main/java/gregtech/loaders/oreprocessing/ProcessingLens.java @@ -5,6 +5,7 @@ import gregtech.api.enums.GT_Values; import gregtech.api.enums.Materials; import gregtech.api.enums.OrePrefixes; import gregtech.api.enums.Textures; +import gregtech.api.interfaces.ITexture; import gregtech.api.render.TextureFactory; import gregtech.api.util.GT_OreDictUnificator; import net.minecraft.item.ItemStack; @@ -46,12 +47,12 @@ public class ProcessingLens implements gregtech.api.interfaces.IOreRecipeRegistr GT_OreDictUnificator.get(OrePrefixes.dust, aMaterial, 2L), 2400, 30); + final ITexture lensCoverTexture = + TextureFactory.of(Textures.BlockIcons.OVERLAY_LENS, aMaterial.mRGBa, false); GregTech_API.registerCover( aStack, - TextureFactory.of( - Textures.BlockIcons.MACHINE_CASINGS[2][0], - TextureFactory.of(Textures.BlockIcons.OVERLAY_LENS, aMaterial.mRGBa, false)), - new gregtech.common.covers.GT_Cover_Lens(aMaterial.mColor.mIndex)); + TextureFactory.of(Textures.BlockIcons.MACHINE_CASINGS[2][0], lensCoverTexture), + new gregtech.common.covers.GT_Cover_Lens(aMaterial.mColor.mIndex, lensCoverTexture)); } } } |