From 22bed1ee19d642a244ea093706487b309f1d2e1a Mon Sep 17 00:00:00 2001 From: Sollace Date: Mon, 28 Aug 2023 22:09:15 +0100 Subject: [PATCH] Fixed muffin jankyness --- .../entity/PhysicsBodyProjectileEntity.java | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/src/main/java/com/minelittlepony/unicopia/entity/PhysicsBodyProjectileEntity.java b/src/main/java/com/minelittlepony/unicopia/entity/PhysicsBodyProjectileEntity.java index 6ff2aba9..647033a0 100644 --- a/src/main/java/com/minelittlepony/unicopia/entity/PhysicsBodyProjectileEntity.java +++ b/src/main/java/com/minelittlepony/unicopia/entity/PhysicsBodyProjectileEntity.java @@ -132,22 +132,16 @@ public class PhysicsBodyProjectileEntity extends PersistentProjectileEntity impl @Override protected void onBlockHit(BlockHitResult hit) { - BlockState state = getWorld().getBlockState(hit.getBlockPos()); + BlockPos buttonPos = hit.getBlockPos().offset(hit.getSide()); + BlockState state = getWorld().getBlockState(buttonPos); - BlockState posState = getBlockStateAtPos(); if (state.isIn(BlockTags.WOODEN_BUTTONS) && state.getBlock() instanceof ButtonBlock button) { - button.powerOn(state, getWorld(), hit.getBlockPos()); - } else if (posState.isIn(BlockTags.WOODEN_BUTTONS) && posState.getBlock() instanceof ButtonBlock button) { - button.powerOn(posState, getWorld(), getBlockPos()); + button.powerOn(state, getWorld(), buttonPos); + } else if (state.getBlock() instanceof LeverBlock lever) { + lever.togglePower(state, getWorld(), buttonPos); } - if (state.getBlock() instanceof LeverBlock lever) { - lever.togglePower(state, getWorld(), hit.getBlockPos()); - } else if (posState.getBlock() instanceof LeverBlock lever) { - lever.togglePower(posState, getWorld(), getBlockPos()); - } - - BlockPos belowPos = getBlockPos().down(); + BlockPos belowPos = buttonPos.down(); BlockState below = getWorld().getBlockState(belowPos); ItemStack stack = getStack(); if (below.getBlock() instanceof HopperBlock hopper) {