diff options
Diffstat (limited to 'src/main/java/gregtech/api')
4 files changed, 17 insertions, 0 deletions
diff --git a/src/main/java/gregtech/api/interfaces/metatileentity/IMetaTileEntity.java b/src/main/java/gregtech/api/interfaces/metatileentity/IMetaTileEntity.java index 59d048e618..0d1d52edb0 100644 --- a/src/main/java/gregtech/api/interfaces/metatileentity/IMetaTileEntity.java +++ b/src/main/java/gregtech/api/interfaces/metatileentity/IMetaTileEntity.java @@ -519,4 +519,9 @@ public interface IMetaTileEntity default int getTextColorOrDefault(String textType, int defaultColor) { return defaultColor; } + + /** + * Called before block is destroyed. This is before inventory dropping code has executed. + */ + default void onBlockDestroyed() {} } diff --git a/src/main/java/gregtech/api/interfaces/tileentity/IGregTechTileEntity.java b/src/main/java/gregtech/api/interfaces/tileentity/IGregTechTileEntity.java index b389c8be6c..16fbe4f327 100644 --- a/src/main/java/gregtech/api/interfaces/tileentity/IGregTechTileEntity.java +++ b/src/main/java/gregtech/api/interfaces/tileentity/IGregTechTileEntity.java @@ -140,6 +140,8 @@ public interface IGregTechTileEntity float getBlastResistance(byte aSide); + default void onBlockDestroyed() {} + ArrayList<ItemStack> getDrops(); /** Check if the item at the specific index should be dropped or not diff --git a/src/main/java/gregtech/api/metatileentity/BaseMetaPipeEntity.java b/src/main/java/gregtech/api/metatileentity/BaseMetaPipeEntity.java index 87a865641f..09b62c0657 100644 --- a/src/main/java/gregtech/api/metatileentity/BaseMetaPipeEntity.java +++ b/src/main/java/gregtech/api/metatileentity/BaseMetaPipeEntity.java @@ -1359,6 +1359,11 @@ public class BaseMetaPipeEntity extends CommonMetaTileEntity } @Override + public void onBlockDestroyed() { + if (canAccessData()) getMetaTileEntity().onBlockDestroyed(); + } + + @Override public boolean isMufflerUpgradable() { return false; } diff --git a/src/main/java/gregtech/api/metatileentity/BaseMetaTileEntity.java b/src/main/java/gregtech/api/metatileentity/BaseMetaTileEntity.java index 8c6076a56e..f2da90cde9 100644 --- a/src/main/java/gregtech/api/metatileentity/BaseMetaTileEntity.java +++ b/src/main/java/gregtech/api/metatileentity/BaseMetaTileEntity.java @@ -2235,6 +2235,11 @@ public class BaseMetaTileEntity extends CommonMetaTileEntity } @Override + public void onBlockDestroyed() { + if (canAccessData()) getMetaTileEntity().onBlockDestroyed(); + } + + @Override public boolean isUniversalEnergyStored(long aEnergyAmount) { if (getUniversalEnergyStored() >= aEnergyAmount) return true; mHasEnoughEnergy = false; |