geforkt von Mirrors/Paper
bffb08c2f9
The Paper method was chosen for deprecation because it was more restrictive in that it has an isGliding check.
40 Zeilen
2.0 KiB
Diff
40 Zeilen
2.0 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Jake Potrebic <jake.m.potrebic@gmail.com>
|
|
Date: Sat, 4 Dec 2021 17:04:47 -0800
|
|
Subject: [PATCH] Forward CraftEntity in teleport command
|
|
|
|
|
|
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
|
index cc5c122fe9e3528e3b120d00e0a3600ef947c664..27b07629aa36029e251ebbc3fb68466f02c0aab3 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
|
@@ -3527,6 +3527,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
|
}
|
|
|
|
public void restoreFrom(Entity original) {
|
|
+ // Paper start
|
|
+ CraftEntity bukkitEntity = original.bukkitEntity;
|
|
+ if (bukkitEntity != null) {
|
|
+ bukkitEntity.setHandle(this);
|
|
+ this.bukkitEntity = bukkitEntity;
|
|
+ }
|
|
+ // Paper end
|
|
CompoundTag nbttagcompound = original.saveWithoutId(new CompoundTag());
|
|
|
|
nbttagcompound.remove("Dimension");
|
|
@@ -3613,10 +3620,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource {
|
|
if (worldserver.getTypeKey() == LevelStem.END) { // CraftBukkit
|
|
ServerLevel.makeObsidianPlatform(worldserver, this); // CraftBukkit
|
|
}
|
|
- // CraftBukkit start - Forward the CraftEntity to the new entity
|
|
- this.getBukkitEntity().setHandle(entity);
|
|
- entity.bukkitEntity = this.getBukkitEntity();
|
|
- // CraftBukkit end
|
|
+ // // CraftBukkit start - Forward the CraftEntity to the new entity // Paper - moved to Entity#restoreFrom
|
|
+ // this.getBukkitEntity().setHandle(entity);
|
|
+ // entity.bukkitEntity = this.getBukkitEntity();
|
|
+ // // CraftBukkit end
|
|
}
|
|
|
|
this.removeAfterChangingDimensions();
|