diff --git a/src/main/java/com/simibubi/create/content/kinetics/chainConveyor/ChainConveyorInteractionHandler.java b/src/main/java/com/simibubi/create/content/kinetics/chainConveyor/ChainConveyorInteractionHandler.java index 1e97912de9..02951d2042 100644 --- a/src/main/java/com/simibubi/create/content/kinetics/chainConveyor/ChainConveyorInteractionHandler.java +++ b/src/main/java/com/simibubi/create/content/kinetics/chainConveyor/ChainConveyorInteractionHandler.java @@ -114,6 +114,8 @@ public static void clientTick() { private static boolean isActive() { Minecraft mc = Minecraft.getInstance(); ItemStack mainHandItem = mc.player.getMainHandItem(); + if (mc.player.isSpectator()) + return false; return mc.player.isHolding(AllItemTags.CHAIN_RIDEABLE::matches) || AllBlocks.PACKAGE_FROGPORT.isIn(mainHandItem) || PackageItem.isPackage(mainHandItem); } @@ -125,6 +127,9 @@ public static boolean onUse() { Minecraft mc = Minecraft.getInstance(); ItemStack mainHandItem = mc.player.getMainHandItem(); + if (mc.player.isSpectator()) + return false; + if (mc.player.isHolding(AllItemTags.CHAIN_RIDEABLE::matches)) { ItemStack offHandItem = mc.player.getOffhandItem(); ItemStack usedItem = AllItemTags.CHAIN_RIDEABLE.matches(mainHandItem) ? mainHandItem : offHandItem; diff --git a/src/main/java/com/simibubi/create/content/kinetics/chainConveyor/ChainConveyorRidingHandler.java b/src/main/java/com/simibubi/create/content/kinetics/chainConveyor/ChainConveyorRidingHandler.java index 61ed407609..27c2c7b655 100644 --- a/src/main/java/com/simibubi/create/content/kinetics/chainConveyor/ChainConveyorRidingHandler.java +++ b/src/main/java/com/simibubi/create/content/kinetics/chainConveyor/ChainConveyorRidingHandler.java @@ -51,7 +51,7 @@ public static void clientTick() { return; } BlockEntity blockEntity = mc.level.getBlockEntity(ridingChainConveyor); - if (mc.player.isShiftKeyDown() || !(blockEntity instanceof ChainConveyorBlockEntity clbe)) { + if (mc.player.isSpectator() || mc.player.isShiftKeyDown() || !(blockEntity instanceof ChainConveyorBlockEntity clbe)) { stopRiding(); return; }