Skip to content

Commit 71f27a1

Browse files
committed
Ensure level is same when teleporting to camera
1 parent 409a06a commit 71f27a1

1 file changed

Lines changed: 6 additions & 4 deletions

File tree

patches/server/0020-Teleportation.patch

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -120,15 +120,17 @@ index 6542c67e753245cd131de872c28862f83e7ff2f3..073743301c2e70fcd148c33e97be2a30
120120

121121
});
122122
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
123-
index ca36526379158b027b3ccebb78c0a0f4978a2c40..509601a62a2bcbaefb7aed6856a4076e874311c7 100644
123+
index ca36526379158b027b3ccebb78c0a0f4978a2c40..a8112735bb42e2f6edf259395d3bf514fad3354f 100644
124124
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
125125
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
126-
@@ -828,8 +828,13 @@ public class ServerPlayer extends Player {
126+
@@ -827,9 +827,14 @@ public class ServerPlayer extends Player {
127+
Entity entity = this.getCamera();
127128

128129
if (entity != this) {
129-
if (entity.isAlive()) {
130+
- if (entity.isAlive()) {
130131
- this.absMoveTo(entity.getX(), entity.getY(), entity.getZ(), entity.getYRot(), entity.getXRot());
131132
- this.serverLevel().getChunkSource().move(this);
133+
+ if (entity.isAlive() && entity.level() == this.level()) { // ShreddedPaper - ensure same level
132134
+ // ShreddedPaper start - ensure sync
133135
+ final Vec3 toPosition = entity.position(); // The entity's position could change once the ensureSync method is called
134136
+ ShreddedPaper.ensureSync(this, (ServerLevel) entity.level(), entity.chunkPosition(), () -> {
@@ -534,7 +536,7 @@ index 61bd2459f2b9164dce90134103abaddce42b0621..39d3e08148f2bf3cee2ee6377e28df6f
534536
}
535537

536538
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
537-
index ad53a7b2e4e58837ca13b05828442125c9280469..bd60758e8291821c66bd82a5d23682959b915136 100644
539+
index 0ec053d6aa8a32a3a1b934ed489485c9a91af83b..5b459af3bbdc967c84c22f6d5789084c8fb504ad 100644
538540
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
539541
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
540542
@@ -2568,7 +2568,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {

0 commit comments

Comments
 (0)