From 14207bb8e7c6645021daf014f82451297230d6f2 Mon Sep 17 00:00:00 2001 From: AlgorithmX2 Date: Sat, 28 Dec 2013 15:09:58 -0600 Subject: [PATCH] Open Guis Drive+Interface. --- block/misc/BlockInterface.java | 20 ++++++++++++++++++++ block/storage/BlockDrive.java | 11 ++++++++--- 2 files changed, 28 insertions(+), 3 deletions(-) diff --git a/block/misc/BlockInterface.java b/block/misc/BlockInterface.java index 18e29974..36ba7336 100644 --- a/block/misc/BlockInterface.java +++ b/block/misc/BlockInterface.java @@ -3,9 +3,14 @@ package appeng.block.misc; import java.util.EnumSet; import net.minecraft.block.material.Material; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.world.World; +import net.minecraftforge.common.ForgeDirection; import appeng.block.AEBaseBlock; import appeng.core.features.AEFeature; +import appeng.core.sync.GuiBridge; import appeng.tile.misc.TileInterface; +import appeng.util.Platform; public class BlockInterface extends AEBaseBlock { @@ -16,4 +21,19 @@ public class BlockInterface extends AEBaseBlock setTileEntiy( TileInterface.class ); } + @Override + public boolean onActivated(World w, int x, int y, int z, EntityPlayer p, int side, float hitX, float hitY, float hitZ) + { + if ( p.isSneaking() ) + return false; + + TileInterface tg = getTileEntity( w, x, y, z ); + if ( tg != null ) + { + if ( Platform.isServer() ) + Platform.openGUI( p, tg, ForgeDirection.getOrientation( side ), GuiBridge.GUI_INTERFACE ); + return true; + } + return false; + } } diff --git a/block/storage/BlockDrive.java b/block/storage/BlockDrive.java index 49a89454..01ed90d9 100644 --- a/block/storage/BlockDrive.java +++ b/block/storage/BlockDrive.java @@ -11,6 +11,7 @@ import appeng.client.render.BaseBlockRender; import appeng.client.render.blocks.RenderDrive; import appeng.core.features.AEFeature; import appeng.core.sync.GuiBridge; +import appeng.tile.misc.TileInterface; import appeng.tile.storage.TileDrive; import appeng.util.Platform; @@ -32,10 +33,14 @@ public class BlockDrive extends AEBaseBlock @Override public boolean onActivated(World w, int x, int y, int z, EntityPlayer p, int side, float hitX, float hitY, float hitZ) { - TileDrive tg = getTileEntity( w, x, y, z ); - if ( tg != null && !p.isSneaking() ) + if ( p.isSneaking() ) + return false; + + TileInterface tg = getTileEntity( w, x, y, z ); + if ( tg != null ) { - Platform.openGUI( p, tg, ForgeDirection.getOrientation(side),GuiBridge.GUI_DRIVE ); + if ( Platform.isServer() ) + Platform.openGUI( p, tg, ForgeDirection.getOrientation( side ), GuiBridge.GUI_DRIVE ); return true; } return false;