Fix spawnreason saving

This commit is contained in:
Nassim Jahnke 2024-02-23 23:13:37 +01:00
parent d0ebfbbd15
commit 681bbff110
No known key found for this signature in database
GPG Key ID: EF6771C01F6EF02F
25 changed files with 79 additions and 69 deletions

View File

@ -59,7 +59,7 @@ index 28b81e29be07902ad4d04aeb18bffd49757c3029..bc440f9a239d3935bf6837edf815d4fd
}); });
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index cb453b843ecf82454a8ade369d424d5e7bbda4c4..dbca4d858dd3074fc0664bb6b578e94eeeed1298 100644 index cb453b843ecf82454a8ade369d424d5e7bbda4c4..92521a46de31b13812d82a844ddc178df2b34919 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -238,6 +238,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -238,6 +238,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@ -70,7 +70,17 @@ index cb453b843ecf82454a8ade369d424d5e7bbda4c4..dbca4d858dd3074fc0664bb6b578e94e
public com.destroystokyo.paper.loottable.PaperLootableInventoryData lootableData; // Paper public com.destroystokyo.paper.loottable.PaperLootableInventoryData lootableData; // Paper
private CraftEntity bukkitEntity; private CraftEntity bukkitEntity;
@@ -2324,6 +2325,26 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -2178,6 +2179,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
}
nbttagcompound.put("Paper.Origin", this.newDoubleList(origin.getX(), origin.getY(), origin.getZ()));
}
+ if (spawnReason != null) {
+ nbttagcompound.putString("Paper.SpawnReason", spawnReason.name());
+ }
// Save entity's from mob spawner status
if (spawnedViaMobSpawner) {
nbttagcompound.putBoolean("Paper.FromMobSpawner", true);
@@ -2324,6 +2328,26 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
} }
spawnedViaMobSpawner = nbt.getBoolean("Paper.FromMobSpawner"); // Restore entity's from mob spawner status spawnedViaMobSpawner = nbt.getBoolean("Paper.FromMobSpawner"); // Restore entity's from mob spawner status

View File

@ -13,10 +13,10 @@ Quickly loading the exact world spawn chunk before searching the
heightmap resolves the issue without having to load all spawn chunks. heightmap resolves the issue without having to load all spawn chunks.
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index dbca4d858dd3074fc0664bb6b578e94eeeed1298..d539252518edcf9849acf5174f8285b571769780 100644 index 92521a46de31b13812d82a844ddc178df2b34919..8a8bdd3f77462b6aff97a2341d454b11c578f97f 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -3360,6 +3360,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -3363,6 +3363,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
if (flag1) { if (flag1) {
blockposition1 = ServerLevel.END_SPAWN_POINT; blockposition1 = ServerLevel.END_SPAWN_POINT;
} else { } else {

View File

@ -5,7 +5,7 @@ Subject: [PATCH] Add option to nerf pigmen from nether portals
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index d539252518edcf9849acf5174f8285b571769780..c113175f392710d2032f03a08e0243a02efe0709 100644 index 8a8bdd3f77462b6aff97a2341d454b11c578f97f..c08b856e56996cf7ad1926d717effb9a1b98d8c6 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -397,6 +397,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -397,6 +397,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@ -16,7 +16,7 @@ index d539252518edcf9849acf5174f8285b571769780..c113175f392710d2032f03a08e0243a0
public boolean spawnedViaMobSpawner; // Paper - Yes this name is similar to above, upstream took the better one public boolean spawnedViaMobSpawner; // Paper - Yes this name is similar to above, upstream took the better one
// Paper start - Entity origin API // Paper start - Entity origin API
@javax.annotation.Nullable @javax.annotation.Nullable
@@ -2183,6 +2184,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -2186,6 +2187,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
if (spawnedViaMobSpawner) { if (spawnedViaMobSpawner) {
nbttagcompound.putBoolean("Paper.FromMobSpawner", true); nbttagcompound.putBoolean("Paper.FromMobSpawner", true);
} }
@ -26,7 +26,7 @@ index d539252518edcf9849acf5174f8285b571769780..c113175f392710d2032f03a08e0243a0
// Paper end // Paper end
return nbttagcompound; return nbttagcompound;
} catch (Throwable throwable) { } catch (Throwable throwable) {
@@ -2325,6 +2329,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -2328,6 +2332,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
} }
spawnedViaMobSpawner = nbt.getBoolean("Paper.FromMobSpawner"); // Restore entity's from mob spawner status spawnedViaMobSpawner = nbt.getBoolean("Paper.FromMobSpawner"); // Restore entity's from mob spawner status

