diff --git a/src/main/java/com/simibubi/create/content/equipment/armor/DivingHelmetItem.java b/src/main/java/com/simibubi/create/content/equipment/armor/DivingHelmetItem.java index 99274eef01..d388e276f0 100644 --- a/src/main/java/com/simibubi/create/content/equipment/armor/DivingHelmetItem.java +++ b/src/main/java/com/simibubi/create/content/equipment/armor/DivingHelmetItem.java @@ -121,7 +121,6 @@ public static void breatheUnderwater(LivingEntity entity) { if (entity instanceof ServerPlayer sp) AllAdvancements.DIVING_SUIT.awardTo(sp); - event.setCanBreathe(true); - event.setCanRefillAir(true); + entity.setAirSupply(entity.getMaxAirSupply()); } } diff --git a/src/main/java/com/simibubi/create/content/equipment/armor/RemainingAirOverlay.java b/src/main/java/com/simibubi/create/content/equipment/armor/RemainingAirOverlay.java index 2c397fca3f..60a2368936 100644 --- a/src/main/java/com/simibubi/create/content/equipment/armor/RemainingAirOverlay.java +++ b/src/main/java/com/simibubi/create/content/equipment/armor/RemainingAirOverlay.java @@ -11,7 +11,6 @@ import net.minecraft.client.gui.GuiGraphics; import net.minecraft.client.player.LocalPlayer; import net.minecraft.network.chat.Component; -import net.minecraft.tags.FluidTags; import net.minecraft.util.StringUtil; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.GameType; diff --git a/src/main/java/com/simibubi/create/content/logistics/vault/ItemVaultBlockEntity.java b/src/main/java/com/simibubi/create/content/logistics/vault/ItemVaultBlockEntity.java index 1cb5e20ee0..42b9bed8e8 100644 --- a/src/main/java/com/simibubi/create/content/logistics/vault/ItemVaultBlockEntity.java +++ b/src/main/java/com/simibubi/create/content/logistics/vault/ItemVaultBlockEntity.java @@ -4,6 +4,8 @@ import java.util.List; import java.util.Set; +import io.github.fabricators_of_create.porting_lib.block.NeighborChangeListeningBlock; + import org.jetbrains.annotations.Nullable; import com.simibubi.create.AllBlockEntityTypes; @@ -162,12 +164,16 @@ private static void updateComaratorsInner(Level level, Block provokingBlock, Blo } BlockState blockstate = level.getBlockState(updatePos); - blockstate.onNeighborChange(level, updatePos, provokingPos); + if (blockstate.getBlock() instanceof NeighborChangeListeningBlock nclb) { + nclb.onNeighborChange(blockstate, level, updatePos, provokingPos); + } if (blockstate.isRedstoneConductor(level, updatePos)) { updatePos.move(direction); blockstate = level.getBlockState(updatePos); - if (blockstate.getWeakChanges(level, updatePos)) { - level.neighborChanged(blockstate, updatePos, provokingBlock, provokingPos, false); + if (blockstate.getBlock() instanceof NeighborChangeListeningBlock nclb) { + if (nclb.getWeakChanges(blockstate, level, updatePos)) { + level.neighborChanged(blockstate, updatePos, provokingBlock, provokingPos, false); + } } } }