aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/api/metatileentity/implementations
diff options
context:
space:
mode:
authorYang Xizhi <60341015+GlodBlock@users.noreply.github.com>2021-12-25 02:05:52 +0800
committerGitHub <noreply@github.com>2021-12-24 19:05:52 +0100
commit07745f72ffbd2ecd2724549093857851930f9137 (patch)
treebba7741ba05168d82fc426ddc04b861c43ecbb28 /src/main/java/gregtech/api/metatileentity/implementations
parent9b7d225b93fb15efc958786fb90c923b20d8752f (diff)
downloadGT5-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.java23
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();