geforkt von Mirrors/Paper
e105354330
Also fixes EntityBreakDoorEvent not having the correct 'to' block data Also standardizes how to handle EntityChangeBlockEvent before a removeBlock or destroyBlock call. Always use 'state.getFluidState().createLegacyBlock()' to get the new state instead of just using the 'air' state.
50 Zeilen
2.0 KiB
Diff
50 Zeilen
2.0 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: SoSeDiK <mrsosedik@gmail.com>
|
|
Date: Tue, 11 Oct 2022 23:30:32 +0300
|
|
Subject: [PATCH] Expose pre-collision moving velocity to
|
|
VehicleBlockCollisionEvent
|
|
|
|
|
|
diff --git a/src/main/java/org/bukkit/event/vehicle/VehicleBlockCollisionEvent.java b/src/main/java/org/bukkit/event/vehicle/VehicleBlockCollisionEvent.java
|
|
index 7ff9aec7ed341c01feddb8d71170b177e1fde47b..d2b33f4105ae32a884e714a8936e3d91e23a00a0 100644
|
|
--- a/src/main/java/org/bukkit/event/vehicle/VehicleBlockCollisionEvent.java
|
|
+++ b/src/main/java/org/bukkit/event/vehicle/VehicleBlockCollisionEvent.java
|
|
@@ -11,11 +11,20 @@ import org.jetbrains.annotations.NotNull;
|
|
public class VehicleBlockCollisionEvent extends VehicleCollisionEvent {
|
|
// private static final HandlerList handlers = new HandlerList(); // Paper - move HandlerList to VehicleCollisionEvent
|
|
private final Block block;
|
|
+ private final org.bukkit.util.Vector velocity; // Paper
|
|
|
|
+ // Paper start - Add pre-collision velocity
|
|
+ @Deprecated
|
|
public VehicleBlockCollisionEvent(@NotNull final Vehicle vehicle, @NotNull final Block block) {
|
|
+ this(vehicle, block, vehicle.getVelocity());
|
|
+ }
|
|
+
|
|
+ public VehicleBlockCollisionEvent(@NotNull final Vehicle vehicle, @NotNull final Block block, @NotNull final org.bukkit.util.Vector velocity) { // Paper - Added velocity
|
|
super(vehicle);
|
|
this.block = block;
|
|
+ this.velocity = velocity;
|
|
}
|
|
+ // Paper end
|
|
|
|
/**
|
|
* Gets the block the vehicle collided with
|
|
@@ -26,4 +35,16 @@ public class VehicleBlockCollisionEvent extends VehicleCollisionEvent {
|
|
public Block getBlock() {
|
|
return block;
|
|
}
|
|
+
|
|
+ // Paper start
|
|
+ /**
|
|
+ * Gets velocity at which the vehicle collided with the block
|
|
+ *
|
|
+ * @return pre-collision moving velocity
|
|
+ */
|
|
+ @NotNull
|
|
+ public org.bukkit.util.Vector getVelocity() {
|
|
+ return velocity;
|
|
+ }
|
|
+ // Paper end
|
|
}
|