View File

@ -87,10 +87,10 @@ index c5614cc12789fdfad3519434e115a50c12844b3b..d0e158235915e4efc8bda99d552d029c
} }
// Paper end - Entity#getEntitySpawnReason // Paper end - Entity#getEntitySpawnReason
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index c113175f392710d2032f03a08e0243a02efe0709..97dd8b932426496694b50984b1dcff390711e4c9 100644 index c08b856e56996cf7ad1926d717effb9a1b98d8c6..7619f6e772d2fab177a83b083bcce3d2ee1d9a95 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -2286,27 +2286,8 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -2289,27 +2289,8 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
} }
// CraftBukkit end // CraftBukkit end

View File

@ -16,10 +16,10 @@ So even if something NEW comes up, it would be impossible to drop the
same item twice because the source was destroyed. same item twice because the source was destroyed.
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 97dd8b932426496694b50984b1dcff390711e4c9..4123d523d57f3a267753a871e938de675fcaf8c8 100644 index 7619f6e772d2fab177a83b083bcce3d2ee1d9a95..9c9689f4deffed50df9aaca6e451228d17154b8c 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -2416,11 +2416,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -2419,11 +2419,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
} else { } else {
// CraftBukkit start - Capture drops for death event // CraftBukkit start - Capture drops for death event
if (this instanceof net.minecraft.world.entity.LivingEntity && !((net.minecraft.world.entity.LivingEntity) this).forceDrops) { if (this instanceof net.minecraft.world.entity.LivingEntity && !((net.minecraft.world.entity.LivingEntity) this).forceDrops) {
@ -34,7 +34,7 @@ index 97dd8b932426496694b50984b1dcff390711e4c9..4123d523d57f3a267753a871e938de67
entityitem.setDefaultPickUpDelay(); entityitem.setDefaultPickUpDelay();
// CraftBukkit start // CraftBukkit start
@@ -3219,6 +3220,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -3222,6 +3223,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@Nullable @Nullable
public Entity teleportTo(ServerLevel worldserver, Vec3 location) { public Entity teleportTo(ServerLevel worldserver, Vec3 location) {
// CraftBukkit end // CraftBukkit end
@ -47,7 +47,7 @@ index 97dd8b932426496694b50984b1dcff390711e4c9..4123d523d57f3a267753a871e938de67
if (this.level() instanceof ServerLevel && !this.isRemoved()) { if (this.level() instanceof ServerLevel && !this.isRemoved()) {
this.level().getProfiler().push("changeDimension"); this.level().getProfiler().push("changeDimension");
// CraftBukkit start // CraftBukkit start
@@ -3245,6 +3252,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -3248,6 +3255,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
// CraftBukkit end // CraftBukkit end
this.level().getProfiler().popPush("reloading"); this.level().getProfiler().popPush("reloading");
@ -59,7 +59,7 @@ index 97dd8b932426496694b50984b1dcff390711e4c9..4123d523d57f3a267753a871e938de67
Entity entity = this.getType().create(worldserver); Entity entity = this.getType().create(worldserver);
if (entity != null) { if (entity != null) {
@@ -3262,10 +3274,6 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -3265,10 +3277,6 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
// CraftBukkit start - Forward the CraftEntity to the new entity // CraftBukkit start - Forward the CraftEntity to the new entity
this.getBukkitEntity().setHandle(entity); this.getBukkitEntity().setHandle(entity);
entity.bukkitEntity = this.getBukkitEntity(); entity.bukkitEntity = this.getBukkitEntity();
@ -70,7 +70,7 @@ index 97dd8b932426496694b50984b1dcff390711e4c9..4123d523d57f3a267753a871e938de67
// CraftBukkit end // CraftBukkit end
} }
@@ -3384,7 +3392,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -3387,7 +3395,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
} }
public boolean canChangeDimensions() { public boolean canChangeDimensions() {

View File

@ -6,7 +6,7 @@ Subject: [PATCH] Ensure Entity position and AABB are never invalid
Co-authored-by: Spottedleaf <Spottedleaf@users.noreply.github.com> Co-authored-by: Spottedleaf <Spottedleaf@users.noreply.github.com>
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 4123d523d57f3a267753a871e938de675fcaf8c8..dfea1879b8ab8d12bc7530ccf409f4d24978105d 100644 index 9c9689f4deffed50df9aaca6e451228d17154b8c..11a9142962637af5e26939a5eb8f35ba5f205793 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -652,8 +652,8 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -652,8 +652,8 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@ -20,7 +20,7 @@ index 4123d523d57f3a267753a871e938de675fcaf8c8..dfea1879b8ab8d12bc7530ccf409f4d2
} }
protected AABB makeBoundingBox() { protected AABB makeBoundingBox() {
@@ -4146,7 +4146,29 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -4149,7 +4149,29 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
return this.getZ((2.0D * this.random.nextDouble() - 1.0D) * widthScale); return this.getZ((2.0D * this.random.nextDouble() - 1.0D) * widthScale);
} }
@ -50,7 +50,7 @@ index 4123d523d57f3a267753a871e938de675fcaf8c8..dfea1879b8ab8d12bc7530ccf409f4d2
if (this.position.x != x || this.position.y != y || this.position.z != z) { if (this.position.x != x || this.position.y != y || this.position.z != z) {
this.position = new Vec3(x, y, z); this.position = new Vec3(x, y, z);
int i = Mth.floor(x); int i = Mth.floor(x);
@@ -4164,6 +4186,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -4167,6 +4189,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
this.levelCallback.onMove(); this.levelCallback.onMove();
} }

View File

@ -6,10 +6,10 @@ Subject: [PATCH] Expose the Entity Counter to allow plugins to use valid and
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index a3d1f7ccac58cfec8f50dbdb3a620daa4894fffb..525664c1c985ae8eb9cc4973d28f588c26336e5c 100644 index f839ab6dea7f1efd59f22bcef91d4e279b1c232a..0281f4c4f7bc609ff7f35dcc8a7c13f6813d6548 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -4408,4 +4408,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -4411,4 +4411,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
void accept(Entity entity, double x, double y, double z); void accept(Entity entity, double x, double y, double z);
} }

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Entity#isTicking
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 525664c1c985ae8eb9cc4973d28f588c26336e5c..2b962ef7f167cc3ee17d26b994b6ecc2916f6242 100644 index 0281f4c4f7bc609ff7f35dcc8a7c13f6813d6548..f33067ea049793d898def3c83bff5b36490f8232 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -4413,5 +4413,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -4416,5 +4416,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
public static int nextEntityId() { public static int nextEntityId() {
return ENTITY_COUNTER.incrementAndGet(); return ENTITY_COUNTER.incrementAndGet();
} }

View File

@ -28,10 +28,10 @@ index 05ac41e136da43284fb24a6b698ebd36318278fb..3c4ac79c094dc2fff7de94150a34b7bf
public Vec3 decode(long x, long y, long z) { public Vec3 decode(long x, long y, long z) {
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index a0c4f6edc87d653bcbe23621bfcf9fbbd20b013d..745e22b78613f8c45f5432fb27e3b9c87cdf2313 100644 index 3b9c691973f11b7d4db8fb77d2b02aa0d07ed7b5..df389ebaaef8ef307adb6c604ce22a192a522ba4 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -4183,6 +4183,16 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -4186,6 +4186,16 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
return; return;
} }
// Paper end - Block invalid positions and bounding box // Paper end - Block invalid positions and bounding box

View File

@ -11,7 +11,7 @@ Move the tick logic into the post tick, where portaling was
designed to happen in the first place. designed to happen in the first place.
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index baedc48d788d51799d2d3b1816aee2782ba35d25..3fe696d2657812857427f9ffe5f0585f1cfde3c9 100644 index fa5d634cefcf73afd3e090f91c4c589edb988352..6df66ba1bafa3c850372ff877c420a24c6356a2d 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -421,6 +421,36 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -421,6 +421,36 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@ -51,7 +51,7 @@ index baedc48d788d51799d2d3b1816aee2782ba35d25..3fe696d2657812857427f9ffe5f0585f
public float getBukkitYaw() { public float getBukkitYaw() {
return this.yRot; return this.yRot;
} }
@@ -2795,6 +2825,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -2798,6 +2828,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
} }
this.processPortalCooldown(); this.processPortalCooldown();

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Optimize indirect passenger iteration
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 3fe696d2657812857427f9ffe5f0585f1cfde3c9..2ede042815b2c51a6f506d3c99eca01db78529dc 100644 index 6df66ba1bafa3c850372ff877c420a24c6356a2d..53f5d5da6edb0874573347747e5e3ef4b712219f 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -3839,20 +3839,34 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -3842,20 +3842,34 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
} }
private Stream<Entity> getIndirectPassengersStream() { private Stream<Entity> getIndirectPassengersStream() {
@ -43,7 +43,7 @@ index 3fe696d2657812857427f9ffe5f0585f1cfde3c9..2ede042815b2c51a6f506d3c99eca01d
return () -> { return () -> {
return this.getIndirectPassengersStream().iterator(); return this.getIndirectPassengersStream().iterator();
}; };
@@ -3865,6 +3879,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -3868,6 +3882,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
} }
public boolean hasExactlyOnePlayerPassenger() { public boolean hasExactlyOnePlayerPassenger() {

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Add back EntityPortalExitEvent
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 2ede042815b2c51a6f506d3c99eca01db78529dc..fae9aa88bc672b3ac17dcbbf077a57cd3254a723 100644 index 53f5d5da6edb0874573347747e5e3ef4b712219f..4e8d20807048066a0d69b4e120438c869d4a0a2a 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -3288,6 +3288,28 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -3291,6 +3291,28 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
} else { } else {
// CraftBukkit start // CraftBukkit start
worldserver = shapedetectorshape.world; worldserver = shapedetectorshape.world;
@ -37,7 +37,7 @@ index 2ede042815b2c51a6f506d3c99eca01db78529dc..fae9aa88bc672b3ac17dcbbf077a57cd
if (worldserver == this.level) { if (worldserver == this.level) {
// SPIGOT-6782: Just move the entity if a plugin changed the world to the one the entity is already in // SPIGOT-6782: Just move the entity if a plugin changed the world to the one the entity is already in
this.moveTo(shapedetectorshape.pos.x, shapedetectorshape.pos.y, shapedetectorshape.pos.z, shapedetectorshape.yRot, shapedetectorshape.xRot); this.moveTo(shapedetectorshape.pos.x, shapedetectorshape.pos.y, shapedetectorshape.pos.z, shapedetectorshape.yRot, shapedetectorshape.xRot);
@@ -3307,8 +3329,8 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -3310,8 +3332,8 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
if (entity != null) { if (entity != null) {
entity.restoreFrom(this); entity.restoreFrom(this);

View File

@ -5,10 +5,10 @@ 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 diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index c090a529eb6bfe3790f6b912ac3d296a43e52762..1ad6958526e79505cb9e7c3eeb5c421857fac43e 100644 index 47b87fa8c74dba9380fdfc067fea5ae1040e07d3..bab075f68079d5d6c608ef63dc02ae54209cf029 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -3260,6 +3260,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -3263,6 +3263,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
} }
public void restoreFrom(Entity original) { public void restoreFrom(Entity original) {
@ -22,7 +22,7 @@ index c090a529eb6bfe3790f6b912ac3d296a43e52762..1ad6958526e79505cb9e7c3eeb5c4218
CompoundTag nbttagcompound = original.saveWithoutId(new CompoundTag()); CompoundTag nbttagcompound = original.saveWithoutId(new CompoundTag());
nbttagcompound.remove("Dimension"); nbttagcompound.remove("Dimension");
@@ -3350,10 +3357,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -3353,10 +3360,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
} }
} }
// CraftBukkit end // CraftBukkit end

View File

@ -5,7 +5,7 @@ Subject: [PATCH] Freeze Tick Lock API
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 1ad6958526e79505cb9e7c3eeb5c421857fac43e..bff3ff467c4bc20b214f89a3955805a4208463f1 100644 index bab075f68079d5d6c608ef63dc02ae54209cf029..8c12c385408371126306b75b2b633b4056d7ade3 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -405,6 +405,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -405,6 +405,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@ -25,7 +25,7 @@ index 1ad6958526e79505cb9e7c3eeb5c421857fac43e..bff3ff467c4bc20b214f89a3955805a4
this.setTicksFrozen(0); this.setTicksFrozen(0);
this.level().levelEvent((Player) null, 1009, this.blockPosition, 1); this.level().levelEvent((Player) null, 1009, this.blockPosition, 1);
} }
@@ -2243,6 +2244,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -2246,6 +2247,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
if (fromNetherPortal) { if (fromNetherPortal) {
nbttagcompound.putBoolean("Paper.FromNetherPortal", true); nbttagcompound.putBoolean("Paper.FromNetherPortal", true);
} }
@ -35,7 +35,7 @@ index 1ad6958526e79505cb9e7c3eeb5c421857fac43e..bff3ff467c4bc20b214f89a3955805a4
// Paper end // Paper end
return nbttagcompound; return nbttagcompound;
} catch (Throwable throwable) { } catch (Throwable throwable) {
@@ -2387,6 +2391,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -2390,6 +2394,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
if (spawnReason == null) { if (spawnReason == null) {
spawnReason = org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason.DEFAULT; spawnReason = org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason.DEFAULT;
} }

View File

@ -6,10 +6,10 @@ Subject: [PATCH] Ensure entity passenger world matches ridden entity
Bad plugins doing this would cause some obvious problems... Bad plugins doing this would cause some obvious problems...
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index bff3ff467c4bc20b214f89a3955805a4208463f1..a9bc659a89009f430105c8524688130a01baaecf 100644 index 8c12c385408371126306b75b2b633b4056d7ade3..91242b075c7f5c07d06c2c89cab3fbdb069b61e9 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -2577,7 +2577,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -2580,7 +2580,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
} }
public boolean startRiding(Entity entity, boolean force) { public boolean startRiding(Entity entity, boolean force) {

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Add various missing EntityDropItemEvent calls
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index c02181318220d544aca15c030b54650404205519..d31c3bde9579eafc28a46eed6f1bfdaf5e591a9f 100644 index 766ffaa165afe799c027ffac3ffcfc04701d02ab..f56739b5a6a748f1a063a63bc31300dd75aaf8d7 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -2488,6 +2488,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -2491,6 +2491,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
stack.setCount(0); // Paper - destroy this item - if this ever leaks due to game bugs, ensure it doesn't dupe stack.setCount(0); // Paper - destroy this item - if this ever leaks due to game bugs, ensure it doesn't dupe
entityitem.setDefaultPickUpDelay(); entityitem.setDefaultPickUpDelay();

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Add EntityPortalReadyEvent
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index d31c3bde9579eafc28a46eed6f1bfdaf5e591a9f..d822ac014d93755cef20464bb758f8782799732c 100644 index f56739b5a6a748f1a063a63bc31300dd75aaf8d7..3a938cd07ec5cec40a244a9a717376c75c26f12b 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -2829,6 +2829,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -2832,6 +2832,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
if (true && !this.isPassenger() && this.portalTime++ >= i) { // CraftBukkit if (true && !this.isPassenger() && this.portalTime++ >= i) { // CraftBukkit
this.level().getProfiler().push("portal"); this.level().getProfiler().push("portal");
this.portalTime = i; this.portalTime = i;
@ -22,7 +22,7 @@ index d31c3bde9579eafc28a46eed6f1bfdaf5e591a9f..d822ac014d93755cef20464bb758f878
this.setPortalCooldown(); this.setPortalCooldown();
// CraftBukkit start // CraftBukkit start
if (this instanceof ServerPlayer) { if (this instanceof ServerPlayer) {
@@ -2836,6 +2843,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -2839,6 +2846,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
} else { } else {
this.changeDimension(worldserver1); this.changeDimension(worldserver1);
} }

View File

@ -6,10 +6,10 @@ Subject: [PATCH] Fix EntityCombustEvent cancellation cant fully prevent
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index d822ac014d93755cef20464bb758f8782799732c..dfbcadc1a1fb5ebe957ba45d764f0b982d6fe721 100644 index 3a938cd07ec5cec40a244a9a717376c75c26f12b..bdefbb1040cf7bcdcdf2f5b625ef854e3805f567 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -3108,6 +3108,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -3111,6 +3111,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
pluginManager.callEvent(entityCombustEvent); pluginManager.callEvent(entityCombustEvent);
if (!entityCombustEvent.isCancelled()) { if (!entityCombustEvent.isCancelled()) {
this.setSecondsOnFire(entityCombustEvent.getDuration(), false); this.setSecondsOnFire(entityCombustEvent.getDuration(), false);

View File

@ -21,10 +21,10 @@ index 43c8f6a0615f392cc560b2259b116cc9d5fba4e7..ca24463405f138deb882f319bf84696f
} else if (this.seenBy.remove(player.connection)) { } else if (this.seenBy.remove(player.connection)) {
this.serverEntity.removePairing(player); this.serverEntity.removePairing(player);
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index dfbcadc1a1fb5ebe957ba45d764f0b982d6fe721..e3434914cb7bf66e477830ad82159e0bde63e247 100644 index bdefbb1040cf7bcdcdf2f5b625ef854e3805f567..a410ff9fbfc92d16a3720b8db9f3df554c66a9f0 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -3834,7 +3834,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -3837,7 +3837,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
public void startSeenByPlayer(ServerPlayer player) {} public void startSeenByPlayer(ServerPlayer player) {}

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Improve PortalEvents
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index e3434914cb7bf66e477830ad82159e0bde63e247..5c37fb16d57bdffc4973b42a15f79b480ba65e5f 100644 index a410ff9fbfc92d16a3720b8db9f3df554c66a9f0..82ddbe8e71bc2d1ee2be0e576d595fd462f9baab 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -3492,7 +3492,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -3495,7 +3495,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
Location enter = bukkitEntity.getLocation(); Location enter = bukkitEntity.getLocation();
Location exit = CraftLocation.toBukkit(exitPosition, exitWorldServer.getWorld()); Location exit = CraftLocation.toBukkit(exitPosition, exitWorldServer.getWorld());

View File

@ -1185,7 +1185,7 @@ index 0747b0042446271385371f1ca9c8fefdebd851b8..fade1e36037075aae968eb90bbfeac76
this.players.remove(entityplayer); this.players.remove(entityplayer);
this.playersByName.remove(entityplayer.getScoreboardName().toLowerCase(java.util.Locale.ROOT)); // Spigot this.playersByName.remove(entityplayer.getScoreboardName().toLowerCase(java.util.Locale.ROOT)); // Spigot
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 957165e1fce7ddd4c7b7e53a4db8f65739c0ff7f..14855cd35ce7607e74192a55722bd10660f1126b 100644 index a5c806431bca48f51aeedf52679dda27618af41b..35eb78717396de92db846d335fe8abce7ba3a117 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -247,11 +247,23 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -247,11 +247,23 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@ -1213,7 +1213,7 @@ index 957165e1fce7ddd4c7b7e53a4db8f65739c0ff7f..14855cd35ce7607e74192a55722bd106
@Override @Override
public CommandSender getBukkitSender(CommandSourceStack wrapper) { public CommandSender getBukkitSender(CommandSourceStack wrapper) {
return this.getBukkitEntity(); return this.getBukkitEntity();
@@ -4445,6 +4457,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -4448,6 +4460,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
public final void setRemoved(Entity.RemovalReason entity_removalreason, EntityRemoveEvent.Cause cause) { public final void setRemoved(Entity.RemovalReason entity_removalreason, EntityRemoveEvent.Cause cause) {
CraftEventFactory.callEntityRemoveEvent(this, cause); CraftEventFactory.callEntityRemoveEvent(this, cause);
// CraftBukkit end // CraftBukkit end
@ -1221,7 +1221,7 @@ index 957165e1fce7ddd4c7b7e53a4db8f65739c0ff7f..14855cd35ce7607e74192a55722bd106
if (this.removalReason == null) { if (this.removalReason == null) {
this.removalReason = entity_removalreason; this.removalReason = entity_removalreason;
} }
@@ -4455,12 +4468,28 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -4458,12 +4471,28 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
this.getPassengers().forEach(Entity::stopRiding); this.getPassengers().forEach(Entity::stopRiding);
this.levelCallback.onRemove(entity_removalreason); this.levelCallback.onRemove(entity_removalreason);

View File

@ -50,10 +50,10 @@ index 7272dc058c575efee5ac2643ce41b7d12e346e89..ae5a2136a0e266d4c35190f5d3355299
if (entityitem == null) { if (entityitem == null) {
return null; return null;
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index d85151689d3cd7db078b8e068b8be1934c99600e..fe6ae6c19b07e0b4b9bbe579a2266bb84092fe72 100644 index abd50a7b5f85eb63d1f675626e2f68d28b82fdc1..46b4c07ec0907218382ee94849417ad5d1eb1066 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -2493,6 +2493,25 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -2496,6 +2496,25 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@Nullable @Nullable
public ItemEntity spawnAtLocation(ItemStack stack, float yOffset) { public ItemEntity spawnAtLocation(ItemStack stack, float yOffset) {
@ -79,7 +79,7 @@ index d85151689d3cd7db078b8e068b8be1934c99600e..fe6ae6c19b07e0b4b9bbe579a2266bb8
if (stack.isEmpty()) { if (stack.isEmpty()) {
return null; return null;
} else if (this.level().isClientSide) { } else if (this.level().isClientSide) {
@@ -2500,14 +2519,21 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -2503,14 +2522,21 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
} else { } else {
// CraftBukkit start - Capture drops for death event // CraftBukkit start - Capture drops for death event
if (this instanceof net.minecraft.world.entity.LivingEntity && !((net.minecraft.world.entity.LivingEntity) this).forceDrops) { if (this instanceof net.minecraft.world.entity.LivingEntity && !((net.minecraft.world.entity.LivingEntity) this).forceDrops) {

View File

@ -19375,7 +19375,7 @@ index 640db9f71608310a64e09f1e3e677c01e6ccd98a..f2a7cb6ebed7a4b4019a09af2a025f62
if (flag1) { if (flag1) {
++this.converted; ++this.converted;
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index fe6ae6c19b07e0b4b9bbe579a2266bb84092fe72..1a91bffc016312e02408766cd9419610aca74b92 100644 index 46b4c07ec0907218382ee94849417ad5d1eb1066..a3077daa43fe52b569c6bbddc7bee9ad1be08af7 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -480,6 +480,58 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -480,6 +480,58 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@ -19437,7 +19437,7 @@ index fe6ae6c19b07e0b4b9bbe579a2266bb84092fe72..1a91bffc016312e02408766cd9419610
public Entity(EntityType<?> type, Level world) { public Entity(EntityType<?> type, Level world) {
this.id = Entity.ENTITY_COUNTER.incrementAndGet(); this.id = Entity.ENTITY_COUNTER.incrementAndGet();
this.passengers = ImmutableList.of(); this.passengers = ImmutableList.of();
@@ -2577,11 +2629,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -2580,11 +2632,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
return InteractionResult.PASS; return InteractionResult.PASS;
} }
@ -19451,7 +19451,7 @@ index fe6ae6c19b07e0b4b9bbe579a2266bb84092fe72..1a91bffc016312e02408766cd9419610
return false; return false;
} }
@@ -4006,6 +4058,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -4009,6 +4061,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
}).count(); }).count();
} }
@ -19465,7 +19465,7 @@ index fe6ae6c19b07e0b4b9bbe579a2266bb84092fe72..1a91bffc016312e02408766cd9419610
public boolean hasExactlyOnePlayerPassenger() { public boolean hasExactlyOnePlayerPassenger() {
if (this.passengers.isEmpty()) { return false; } // Paper - Optimize indirect passenger iteration if (this.passengers.isEmpty()) { return false; } // Paper - Optimize indirect passenger iteration
return this.countPlayerPassengers() == 1; return this.countPlayerPassengers() == 1;
@@ -4358,6 +4417,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -4361,6 +4420,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
return; return;
} }
// Paper end - Block invalid positions and bounding box // Paper end - Block invalid positions and bounding box
@ -19478,7 +19478,7 @@ index fe6ae6c19b07e0b4b9bbe579a2266bb84092fe72..1a91bffc016312e02408766cd9419610
// Paper start - Fix MC-4 // Paper start - Fix MC-4
if (this instanceof ItemEntity) { if (this instanceof ItemEntity) {
if (io.papermc.paper.configuration.GlobalConfiguration.get().misc.fixEntityPositionDesync) { if (io.papermc.paper.configuration.GlobalConfiguration.get().misc.fixEntityPositionDesync) {
@@ -4487,6 +4552,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -4490,6 +4555,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@Override @Override
public final void setRemoved(Entity.RemovalReason entity_removalreason, EntityRemoveEvent.Cause cause) { public final void setRemoved(Entity.RemovalReason entity_removalreason, EntityRemoveEvent.Cause cause) {
@ -19492,7 +19492,7 @@ index fe6ae6c19b07e0b4b9bbe579a2266bb84092fe72..1a91bffc016312e02408766cd9419610
CraftEventFactory.callEntityRemoveEvent(this, cause); CraftEventFactory.callEntityRemoveEvent(this, cause);
// CraftBukkit end // CraftBukkit end
final boolean alreadyRemoved = this.removalReason != null; // Paper - Folia schedulers final boolean alreadyRemoved = this.removalReason != null; // Paper - Folia schedulers
@@ -4498,7 +4570,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -4501,7 +4573,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
this.stopRiding(); this.stopRiding();
} }
@ -19501,7 +19501,7 @@ index fe6ae6c19b07e0b4b9bbe579a2266bb84092fe72..1a91bffc016312e02408766cd9419610
this.levelCallback.onRemove(entity_removalreason); this.levelCallback.onRemove(entity_removalreason);
// Paper start - Folia schedulers // Paper start - Folia schedulers
if (!(this instanceof ServerPlayer) && entity_removalreason != RemovalReason.CHANGED_DIMENSION && !alreadyRemoved) { if (!(this instanceof ServerPlayer) && entity_removalreason != RemovalReason.CHANGED_DIMENSION && !alreadyRemoved) {
@@ -4529,7 +4601,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -4532,7 +4604,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@Override @Override
public boolean shouldBeSaved() { public boolean shouldBeSaved() {

View File

@ -122,7 +122,7 @@ index 9d18da228c6709e7665ba8babb6ee6d0b36b5dc5..af9f58328c09dddb2875f79128f906b8
private void tickPassenger(Entity vehicle, Entity passenger) { private void tickPassenger(Entity vehicle, Entity passenger) {
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index d5b92dbd98b62b0afd68543222858dca5981ecbd..fd643dc96dfa46db84b8337a2c69342e9489a702 100644 index 943a48fd8a95b8f28060ea1de9d021cf309dfd33..c3abc701e2c4458da63e40fbc51f235fc1cbd093 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -1063,8 +1063,43 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -1063,8 +1063,43 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@ -183,7 +183,7 @@ index d5b92dbd98b62b0afd68543222858dca5981ecbd..fd643dc96dfa46db84b8337a2c69342e
} }
private boolean isStateClimbable(BlockState state) { private boolean isStateClimbable(BlockState state) {
@@ -4376,7 +4418,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -4379,7 +4421,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
} }
public void setDeltaMovement(Vec3 velocity) { public void setDeltaMovement(Vec3 velocity) {
@ -193,7 +193,7 @@ index d5b92dbd98b62b0afd68543222858dca5981ecbd..fd643dc96dfa46db84b8337a2c69342e
} }
public void addDeltaMovement(Vec3 velocity) { public void addDeltaMovement(Vec3 velocity) {
@@ -4479,7 +4523,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -4482,7 +4526,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
} }
// Paper end - Fix MC-4 // Paper end - Fix MC-4
if (this.position.x != x || this.position.y != y || this.position.z != z) { if (this.position.x != x || this.position.y != y || this.position.z != z) {

View File

@ -2214,7 +2214,7 @@ index 594cb6ce4bfa6c42212000a1ed983ea95ee2c4bf..97b0119ac71284b3a223c089bec26d87
entityplayer1.setPos(entityplayer1.getX(), entityplayer1.getY() + 1.0D, entityplayer1.getZ()); entityplayer1.setPos(entityplayer1.getX(), entityplayer1.getY() + 1.0D, entityplayer1.getZ());
} }
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index fd643dc96dfa46db84b8337a2c69342e9489a702..aeae9693bf985263a62225eb73a44833e5a0ca16 100644 index c3abc701e2c4458da63e40fbc51f235fc1cbd093..45439b0cc4ea69e409fd41d4684403c0e0feab12 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java --- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -1250,9 +1250,44 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -1250,9 +1250,44 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
@ -2364,7 +2364,7 @@ index fd643dc96dfa46db84b8337a2c69342e9489a702..aeae9693bf985263a62225eb73a44833
} }
public static Vec3 collideBoundingBox(@Nullable Entity entity, Vec3 movement, AABB entityBoundingBox, Level world, List<VoxelShape> collisions) { public static Vec3 collideBoundingBox(@Nullable Entity entity, Vec3 movement, AABB entityBoundingBox, Level world, List<VoxelShape> collisions) {
@@ -2704,11 +2789,70 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -2707,11 +2792,70 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S
float f = this.dimensions.width * 0.8F; float f = this.dimensions.width * 0.8F;
AABB axisalignedbb = AABB.ofSize(this.getEyePosition(), (double) f, 1.0E-6D, (double) f); AABB axisalignedbb = AABB.ofSize(this.getEyePosition(), (double) f, 1.0E-6D, (double) f);