diff --git a/src/main/java/carpet/helpers/RedstoneWireTurbo.java b/src/main/java/carpet/helpers/RedstoneWireTurbo.java index 361b43ba..1bda7fc0 100644 --- a/src/main/java/carpet/helpers/RedstoneWireTurbo.java +++ b/src/main/java/carpet/helpers/RedstoneWireTurbo.java @@ -327,17 +327,7 @@ public class RedstoneWireTurbo // be replicated here. if (!oldState.canPlaceAt(worldIn, pos)) { // Pop off the redstone dust - // aurieh: there must be a better way to do this - LootContext.Builder ctx = new LootContext - .Builder(worldIn.getServer().getWorld(worldIn.dimension.getType())) - .put(LootContextParameters.POSITION, pos) - .put(LootContextParameters.TOOL, ItemStack.EMPTY); - List stacks = oldState.getDroppedStacks(ctx); - for (ItemStack stack : stacks) { - ItemEntity itemEntity = new ItemEntity(worldIn, pos.getX() + 0.5, pos.getY() + 0.5, pos.getZ() + 0.5); - worldIn.spawnEntity(itemEntity); - } - worldIn.clearBlockState(pos, false); + Block.dropStacks(oldState, worldIn, pos); // Mark this position as not being redstone wire upd1.type = UpdateNode.Type.OTHER; diff --git a/src/main/java/carpet/mixins/RedstoneWireBlockMixin.java b/src/main/java/carpet/mixins/RedstoneWireBlockMixin.java index ffedc33f..1b92df8e 100644 --- a/src/main/java/carpet/mixins/RedstoneWireBlockMixin.java +++ b/src/main/java/carpet/mixins/RedstoneWireBlockMixin.java @@ -71,7 +71,7 @@ public abstract class RedstoneWireBlockMixin implements RedstoneWireBlockInterfa public BlockState fastUpdate(World world, BlockPos pos, BlockState state, BlockPos source) { // [CM] fastRedstoneDust -- update based on carpet rule if (CarpetSettings.fastRedstoneDust) { - wireTurbo.updateSurroundingRedstone(world, pos, state, source); + return wireTurbo.updateSurroundingRedstone(world, pos, state, source); } return update(world, pos, state); }