mirror of
https://github.com/SparklyPower/SparklyPaper.git
synced 2025-12-30 12:29:07 +00:00
Yes, the update is COMPLETELY borked, there are broken patches, it does not compile, there are even diff conflict things inside of patches This is still very unfinished and you should not use it
43 lines
2.7 KiB
Diff
43 lines
2.7 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: MrPowerGamerBR <git@mrpowergamerbr.com>
|
|
Date: Sat, 4 Jan 2025 23:58:55 -0300
|
|
Subject: [PATCH] Add PlayerMoveControllableVehicleEvent
|
|
|
|
|
|
diff --git a/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
|
index 3c6f9180059246244dcd52237a85c6715e154422..de161c0101043e0b8511fbee1c15a46a7986acf8 100644
|
|
--- a/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
|
+++ b/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
|
@@ -581,6 +581,31 @@ public class ServerGamePacketListenerImpl
|
|
LOGGER.warn("{} (vehicle of {}) moved wrongly! {}", rootVehicle.getName().getString(), this.player.getName().getString(), Math.sqrt(d7));
|
|
}
|
|
|
|
+ // SparklyPaper start - Add PlayerMoveControllableVehicleEvent
|
|
+ org.bukkit.entity.Player craftPlayer = this.getCraftPlayer();
|
|
+ org.bukkit.entity.Entity bukkitVehicle = rootVehicle.getBukkitEntity();
|
|
+ if (bukkitVehicle instanceof org.bukkit.entity.Vehicle) {
|
|
+ net.sparklypower.sparklypaper.event.player.PlayerMoveControllableVehicleEvent playerMoveControllableVehicleEvent = new net.sparklypower.sparklypaper.event.player.PlayerMoveControllableVehicleEvent(
|
|
+ craftPlayer,
|
|
+ (org.bukkit.entity.Vehicle) bukkitVehicle,
|
|
+ new org.bukkit.Location(craftPlayer.getWorld(), x, y, z, f, f1),
|
|
+ new org.bukkit.Location(craftPlayer.getWorld(), d, d1, d2, f, f1)
|
|
+ );
|
|
+ if (!playerMoveControllableVehicleEvent.callEvent()) {
|
|
+ // Cancelled, move back!
|
|
+ rootVehicle.absSnapTo(x, y, z, f, f1);
|
|
+ this.player.absSnapTo(x, y, z, this.player.getYRot(), this.player.getXRot()); // CraftBukkit
|
|
+ this.send(ClientboundMoveVehiclePacket.fromEntity(rootVehicle));
|
|
+ return;
|
|
+ }
|
|
+ d = playerMoveControllableVehicleEvent.getTo().x();
|
|
+ d1 = playerMoveControllableVehicleEvent.getTo().y();
|
|
+ d2 = playerMoveControllableVehicleEvent.getTo().z();
|
|
+ f = playerMoveControllableVehicleEvent.getTo().getYaw();
|
|
+ f1 = playerMoveControllableVehicleEvent.getTo().getPitch();
|
|
+ }
|
|
+ // SparklyPaper end
|
|
+
|
|
rootVehicle.absSnapTo(d, d1, d2, f, f1);
|
|
this.player.absSnapTo(d, d1, d2, this.player.getYRot(), this.player.getXRot()); // CraftBukkit
|
|
// Paper start - optimise out extra getCubes
|