2021-06-11 14:02:28 +02:00
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: HexedHero <6012891+HexedHero@users.noreply.github.com>
Date: Fri, 23 Apr 2021 22:42:42 +0100
Subject: [PATCH] Fix anchor respawn acting as a bed respawn from the end
portal
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
2023-05-12 13:10:08 +02:00
index 481f2f5dc2e62ae0bbdb8bbac5e8c3c5e090def7..71b2a7d1d09a4a9da8d9a2822ef1daa417d468d0 100644
2021-06-11 14:02:28 +02:00
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
2023-05-12 13:10:08 +02:00
@@ -803,6 +803,7 @@ public abstract class PlayerList {
2021-06-11 14:02:28 +02:00
// Paper start
boolean isBedSpawn = false;
+ boolean isAnchorSpawn = false;
boolean isRespawn = false;
boolean isLocAltered = false; // Paper - Fix SPIGOT-5989
// Paper end
2023-05-12 13:10:08 +02:00
@@ -823,6 +824,7 @@ public abstract class PlayerList {
2021-06-11 14:02:28 +02:00
if (optional.isPresent()) {
BlockState iblockdata = worldserver1.getBlockState(blockposition);
boolean flag3 = iblockdata.is(Blocks.RESPAWN_ANCHOR);
+ isAnchorSpawn = flag3; // Paper - Fix anchor respawn acting as a bed respawn from the end portal
Vec3 vec3d = (Vec3) optional.get();
float f1;
2023-05-12 13:10:08 +02:00
@@ -851,7 +853,7 @@ public abstract class PlayerList {
2021-06-11 14:02:28 +02:00
}
2021-06-20 21:25:59 +02:00
Player respawnPlayer = entityplayer1.getBukkitEntity();
2023-04-10 10:03:36 +02:00
- PlayerRespawnEvent respawnEvent = new PlayerRespawnEvent(respawnPlayer, location, isBedSpawn && !flag2, flag2, reason);
+ PlayerRespawnEvent respawnEvent = new PlayerRespawnEvent(respawnPlayer, location, isBedSpawn && !isAnchorSpawn, isAnchorSpawn, reason); // Paper - Fix anchor respawn acting as a bed respawn from the end portal
2021-06-15 04:59:31 +02:00
this.cserver.getPluginManager().callEvent(respawnEvent);
2021-06-11 14:02:28 +02:00
// Spigot Start
if (entityplayer.connection.isDisconnected()) {