aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/api/interfaces/tileentity
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/gregtech/api/interfaces/tileentity')
-rw-r--r--src/main/java/gregtech/api/interfaces/tileentity/IBasicEnergyContainer.java2
-rw-r--r--src/main/java/gregtech/api/interfaces/tileentity/ICoverable.java2
-rw-r--r--src/main/java/gregtech/api/interfaces/tileentity/IDigitalChest.java2
-rw-r--r--src/main/java/gregtech/api/interfaces/tileentity/IEnergyConductor.java2
-rw-r--r--src/main/java/gregtech/api/interfaces/tileentity/IEnergyConnected.java13
-rw-r--r--src/main/java/gregtech/api/interfaces/tileentity/IExperimentalEnergyTileEntity.java2
-rw-r--r--src/main/java/gregtech/api/interfaces/tileentity/IFibreConnected.java2
-rw-r--r--src/main/java/gregtech/api/interfaces/tileentity/IGregTechDeviceInformation.java2
-rw-r--r--src/main/java/gregtech/api/interfaces/tileentity/IGregTechTileEntity.java11
-rw-r--r--src/main/java/gregtech/api/interfaces/tileentity/IHasInventory.java2
-rw-r--r--src/main/java/gregtech/api/interfaces/tileentity/IHasWorldObjectAndCoords.java2
-rw-r--r--src/main/java/gregtech/api/interfaces/tileentity/IMachineProgress.java10
-rw-r--r--src/main/java/gregtech/api/interfaces/tileentity/IPipeRenderedTileEntity.java6
-rw-r--r--src/main/java/gregtech/api/interfaces/tileentity/IRedstoneEmitter.java2
-rw-r--r--src/main/java/gregtech/api/interfaces/tileentity/IRedstoneReceiver.java2
-rw-r--r--src/main/java/gregtech/api/interfaces/tileentity/IRedstoneTileEntity.java2
-rw-r--r--src/main/java/gregtech/api/interfaces/tileentity/ITexturedTileEntity.java2
-rw-r--r--src/main/java/gregtech/api/interfaces/tileentity/ITurnable.java2
18 files changed, 45 insertions, 23 deletions
diff --git a/src/main/java/gregtech/api/interfaces/tileentity/IBasicEnergyContainer.java b/src/main/java/gregtech/api/interfaces/tileentity/IBasicEnergyContainer.java
index b795c793bc..6998556fd0 100644
--- a/src/main/java/gregtech/api/interfaces/tileentity/IBasicEnergyContainer.java
+++ b/src/main/java/gregtech/api/interfaces/tileentity/IBasicEnergyContainer.java
@@ -97,4 +97,4 @@ public interface IBasicEnergyContainer extends IEnergyConnected {
* And yes, you can't directly decrease the Steam of a Machine. That is done by decreaseStoredEnergyUnits
*/
boolean increaseStoredSteam(long aEnergy, boolean aIgnoreTooMuchEnergy);
-} \ No newline at end of file
+}
diff --git a/src/main/java/gregtech/api/interfaces/tileentity/ICoverable.java b/src/main/java/gregtech/api/interfaces/tileentity/ICoverable.java
index 76d121b8da..560d47c595 100644
--- a/src/main/java/gregtech/api/interfaces/tileentity/ICoverable.java
+++ b/src/main/java/gregtech/api/interfaces/tileentity/ICoverable.java
@@ -46,4 +46,4 @@ public interface ICoverable extends IRedstoneTileEntity, IHasInventory, IBasicEn
* Receiving a packet with cover data.
*/
void receiveCoverData(byte coverSide, int coverID, int coverData);
-} \ No newline at end of file
+}
diff --git a/src/main/java/gregtech/api/interfaces/tileentity/IDigitalChest.java b/src/main/java/gregtech/api/interfaces/tileentity/IDigitalChest.java
index d7c39c900c..9d19e7cef0 100644
--- a/src/main/java/gregtech/api/interfaces/tileentity/IDigitalChest.java
+++ b/src/main/java/gregtech/api/interfaces/tileentity/IDigitalChest.java
@@ -28,4 +28,4 @@ public interface IDigitalChest extends IHasWorldObjectAndCoords {
* Gets the maximum Item count for this QChest alike Storage. This applies to the Data-Storage, not for the up to 192 buffered Items!
*/
int getMaxItemCount();
-} \ No newline at end of file
+}
diff --git a/src/main/java/gregtech/api/interfaces/tileentity/IEnergyConductor.java b/src/main/java/gregtech/api/interfaces/tileentity/IEnergyConductor.java
index 32fd276600..5a35e1ea52 100644
--- a/src/main/java/gregtech/api/interfaces/tileentity/IEnergyConductor.java
+++ b/src/main/java/gregtech/api/interfaces/tileentity/IEnergyConductor.java
@@ -37,4 +37,4 @@ public interface IEnergyConductor extends IEnergyConnected {
* @return the Material the Cable Insulation consists of. (may return Materials._NULL)
*/
Materials getInsulationMaterial();
-} \ No newline at end of file
+}
diff --git a/src/main/java/gregtech/api/interfaces/tileentity/IEnergyConnected.java b/src/main/java/gregtech/api/interfaces/tileentity/IEnergyConnected.java
index 47bec844ee..24d0576864 100644
--- a/src/main/java/gregtech/api/interfaces/tileentity/IEnergyConnected.java
+++ b/src/main/java/gregtech/api/interfaces/tileentity/IEnergyConnected.java
@@ -4,6 +4,7 @@ import cofh.api.energy.IEnergyReceiver;
import gregtech.GT_Mod;
import gregtech.api.GregTech_API;
import gregtech.api.util.GT_Utility;
+import gregtech.api.util.WorldSpawnedEventBuilder;
import gregtech.common.GT_Pollution;
import ic2.api.energy.tile.IEnergySink;
import net.minecraft.init.Blocks;
@@ -60,7 +61,7 @@ public interface IEnergyConnected extends IColoredTileEntity, IHasWorldObjectAnd
*/
public static final long emitEnergyToNetwork(long aVoltage, long aAmperage, IEnergyConnected aEmitter) {
long rUsedAmperes = 0;
- for (byte i = 0, j = 0; i < 6 && aAmperage > rUsedAmperes; i++)
+ for (byte i = 0, j = 0; i < 6 && aAmperage > rUsedAmperes; i++) {
if (aEmitter.outputsEnergyTo(i)) {
j = GT_Utility.getOppositeSide(i);
TileEntity tTileEntity = aEmitter.getTileEntityAtSide(i);
@@ -70,6 +71,7 @@ public interface IEnergyConnected extends IColoredTileEntity, IHasWorldObjectAnd
if (tColor >= 0 && tColor != aEmitter.getColorization()) continue;
}
rUsedAmperes += ((IEnergyConnected) tTileEntity).injectEnergyUnits(j, aVoltage, aAmperage - rUsedAmperes);
+
} else if (tTileEntity instanceof IEnergySink) {
if (((IEnergySink) tTileEntity).acceptsEnergyFrom((TileEntity) aEmitter, ForgeDirection.getOrientation(j))) {
while (aAmperage > rUsedAmperes && ((IEnergySink) tTileEntity).getDemandedEnergy() > 0 && ((IEnergySink) tTileEntity).injectEnergy(ForgeDirection.getOrientation(j), aVoltage, aVoltage) < aVoltage)
@@ -112,11 +114,18 @@ public interface IEnergyConnected extends IColoredTileEntity, IHasWorldObjectAnd
if (GregTech_API.sMachineExplosions)
if (GT_Mod.gregtechproxy.mPollution)
GT_Pollution.addPollution(tWorld.getChunkFromBlockCoords(tX, tZ), 100000);
- tWorld.createExplosion(null, tX + 0.5, tY + 0.5, tZ + 0.5, tStrength, true);
+
+ new WorldSpawnedEventBuilder.ExplosionEffectEventBuilder()
+ .setStrength(tStrength)
+ .setSmoking(true)
+ .setPosition(tX + 0.5, tY + 0.5, tZ + 0.5)
+ .setWorld(tWorld)
+ .run();
}
}
}
}
+ }
return rUsedAmperes;
}
}
diff --git a/src/main/java/gregtech/api/interfaces/tileentity/IExperimentalEnergyTileEntity.java b/src/main/java/gregtech/api/interfaces/tileentity/IExperimentalEnergyTileEntity.java
index 3a32a557fb..2a8172a775 100644
--- a/src/main/java/gregtech/api/interfaces/tileentity/IExperimentalEnergyTileEntity.java
+++ b/src/main/java/gregtech/api/interfaces/tileentity/IExperimentalEnergyTileEntity.java
@@ -90,4 +90,4 @@ public interface IExperimentalEnergyTileEntity extends IColoredTileEntity, IHasW
return rUsedSecondary;
}
}
-} \ No newline at end of file
+}
diff --git a/src/main/java/gregtech/api/interfaces/tileentity/IFibreConnected.java b/src/main/java/gregtech/api/interfaces/tileentity/IFibreConnected.java
index bde86524c5..713fe73f22 100644
--- a/src/main/java/gregtech/api/interfaces/tileentity/IFibreConnected.java
+++ b/src/main/java/gregtech/api/interfaces/tileentity/IFibreConnected.java
@@ -28,4 +28,4 @@ public interface IFibreConnected extends IColoredTileEntity, IHasWorldObjectAndC
* Gets the Signal this Blocks receives from this Fibre Color
*/
byte getFibreInput(byte aSide, byte aColor);
-} \ No newline at end of file
+}
diff --git a/src/main/java/gregtech/api/interfaces/tileentity/IGregTechDeviceInformation.java b/src/main/java/gregtech/api/interfaces/tileentity/IGregTechDeviceInformation.java
index 39c779e69c..221e290220 100644
--- a/src/main/java/gregtech/api/interfaces/tileentity/IGregTechDeviceInformation.java
+++ b/src/main/java/gregtech/api/interfaces/tileentity/IGregTechDeviceInformation.java
@@ -18,4 +18,4 @@ public interface IGregTechDeviceInformation {
* @return an Array of Information Strings. Don't return null!
*/
String[] getInfoData();
-} \ No newline at end of file
+}
diff --git a/src/main/java/gregtech/api/interfaces/tileentity/IGregTechTileEntity.java b/src/main/java/gregtech/api/interfaces/tileentity/IGregTechTileEntity.java
index 8e135fbc85..cf002d9e95 100644
--- a/src/main/java/gregtech/api/interfaces/tileentity/IGregTechTileEntity.java
+++ b/src/main/java/gregtech/api/interfaces/tileentity/IGregTechTileEntity.java
@@ -141,8 +141,7 @@ public interface IGregTechTileEntity extends ITexturedTileEntity, IGearEnergyTil
*/
@Override
default void onMachineBlockUpdate(){
- if(!isDead() && getMetaTileEntity()!=null &&
- getMetaTileEntity().getBaseMetaTileEntity()==this){
+ if(!isDead() && getMetaTileEntity() != null && getMetaTileEntity().getBaseMetaTileEntity() == this){
getMetaTileEntity().onMachineBlockUpdate();
}
}
@@ -152,8 +151,10 @@ public interface IGregTechTileEntity extends ITexturedTileEntity, IGearEnergyTil
*/
@Override
default boolean isMachineBlockUpdateRecursive() {
- return !isDead() && getMetaTileEntity()!=null &&
- getMetaTileEntity().getBaseMetaTileEntity()==this &&
+ return !isDead() && getMetaTileEntity() != null &&
+ getMetaTileEntity().getBaseMetaTileEntity() == this &&
getMetaTileEntity().isMachineBlockUpdateRecursive();
}
-} \ No newline at end of file
+
+ default void setShutdownStatus(boolean newStatus) {return;}
+}
diff --git a/src/main/java/gregtech/api/interfaces/tileentity/IHasInventory.java b/src/main/java/gregtech/api/interfaces/tileentity/IHasInventory.java
index 42df520ff4..437d896800 100644
--- a/src/main/java/gregtech/api/interfaces/tileentity/IHasInventory.java
+++ b/src/main/java/gregtech/api/interfaces/tileentity/IHasInventory.java
@@ -30,4 +30,4 @@ public interface IHasInventory extends ISidedInventory, IHasWorldObjectAndCoords
* @return true if aStack == null, then false if aIndex is out of bounds, then false if aStack cannot be added, and then true if aStack has been added
*/
boolean addStackToSlot(int aIndex, ItemStack aStack, int aAmount);
-} \ No newline at end of file
+}
diff --git a/src/main/java/gregtech/api/interfaces/tileentity/IHasWorldObjectAndCoords.java b/src/main/java/gregtech/api/interfaces/tileentity/IHasWorldObjectAndCoords.java
index 9b7489cf00..f367b7c073 100644
--- a/src/main/java/gregtech/api/interfaces/tileentity/IHasWorldObjectAndCoords.java
+++ b/src/main/java/gregtech/api/interfaces/tileentity/IHasWorldObjectAndCoords.java
@@ -166,4 +166,4 @@ public interface IHasWorldObjectAndCoords {
* Opens the GUI with the ID = 0 of this TileEntity
*/
boolean openGUI(EntityPlayer aPlayer);
-} \ No newline at end of file
+}
diff --git a/src/main/java/gregtech/api/interfaces/tileentity/IMachineProgress.java b/src/main/java/gregtech/api/interfaces/tileentity/IMachineProgress.java
index 588158d16c..f5eeaf9318 100644
--- a/src/main/java/gregtech/api/interfaces/tileentity/IMachineProgress.java
+++ b/src/main/java/gregtech/api/interfaces/tileentity/IMachineProgress.java
@@ -66,4 +66,12 @@ public interface IMachineProgress extends IHasWorldObjectAndCoords {
* sets the visible Active Status of the Machine
*/
void setActive(boolean aActive);
-} \ No newline at end of file
+
+ /**
+ * Indicates if the object in question was forced to shut down (i.e. loss of power)
+ * */
+ default boolean wasShutdown() {
+ return false;
+ }
+
+}
diff --git a/src/main/java/gregtech/api/interfaces/tileentity/IPipeRenderedTileEntity.java b/src/main/java/gregtech/api/interfaces/tileentity/IPipeRenderedTileEntity.java
index 909f4077f0..c7590e98ed 100644
--- a/src/main/java/gregtech/api/interfaces/tileentity/IPipeRenderedTileEntity.java
+++ b/src/main/java/gregtech/api/interfaces/tileentity/IPipeRenderedTileEntity.java
@@ -8,4 +8,8 @@ public interface IPipeRenderedTileEntity extends ICoverable, ITexturedTileEntity
byte getConnections();
ITexture[] getTextureUncovered(byte aSide);
-} \ No newline at end of file
+
+ default ITexture[] getTextureCovered(byte aSide) {
+ return getTextureUncovered(aSide);
+ }
+}
diff --git a/src/main/java/gregtech/api/interfaces/tileentity/IRedstoneEmitter.java b/src/main/java/gregtech/api/interfaces/tileentity/IRedstoneEmitter.java
index 5be185b4a3..f9fff116f4 100644
--- a/src/main/java/gregtech/api/interfaces/tileentity/IRedstoneEmitter.java
+++ b/src/main/java/gregtech/api/interfaces/tileentity/IRedstoneEmitter.java
@@ -34,4 +34,4 @@ public interface IRedstoneEmitter extends IHasWorldObjectAndCoords {
* Gets the Output for the comparator on the given Side
*/
byte getComparatorValue(byte aSide);
-} \ No newline at end of file
+}
diff --git a/src/main/java/gregtech/api/interfaces/tileentity/IRedstoneReceiver.java b/src/main/java/gregtech/api/interfaces/tileentity/IRedstoneReceiver.java
index 8c644be2e6..acee525137 100644
--- a/src/main/java/gregtech/api/interfaces/tileentity/IRedstoneReceiver.java
+++ b/src/main/java/gregtech/api/interfaces/tileentity/IRedstoneReceiver.java
@@ -26,4 +26,4 @@ public interface IRedstoneReceiver extends IHasWorldObjectAndCoords {
* gets if the TileEntity receives Redstone at this Side
*/
boolean getRedstone(byte aSide);
-} \ No newline at end of file
+}
diff --git a/src/main/java/gregtech/api/interfaces/tileentity/IRedstoneTileEntity.java b/src/main/java/gregtech/api/interfaces/tileentity/IRedstoneTileEntity.java
index 6100572a7d..452699a172 100644
--- a/src/main/java/gregtech/api/interfaces/tileentity/IRedstoneTileEntity.java
+++ b/src/main/java/gregtech/api/interfaces/tileentity/IRedstoneTileEntity.java
@@ -14,4 +14,4 @@ public interface IRedstoneTileEntity extends IRedstoneEmitter, IRedstoneReceiver
* Sends nothing to Client, just causes a Block Update.
*/
void issueBlockUpdate();
-} \ No newline at end of file
+}
diff --git a/src/main/java/gregtech/api/interfaces/tileentity/ITexturedTileEntity.java b/src/main/java/gregtech/api/interfaces/tileentity/ITexturedTileEntity.java
index b16ae65548..fd1600903e 100644
--- a/src/main/java/gregtech/api/interfaces/tileentity/ITexturedTileEntity.java
+++ b/src/main/java/gregtech/api/interfaces/tileentity/ITexturedTileEntity.java
@@ -8,4 +8,4 @@ public interface ITexturedTileEntity {
* @return the Textures rendered by the GT Rendering
*/
ITexture[] getTexture(Block aBlock, byte aSide);
-} \ No newline at end of file
+}
diff --git a/src/main/java/gregtech/api/interfaces/tileentity/ITurnable.java b/src/main/java/gregtech/api/interfaces/tileentity/ITurnable.java
index dca9c5ce0b..94888cdfb8 100644
--- a/src/main/java/gregtech/api/interfaces/tileentity/ITurnable.java
+++ b/src/main/java/gregtech/api/interfaces/tileentity/ITurnable.java
@@ -30,4 +30,4 @@ public interface ITurnable {
* Determine if the wrench can be used to set the block's facing.
*/
boolean isValidFacing(byte aSide);
-} \ No newline at end of file
+}