diff --git a/CHANGELOG.md b/CHANGELOG.md index 696520b..4685f6b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,8 @@ # Changelog +**1.0.4** +* Fix Crash When Sneak-Using Dye On A Block + **1.0.3** * Fix Gravity Crash diff --git a/gradle.properties b/gradle.properties index dfb2e52..37da24d 100644 --- a/gradle.properties +++ b/gradle.properties @@ -10,7 +10,7 @@ org.gradle.jvmargs = -Xmx1G fabric_loader_version = 0.9.2+build.206 # Mod Properties - mod_version = 1.0.3 + mod_version = 1.0.4 maven_group = com.thebrokenrail # Dependencies diff --git a/src/main/java/com/thebrokenrail/energonrelics/block/PhaseShifterBlock.java b/src/main/java/com/thebrokenrail/energonrelics/block/PhaseShifterBlock.java index 962f09b..b960ab0 100644 --- a/src/main/java/com/thebrokenrail/energonrelics/block/PhaseShifterBlock.java +++ b/src/main/java/com/thebrokenrail/energonrelics/block/PhaseShifterBlock.java @@ -106,15 +106,17 @@ public class PhaseShifterBlock extends EnergyBlock { UseBlockCallback.EVENT.register((player, world, hand, hit) -> { if (!player.isSpectator() && player.shouldCancelInteraction()) { BlockState state = world.getBlockState(hit.getBlockPos()); - ItemStack stack = player.getStackInHand(hand); - if (stack.getItem() instanceof DyeItem) { - DyeColor newColor = ((DyeItem) stack.getItem()).getColor(); - if (state.get(PhaseShifterBlock.COLOR) != newColor) { - world.setBlockState(hit.getBlockPos(), state.with(PhaseShifterBlock.COLOR, newColor)); - if (!player.isCreative()) { - stack.decrement(1); + if (state.getBlock() == PhaseShifterBlock.this) { + ItemStack stack = player.getStackInHand(hand); + if (stack.getItem() instanceof DyeItem) { + DyeColor newColor = ((DyeItem) stack.getItem()).getColor(); + if (state.get(PhaseShifterBlock.COLOR) != newColor) { + world.setBlockState(hit.getBlockPos(), state.with(PhaseShifterBlock.COLOR, newColor)); + if (!player.isCreative()) { + stack.decrement(1); + } + return ActionResult.SUCCESS; } - return ActionResult.SUCCESS; } } }