mirror of
https://github.com/PaperMC/Paper.git
synced 2025-08-01 12:42:05 -07:00
API patches
This commit is contained in:
@@ -1,30 +0,0 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Sudzzy <originmc@outlook.com>
|
||||
Date: Thu, 3 Mar 2016 02:50:31 -0600
|
||||
Subject: [PATCH] Configurable inter-world teleportation safety
|
||||
|
||||
People are able to abuse the way Bukkit handles teleportation across worlds since it provides a built in teleportation
|
||||
safety check.
|
||||
|
||||
To abuse the safety check, players are required to get into a location deemed unsafe by Bukkit e.g. be within a chest
|
||||
or door block. While they are in this block, they accept a teleport request from a player within a different world. Once
|
||||
the player teleports, Minecraft will recursively search upwards for a safe location, this could eventually land within a
|
||||
player's skybase.
|
||||
|
||||
Example setup to perform the glitch: http://puu.sh/ng3PC/cf072dcbdb.png
|
||||
The wanted destination was on top of the emerald block however the player ended on top of the diamond block.
|
||||
This only is the case if the player is teleporting between worlds.
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
@@ -0,0 +0,0 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||
if (fromWorld == toWorld) {
|
||||
entity.connection.teleport(to);
|
||||
} else {
|
||||
- server.getHandle().respawn(entity, toWorld, true, to, true);
|
||||
+ server.getHandle().respawn(entity, toWorld, true, to, !toWorld.paperConfig().environment.disableTeleportationSuffocationCheck); // Paper
|
||||
}
|
||||
return true;
|
||||
}
|
Reference in New Issue
Block a user