spigot/CraftBukkit-Patches/0105-Fix-placing-double-slabs-at-y-255.patch
2019-07-20 09:00:00 +10:00

26 lines
1.8 KiB
Diff

From 7b47c1867b3733d4154dcc16ab7ed95b9b226d6f Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Fri, 28 Dec 2018 10:11:43 +1100
Subject: [PATCH] Fix placing double slabs at y = 255
Addresses MC-11211 / SPIGOT-4552
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index f72e8e8b8..0ae7423c1 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -1219,9 +1219,10 @@ public class PlayerConnection implements PacketListenerPlayIn {
MovingObjectPositionBlock movingobjectpositionblock = packetplayinuseitem.c();
BlockPosition blockposition = movingobjectpositionblock.getBlockPosition();
EnumDirection enumdirection = movingobjectpositionblock.getDirection();
+ IBlockData clickedBlock = worldserver.getType(blockposition); // Spigot
this.player.resetIdleTimer();
- if (blockposition.getY() >= this.minecraftServer.getMaxBuildHeight() - 1 && (enumdirection == EnumDirection.UP || blockposition.getY() >= this.minecraftServer.getMaxBuildHeight())) {
+ if (blockposition.getY() >= this.minecraftServer.getMaxBuildHeight() - 1 && ((enumdirection == EnumDirection.UP && !(clickedBlock.getBlock() instanceof BlockStepAbstract && clickedBlock.get(BlockStepAbstract.a) == BlockPropertySlabType.BOTTOM)) || blockposition.getY() >= this.minecraftServer.getMaxBuildHeight())) { // Spigot
IChatBaseComponent ichatbasecomponent = (new ChatMessage("build.tooHigh", new Object[]{this.minecraftServer.getMaxBuildHeight()})).a(EnumChatFormat.RED);
this.player.playerConnection.sendPacket(new PacketPlayOutChat(ichatbasecomponent, ChatMessageType.GAME_INFO));
--
2.20.1