diff options
author | Yang Xizhi <60341015+GlodBlock@users.noreply.github.com> | 2021-12-25 02:05:52 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-12-24 19:05:52 +0100 |
commit | 07745f72ffbd2ecd2724549093857851930f9137 (patch) | |
tree | bba7741ba05168d82fc426ddc04b861c43ecbb28 /src/main/java/gregtech/api/metatileentity/implementations | |
parent | 9b7d225b93fb15efc958786fb90c923b20d8752f (diff) | |
download | GT5-Unofficial-07745f72ffbd2ecd2724549093857851930f9137.tar.gz GT5-Unofficial-07745f72ffbd2ecd2724549093857851930f9137.tar.bz2 GT5-Unofficial-07745f72ffbd2ecd2724549093857851930f9137.zip |
tt support for pa (#833)
* tt support for pa
* remove anti pattern. clear up duplicated code fragments
* fix copy pasting error
* add vanilla energy hatch back
Co-authored-by: Glease <4586901+Glease@users.noreply.github.com>
Diffstat (limited to 'src/main/java/gregtech/api/metatileentity/implementations')
-rw-r--r-- | src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java index 431abe4a3c..85eebe5070 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java @@ -10,6 +10,7 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity; import gregtech.api.items.GT_MetaGenerated_Tool; import gregtech.api.metatileentity.MetaTileEntity; import gregtech.api.objects.GT_ItemStack; +import gregtech.api.util.GT_ExoticEnergyInputHelper; import gregtech.api.util.GT_Log; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_Recipe.GT_Recipe_Map; @@ -55,6 +56,7 @@ public abstract class GT_MetaTileEntity_MultiBlockBase extends MetaTileEntity { public ArrayList<GT_MetaTileEntity_Hatch_Muffler> mMufflerHatches = new ArrayList<>(); public ArrayList<GT_MetaTileEntity_Hatch_Energy> mEnergyHatches = new ArrayList<>(); public ArrayList<GT_MetaTileEntity_Hatch_Maintenance> mMaintenanceHatches = new ArrayList<>(); + protected final List<GT_MetaTileEntity_Hatch> mExoticEnergyHatches = new ArrayList<>(); public GT_MetaTileEntity_MultiBlockBase(int aID, String aName, String aNameRegional) { super(aID, aName, aNameRegional, 2); @@ -885,6 +887,15 @@ public abstract class GT_MetaTileEntity_MultiBlockBase extends MetaTileEntity { if (isValidMetaTileEntity(tHatch)) tHatch.updateSlots(); } + protected static <T extends GT_MetaTileEntity_Hatch> T identifyHatch(IGregTechTileEntity aTileEntity, int aBaseCasingIndex, Class<T> clazz) { + if (aTileEntity == null) return null; + IMetaTileEntity aMetaTileEntity = aTileEntity.getMetaTileEntity(); + if (!clazz.isInstance(aMetaTileEntity)) return null; + T hatch = clazz.cast(aMetaTileEntity); + hatch.updateTexture(aBaseCasingIndex); + return hatch; + } + public boolean addToMachineList(IGregTechTileEntity aTileEntity, int aBaseCasingIndex) { if (aTileEntity == null) return false; IMetaTileEntity aMetaTileEntity = aTileEntity.getMetaTileEntity(); @@ -939,6 +950,18 @@ public abstract class GT_MetaTileEntity_MultiBlockBase extends MetaTileEntity { return false; } + public boolean addExoticEnergyInputToMachineList(IGregTechTileEntity aTileEntity, int aBaseCasingIndex) { + if (aTileEntity == null) return false; + IMetaTileEntity aMetaTileEntity = aTileEntity.getMetaTileEntity(); + if (aMetaTileEntity == null) return false; + if (aMetaTileEntity instanceof GT_MetaTileEntity_Hatch && GT_ExoticEnergyInputHelper.isExoticEnergyInput(aMetaTileEntity)) { + GT_MetaTileEntity_Hatch hatch = (GT_MetaTileEntity_Hatch) aMetaTileEntity; + hatch.updateTexture(aBaseCasingIndex); + return mExoticEnergyHatches.add(hatch); + } + return false; + } + public boolean addDynamoToMachineList(IGregTechTileEntity aTileEntity, int aBaseCasingIndex) { if (aTileEntity == null) return false; IMetaTileEntity aMetaTileEntity = aTileEntity.getMetaTileEntity(); |