From 811035d17a0768c0b64cd4d19f61b76859d7d150 Mon Sep 17 00:00:00 2001 From: Raoul Van den Berge Date: Fri, 1 Jan 2016 23:40:13 +0100 Subject: [PATCH] fix detector --- .../java/storagecraft/block/BlockDetector.java | 15 +++++++++++++++ src/main/java/storagecraft/tile/TileDetector.java | 7 +++++-- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/src/main/java/storagecraft/block/BlockDetector.java b/src/main/java/storagecraft/block/BlockDetector.java index 313977151..088d8ac5c 100755 --- a/src/main/java/storagecraft/block/BlockDetector.java +++ b/src/main/java/storagecraft/block/BlockDetector.java @@ -47,6 +47,21 @@ public class BlockDetector extends BlockMachine return new TileDetector(); } + public int isProvidingWeakPower(IBlockAccess world, BlockPos pos, IBlockState state, EnumFacing side) + { + return ((TileDetector) world.getTileEntity(pos)).isPowered() ? 15 : 0; + } + + public int isProvidingStrongPower(IBlockAccess world, BlockPos pos, IBlockState state, EnumFacing side) + { + return ((TileDetector) world.getTileEntity(pos)).isPowered() ? 15 : 0; + } + + public boolean canProvidePower() + { + return true; + } + @Override public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumFacing side, float hitX, float hitY, float hitZ) { diff --git a/src/main/java/storagecraft/tile/TileDetector.java b/src/main/java/storagecraft/tile/TileDetector.java index 003683f0a..5156fed87 100755 --- a/src/main/java/storagecraft/tile/TileDetector.java +++ b/src/main/java/storagecraft/tile/TileDetector.java @@ -101,7 +101,8 @@ public class TileDetector extends TileMachine implements IInventory, ISidedInven if (powered != lastPowered) { - worldObj.notifyBlockOfStateChange(pos, StorageCraftBlocks.DETECTOR); // @TODO: redstone update + worldObj.markBlockForUpdate(pos); + worldObj.notifyNeighborsOfStateChange(pos, StorageCraftBlocks.DETECTOR); } } } @@ -195,8 +196,10 @@ public class TileDetector extends TileMachine implements IInventory, ISidedInven powered = buf.readBoolean(); - if (powered != lastPowered) { + if (powered != lastPowered) + { worldObj.markBlockForUpdate(pos); + worldObj.notifyNeighborsOfStateChange(pos, StorageCraftBlocks.DETECTOR); } }