Allow entity effect changes off the main thread for worldgen (#8942)

* Allow entity effect modification off the main thread for worldgen

* squash all async catcher patches
This commit is contained in:
Jake Potrebic 2023-04-09 11:38:32 -07:00 committed by GitHub
parent f8c01122e6
commit 6a7fef0e4a
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
252 changed files with 150 additions and 130 deletions

View file

@ -0,0 +1,27 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: lukas81298 <lukas81298@gmail.com>
Date: Tue, 12 Jan 2021 14:41:38 +0100
Subject: [PATCH] fixed entity vehicle collision event not called
diff --git a/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java b/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java
index 46c893fd33fdaf76d49af407112ff349e9579a12..9a80cf593bbdd7681bc9395daf4545a98e07636f 100644
--- a/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java
+++ b/src/main/java/net/minecraft/world/entity/vehicle/AbstractMinecart.java
@@ -142,7 +142,15 @@ public abstract class AbstractMinecart extends Entity {
@Override
public boolean canCollideWith(Entity other) {
- return Boat.canVehicleCollide(this, other);
+ // Paper start - fixed VehicleEntityCollisionEvent not called when colliding with player
+ boolean collides = Boat.canVehicleCollide(this, other);
+ if (!collides) {
+ return false;
+ }
+ org.bukkit.event.vehicle.VehicleEntityCollisionEvent collisionEvent = new org.bukkit.event.vehicle.VehicleEntityCollisionEvent((org.bukkit.entity.Vehicle) getBukkitEntity(), other.getBukkitEntity());
+
+ return collisionEvent.callEvent();
+ // Paper end
}
@Override