diff options
Diffstat (limited to 'src/main/java/gregtech/common')
3 files changed, 31 insertions, 21 deletions
diff --git a/src/main/java/gregtech/common/covers/redstone/GT_Cover_AdvancedRedstoneTransmitterBase.java b/src/main/java/gregtech/common/covers/redstone/GT_Cover_AdvancedRedstoneTransmitterBase.java index 1ce64da189..2a3e3c0152 100644 --- a/src/main/java/gregtech/common/covers/redstone/GT_Cover_AdvancedRedstoneTransmitterBase.java +++ b/src/main/java/gregtech/common/covers/redstone/GT_Cover_AdvancedRedstoneTransmitterBase.java @@ -19,20 +19,10 @@ import net.minecraft.world.World; import javax.annotation.Nonnull; import java.util.UUID; -public abstract class GT_Cover_AdvancedRedstoneTransmitterBase extends GT_Cover_AdvancedWirelessRedstoneBase<GT_Cover_AdvancedRedstoneTransmitterBase.TransmitterData> { +public abstract class GT_Cover_AdvancedRedstoneTransmitterBase<T extends GT_Cover_AdvancedRedstoneTransmitterBase.TransmitterData> extends GT_Cover_AdvancedWirelessRedstoneBase<T> { - public GT_Cover_AdvancedRedstoneTransmitterBase(ITexture coverTexture) { - super(TransmitterData.class, coverTexture); - } - - @Override - public TransmitterData createDataObject() { - return new TransmitterData(); - } - - @Override - public TransmitterData createDataObject(int aLegacyData) { - return createDataObject(); + public GT_Cover_AdvancedRedstoneTransmitterBase(Class<T> typeToken, ITexture coverTexture) { + super(typeToken, coverTexture); } private static void unregisterSignal(byte aSide, TransmitterData aCoverVariable, ICoverable aTileEntity) { @@ -58,7 +48,7 @@ public abstract class GT_Cover_AdvancedRedstoneTransmitterBase extends GT_Cover_ } public static class TransmitterData extends GT_Cover_AdvancedWirelessRedstoneBase.WirelessData { - private boolean invert; + protected boolean invert; public TransmitterData(int frequency, UUID uuid, boolean invert) { super(frequency, uuid); @@ -119,17 +109,17 @@ public abstract class GT_Cover_AdvancedRedstoneTransmitterBase extends GT_Cover_ @Override public Object getClientGUIImpl(byte aSide, int aCoverID, TransmitterData aCoverVariable, ICoverable aTileEntity, EntityPlayer aPlayer, World aWorld) { - return new TransmitterGUI(aSide, aCoverID, aCoverVariable, aTileEntity); + return new TransmitterGUI<>(aSide, aCoverID, aCoverVariable, aTileEntity); } - private class TransmitterGUI extends WirelessGUI<TransmitterData> { + protected class TransmitterGUI<X extends TransmitterData> extends WirelessGUI<X> { private final GT_GuiIconCheckButton invertButton; private final String INVERTED = GT_Utility.trans("INVERTED", "Inverted"); private final String NORMAL = GT_Utility.trans("NORMAL", "Normal"); - public TransmitterGUI(byte aSide, int aCoverID, TransmitterData aCoverVariable, ICoverable aTileEntity) { + public TransmitterGUI(byte aSide, int aCoverID, X aCoverVariable, ICoverable aTileEntity) { super(aSide, aCoverID, aCoverVariable, aTileEntity); invertButton = new GT_GuiIconCheckButton(this, 1, startX, startY + spaceY * 2, GT_GuiIcon.REDSTONE_ON, GT_GuiIcon.REDSTONE_OFF, INVERTED, NORMAL); } diff --git a/src/main/java/gregtech/common/covers/redstone/GT_Cover_AdvancedRedstoneTransmitterExternal.java b/src/main/java/gregtech/common/covers/redstone/GT_Cover_AdvancedRedstoneTransmitterExternal.java index 84019efd61..fcfa133032 100644 --- a/src/main/java/gregtech/common/covers/redstone/GT_Cover_AdvancedRedstoneTransmitterExternal.java +++ b/src/main/java/gregtech/common/covers/redstone/GT_Cover_AdvancedRedstoneTransmitterExternal.java @@ -4,10 +4,20 @@ import gregtech.api.GregTech_API; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.ICoverable; -public class GT_Cover_AdvancedRedstoneTransmitterExternal extends GT_Cover_AdvancedRedstoneTransmitterBase { +public class GT_Cover_AdvancedRedstoneTransmitterExternal extends GT_Cover_AdvancedRedstoneTransmitterBase<GT_Cover_AdvancedRedstoneTransmitterBase.TransmitterData> { public GT_Cover_AdvancedRedstoneTransmitterExternal(ITexture coverTexture) { - super(coverTexture); + super(TransmitterData.class, coverTexture); + } + + @Override + public TransmitterData createDataObject() { + return new TransmitterData(); + } + + @Override + public TransmitterData createDataObject(int aLegacyData) { + return createDataObject(); } @Override diff --git a/src/main/java/gregtech/common/covers/redstone/GT_Cover_AdvancedRedstoneTransmitterInternal.java b/src/main/java/gregtech/common/covers/redstone/GT_Cover_AdvancedRedstoneTransmitterInternal.java index 1e50891d37..85ee8afafb 100644 --- a/src/main/java/gregtech/common/covers/redstone/GT_Cover_AdvancedRedstoneTransmitterInternal.java +++ b/src/main/java/gregtech/common/covers/redstone/GT_Cover_AdvancedRedstoneTransmitterInternal.java @@ -4,10 +4,20 @@ import gregtech.api.GregTech_API; import gregtech.api.interfaces.ITexture; import gregtech.api.interfaces.tileentity.ICoverable; -public class GT_Cover_AdvancedRedstoneTransmitterInternal extends GT_Cover_AdvancedRedstoneTransmitterBase { +public class GT_Cover_AdvancedRedstoneTransmitterInternal extends GT_Cover_AdvancedRedstoneTransmitterBase<GT_Cover_AdvancedRedstoneTransmitterBase.TransmitterData> { public GT_Cover_AdvancedRedstoneTransmitterInternal(ITexture coverTexture) { - super(coverTexture); + super(TransmitterData.class, coverTexture); + } + + @Override + public TransmitterData createDataObject() { + return new TransmitterData(); + } + + @Override + public TransmitterData createDataObject(int aLegacyData) { + return createDataObject(); } @Override |