From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: JRoy <joshroy126@gmail.com>
Date: Sun, 10 May 2020 23:06:41 -0400
Subject: [PATCH] Potential bed API

Adds a new method to fetch the location of a player's bed without generating any sync loads.

getPotentialBedLocation - Gets the last known location of a player's bed. This does not preform any check if the bed is still valid and does not load any chunks.

diff --git a/src/main/java/org/bukkit/entity/HumanEntity.java b/src/main/java/org/bukkit/entity/HumanEntity.java
index 79569a329aa19ed954b9b65b78ef5d6d313501a1..c0d38f5a39610cbc523d210b76f17fa17c0d7e62 100644
--- a/src/main/java/org/bukkit/entity/HumanEntity.java
+++ b/src/main/java/org/bukkit/entity/HumanEntity.java
@@ -248,6 +248,18 @@ public interface HumanEntity extends LivingEntity, AnimalTamer, InventoryHolder
     @Nullable
     public Location getBedSpawnLocation();
 
+    // Paper start - Potential bed api
+    /**
+     * Gets the Location of the player's bed, null if they have not slept
+     * in one. This method will not attempt to validate if the current bed
+     * is still valid.
+     *
+     * @return Bed Location if has slept in one, otherwise null.
+     */
+    @Nullable
+    public Location getPotentialBedLocation();
+    // Paper end
+
     /**
      * Sets the Location where the player will spawn at their bed.
      *