Parity for respawn events (#11792)

This commit is contained in:
Lulu13022002
2025-04-30 20:04:24 +02:00
committed by GitHub
parent 2754d7c3b9
commit 567f63ae34
7 changed files with 149 additions and 129 deletions

View File

@@ -491,7 +491,7 @@
}
}
@@ -914,23 +_,82 @@
@@ -914,23 +_,77 @@
}
private boolean isPvpAllowed() {
@@ -541,18 +541,13 @@
+ );
+
+ // Paper start - respawn flags
+ com.google.common.collect.ImmutableSet.Builder<org.bukkit.event.player.PlayerRespawnEvent.RespawnFlag> builder = com.google.common.collect.ImmutableSet.builder();
+ if (respawnReason == org.bukkit.event.player.PlayerRespawnEvent.RespawnReason.END_PORTAL) {
+ builder.add(org.bukkit.event.player.PlayerRespawnEvent.RespawnFlag.END_PORTAL);
+ }
+ org.bukkit.event.player.PlayerRespawnEvent respawnEvent = new org.bukkit.event.player.PlayerRespawnEvent(
+ respawnPlayer,
+ location,
+ isBedSpawn,
+ isAnchorSpawn,
+ teleportTransition.missingRespawnBlock(),
+ respawnReason,
+ builder
+ respawnReason
+ );
+ // Paper end - respawn flags
+ this.level().getCraftServer().getPluginManager().callEvent(respawnEvent);