From 6981848f8a3c0572879906b4e165ea88cbdecab6 Mon Sep 17 00:00:00 2001 From: simibubi <31564874+simibubi@users.noreply.github.com> Date: Sat, 6 Feb 2021 22:41:20 +0100 Subject: [PATCH] Clean-up - Fixed smart chutes not filtering properly - Fixed chutes not treating smart chutes like chutes - Removed code leftovers - Removed datagen cache from gitignore --- .gitignore | 1 - .../block/chute/ChuteTileEntity.java | 41 +++---------------- .../block/chute/SmartChuteTileEntity.java | 2 +- .../filtering/SchematicInstances.java | 5 --- 4 files changed, 6 insertions(+), 43 deletions(-) diff --git a/.gitignore b/.gitignore index f5e691153..0123b6707 100644 --- a/.gitignore +++ b/.gitignore @@ -40,4 +40,3 @@ local.properties # PDT-specific .buildpath -src/generated/resources/.cache/cache diff --git a/src/main/java/com/simibubi/create/content/logistics/block/chute/ChuteTileEntity.java b/src/main/java/com/simibubi/create/content/logistics/block/chute/ChuteTileEntity.java index 943f8345e..fac939e92 100644 --- a/src/main/java/com/simibubi/create/content/logistics/block/chute/ChuteTileEntity.java +++ b/src/main/java/com/simibubi/create/content/logistics/block/chute/ChuteTileEntity.java @@ -379,29 +379,6 @@ public class ChuteTileEntity extends SmartTileEntity implements IHaveGoggleInfor .isHorizontal()) return false; -// BlockState stateBelow = world.getBlockState(pos.down()); -// if (stateBelow.getBlock() instanceof FunnelBlock) { -// if (stateBelow.has(BrassFunnelBlock.POWERED) && stateBelow.get(BrassFunnelBlock.POWERED)) -// return false; -// if (stateBelow.get(BrassFunnelBlock.FACING) != Direction.UP) -// return false; -// ItemStack remainder = FunnelBlock.tryInsert(world, pos.down(), item, simulate); -// if (!simulate) -// setItem(remainder); -// return remainder.isEmpty(); -// } -// -// DirectBeltInputBehaviour directInput = -// TileEntityBehaviour.get(world, pos.down(), DirectBeltInputBehaviour.TYPE); -// if (directInput != null) { -// if (!directInput.canInsertFromSide(Direction.UP)) -// return false; -// ItemStack remainder = directInput.handleInsertion(item, Direction.UP, simulate); -// if (!simulate) -// setItem(remainder); -// return remainder.isEmpty(); -// } - if (Block.hasSolidSideOnTop(world, pos.down())) return false; @@ -420,17 +397,6 @@ public class ChuteTileEntity extends SmartTileEntity implements IHaveGoggleInfor private boolean handleUpwardOutput(boolean simulate) { BlockState stateAbove = world.getBlockState(pos.up()); -// if (stateAbove.getBlock() instanceof FunnelBlock) { -// boolean powered = stateAbove.has(BrassFunnelBlock.POWERED) && stateAbove.get(BrassFunnelBlock.POWERED); -// if (!powered && stateAbove.get(BrassFunnelBlock.FACING) == Direction.DOWN) { -// ItemStack remainder = FunnelBlock.tryInsert(world, pos.up(), item, simulate); -// if (remainder.isEmpty()) { -// if (!simulate) -// setItem(remainder); -// return true; -// } -// } -// } if (world == null) return false; @@ -501,9 +467,12 @@ public class ChuteTileEntity extends SmartTileEntity implements IHaveGoggleInfor if (world == null) return LazyOptional.empty(); TileEntity te = world.getTileEntity(pos); - if (te == null - || (te instanceof ChuteTileEntity) && (side != Direction.DOWN || !(te instanceof SmartChuteTileEntity))) + if (te == null) return LazyOptional.empty(); + if (te instanceof ChuteTileEntity) { + if (side != Direction.DOWN || !(te instanceof SmartChuteTileEntity) || getItemMotion() > 0) + return LazyOptional.empty(); + } return te.getCapability(CapabilityItemHandler.ITEM_HANDLER_CAPABILITY, side.getOpposite()); } diff --git a/src/main/java/com/simibubi/create/content/logistics/block/chute/SmartChuteTileEntity.java b/src/main/java/com/simibubi/create/content/logistics/block/chute/SmartChuteTileEntity.java index d2ba5c271..07cbb4fcb 100644 --- a/src/main/java/com/simibubi/create/content/logistics/block/chute/SmartChuteTileEntity.java +++ b/src/main/java/com/simibubi/create/content/logistics/block/chute/SmartChuteTileEntity.java @@ -21,7 +21,7 @@ public class SmartChuteTileEntity extends ChuteTileEntity { @Override protected boolean canAcceptItem(ItemStack stack) { - return super.canAcceptItem(stack) && canCollectItemsFromBelow(); + return super.canAcceptItem(stack) && canCollectItemsFromBelow() && filtering.test(stack); } @Override diff --git a/src/main/java/com/simibubi/create/content/schematics/filtering/SchematicInstances.java b/src/main/java/com/simibubi/create/content/schematics/filtering/SchematicInstances.java index f8b612b61..1a34d744f 100644 --- a/src/main/java/com/simibubi/create/content/schematics/filtering/SchematicInstances.java +++ b/src/main/java/com/simibubi/create/content/schematics/filtering/SchematicInstances.java @@ -9,7 +9,6 @@ import com.google.common.cache.Cache; import com.google.common.cache.CacheBuilder; import com.simibubi.create.content.schematics.SchematicWorld; import com.simibubi.create.content.schematics.item.SchematicItem; -import com.simibubi.create.foundation.utility.Debug; import com.simibubi.create.foundation.utility.WorldAttached; import net.minecraft.item.ItemStack; @@ -63,10 +62,6 @@ public class SchematicInstances { PlacementSettings settings = SchematicItem.getSettings(schematic); activeTemplate.addBlocksToWorld(world, anchor, settings); - Debug.debugChat("Loading Schematic Instance of " + schematic.getTag() - .getString("File") + ". Total active instances: " + (loadedSchematics.get(wrapped).size() + 1)); - - return world; }