From fdb8fe780725507789d504267720154077f0054a Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Thu, 16 Apr 2020 21:16:35 -0500 Subject: [PATCH] Be less strict with vanilla teleport command limits Just limit to the same valid location check as BaseBlockPosition, no reason to restrict to the world border. Ref: GH-3165 --- ...la-teleport-command-to-valid-locations.patch} | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) rename Spigot-Server-Patches/{0480-Restrict-vanilla-teleport-command-to-worldborder.patch => 0480-Restrict-vanilla-teleport-command-to-valid-locations.patch} (58%) diff --git a/Spigot-Server-Patches/0480-Restrict-vanilla-teleport-command-to-worldborder.patch b/Spigot-Server-Patches/0480-Restrict-vanilla-teleport-command-to-valid-locations.patch similarity index 58% rename from Spigot-Server-Patches/0480-Restrict-vanilla-teleport-command-to-worldborder.patch rename to Spigot-Server-Patches/0480-Restrict-vanilla-teleport-command-to-valid-locations.patch index c2ca1ade5..ab58f7ea7 100644 --- a/Spigot-Server-Patches/0480-Restrict-vanilla-teleport-command-to-worldborder.patch +++ b/Spigot-Server-Patches/0480-Restrict-vanilla-teleport-command-to-valid-locations.patch @@ -1,19 +1,21 @@ -From b05693d1f838ea0610b915f48954530dca2943ff Mon Sep 17 00:00:00 2001 +From edcf740d8e3d2b296015f13626dabff83cde74f0 Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Thu, 16 Apr 2020 20:07:29 -0500 -Subject: [PATCH] Restrict vanilla teleport command to worldborder +Subject: [PATCH] Restrict vanilla teleport command to valid locations +Fixes GH-3165 diff --git a/src/main/java/net/minecraft/server/CommandTeleport.java b/src/main/java/net/minecraft/server/CommandTeleport.java -index 3060b4f68..df2711978 100644 +index 3060b4f68..79016b587 100644 --- a/src/main/java/net/minecraft/server/CommandTeleport.java +++ b/src/main/java/net/minecraft/server/CommandTeleport.java -@@ -116,6 +116,11 @@ public class CommandTeleport { +@@ -116,6 +116,12 @@ public class CommandTeleport { } private static void a(CommandListenerWrapper commandlistenerwrapper, Entity entity, WorldServer worldserver, double d0, double d1, double d2, Set set, float f, float f1, @Nullable CommandTeleport.a commandteleport_a) { -+ // Paper start - Don't allow teleport command to go outside the world border -+ if (!worldserver.getWorldBorder().isInBounds(new BlockPosition(d0, d1, d2))) { ++ // Paper start - Don't allow teleport command to invalid locations ++ if (d0 <= -30000000 || d2 <= -30000000 || d0 > 30000000 || d2 > 30000000) { // Copy/pasta from BaseBlockPosition#isValidLocation ++ org.bukkit.Bukkit.getLogger().warning("Refused to teleport " + entity.getName() + " to " + d0 + ", " + d1 + ", " + d2); + return; + } + // Paper end @@ -21,5 +23,5 @@ index 3060b4f68..df2711978 100644 ChunkCoordIntPair chunkcoordintpair = new ChunkCoordIntPair(new BlockPosition(d0, d1, d2)); -- -2.26.1.windows.1 +2.26.0