aboutsummaryrefslogtreecommitdiff
path: root/src/main
diff options
context:
space:
mode:
authorChristina Berchtold <kekzdealer@gmail.com>2020-04-24 00:57:07 +0200
committerChristina Berchtold <kekzdealer@gmail.com>2020-04-24 00:57:07 +0200
commit86a91d0f64d4052359acf7d3c7795928f88493bc (patch)
tree7661c3d04ea9da2727f6f5984c657a880bd8d66e /src/main
parent1edc79e2b1f38c58bb8f978131acb8a83f8dbb63 (diff)
downloadGT5-Unofficial-86a91d0f64d4052359acf7d3c7795928f88493bc.tar.gz
GT5-Unofficial-86a91d0f64d4052359acf7d3c7795928f88493bc.tar.bz2
GT5-Unofficial-86a91d0f64d4052359acf7d3c7795928f88493bc.zip
added ability to toggle MultiHatch auto-output with a screwdriver
Diffstat (limited to 'src/main')
-rw-r--r--src/main/java/blocks/Block_TFFTMultiHatch.java20
-rw-r--r--src/main/java/itemBlocks/IB_TFFTMultiHatch.java2
-rw-r--r--src/main/java/tileentities/TE_TFFTMultiHatch.java9
3 files changed, 31 insertions, 0 deletions
diff --git a/src/main/java/blocks/Block_TFFTMultiHatch.java b/src/main/java/blocks/Block_TFFTMultiHatch.java
index c1d3c95717..8b8c195335 100644
--- a/src/main/java/blocks/Block_TFFTMultiHatch.java
+++ b/src/main/java/blocks/Block_TFFTMultiHatch.java
@@ -1,10 +1,14 @@
package blocks;
import cpw.mods.fml.common.registry.GameRegistry;
+import gregtech.api.GregTech_API;
+import gregtech.api.util.GT_ModHandler;
+import gregtech.api.util.GT_Utility;
import itemBlocks.IB_TFFTMultiHatch;
import kekztech.KekzCore;
import net.minecraft.block.material.Material;
import net.minecraft.creativetab.CreativeTabs;
+import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.world.World;
import tileentities.TE_TFFTMultiHatch;
@@ -40,4 +44,20 @@ public class Block_TFFTMultiHatch extends BaseGTUpdateableBlock {
public boolean hasTileEntity(int metadata) {
return true;
}
+
+ @Override
+ public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int p_149727_6_, float p_149727_7_, float p_149727_8_, float p_149727_9_) {
+ // Code block taken from GregTech's BaseMetaTileEntity.class
+ if (GT_Utility.isStackInList(player.getHeldItem(), GregTech_API.sScrewdriverList)) {
+ if (GT_ModHandler.damageOrDechargeItem(player.getHeldItem(), 1, 200, player)) {
+ final TileEntity te = world.getTileEntity(x, y, z);
+ if(te != null && te instanceof TE_TFFTMultiHatch) {
+ ((TE_TFFTMultiHatch) te).toggleAutoOutput();
+ GT_Utility.sendSoundToPlayers(world, (String) GregTech_API.sSoundList.get(100), 1.0F, -1.0F, x, y, z);
+ }
+ }
+ return true;
+ }
+ return false;
+ }
}
diff --git a/src/main/java/itemBlocks/IB_TFFTMultiHatch.java b/src/main/java/itemBlocks/IB_TFFTMultiHatch.java
index 2dca3e95be..9d99db04d5 100644
--- a/src/main/java/itemBlocks/IB_TFFTMultiHatch.java
+++ b/src/main/java/itemBlocks/IB_TFFTMultiHatch.java
@@ -18,5 +18,7 @@ public class IB_TFFTMultiHatch extends ItemBlock {
public void addInformation(ItemStack stack, EntityPlayer player, List lines, boolean advancedTooltips) {
lines.add("Special hatch for the T.F.F.T");
lines.add("Allows for automated interaction with all stored fluids in a single place");
+ lines.add("Right-click with screwdriver to activate auto-output");
+ lines.add("Auto-output will try to output fluids into adjacent tanks at a rate of 1000L/s per fluid");
}
}
diff --git a/src/main/java/tileentities/TE_TFFTMultiHatch.java b/src/main/java/tileentities/TE_TFFTMultiHatch.java
index 358f02e4a8..983e54583a 100644
--- a/src/main/java/tileentities/TE_TFFTMultiHatch.java
+++ b/src/main/java/tileentities/TE_TFFTMultiHatch.java
@@ -24,14 +24,23 @@ public class TE_TFFTMultiHatch extends TileEntity implements IFluidHandler {
private MultiFluidHandler mfh;
private int tickCounter = 0;
+ private boolean autoOutput = false;
public void setMultiFluidHandler(MultiFluidHandler mfh) {
System.out.println("Set MFH");
this.mfh = mfh;
}
+ public void toggleAutoOutput() {
+ autoOutput = autoOutput ? false : true;
+ }
+
@Override
public void updateEntity() {
+ if(!autoOutput) {
+ return;
+ }
+
tickCounter++;
if(tickCounter >= 20 && mfh != null) {