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); } }