33 lines
1.7 KiB
Diff
33 lines
1.7 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Allink <arclicious@vivaldi.net>
|
|
Date: Tue, 5 Jul 2022 04:12:31 +0100
|
|
Subject: [PATCH] Add spectator teleport event
|
|
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
|
index 678bba9d636a0eb34270a2d26b5b3d0d6d900115..30339009c126fca8393ceed3c780c097b6c06ffd 100644
|
|
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
|
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
|
@@ -1,5 +1,6 @@
|
|
package net.minecraft.server.network;
|
|
|
|
+import me.totalfreedom.scissors.event.player.SpectatorTeleportEvent; // Scissors
|
|
import com.google.common.collect.Lists;
|
|
import com.google.common.primitives.Floats;
|
|
import com.mojang.brigadier.ParseResults;
|
|
@@ -2148,6 +2149,14 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
|
Entity entity = packet.getEntity(worldserver);
|
|
|
|
if (entity != null) {
|
|
+ // Scissors start - Add spectator teleport event
|
|
+ final SpectatorTeleportEvent event = new SpectatorTeleportEvent(this.player.getBukkitEntity(), entity.getBukkitEntity());
|
|
+
|
|
+ if(!event.callEvent()) {
|
|
+ return;
|
|
+ }
|
|
+ // Scissors end
|
|
+
|
|
io.papermc.paper.threadedregions.TeleportUtils.teleport(this.player, false, entity, null, null, Entity.TELEPORT_FLAG_LOAD_CHUNK, org.bukkit.event.player.PlayerTeleportEvent.TeleportCause.SPECTATE, null); // Folia - region threading
|
|
return;
|
|
}
|