58 lines
2.7 KiB
Diff
58 lines
2.7 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Lama06 <andreasprues36@gmail.com>
|
|
Date: Sat, 21 Jan 2023 13:45:22 +0100
|
|
Subject: [PATCH] Win Screen API
|
|
|
|
|
|
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
|
|
index 72d105674fd93fcedbea07ddb20580e24297f292..3c904524cdd88196116a089aefe913dd41d1a691 100644
|
|
--- a/src/main/java/org/bukkit/entity/Player.java
|
|
+++ b/src/main/java/org/bukkit/entity/Player.java
|
|
@@ -1135,6 +1135,47 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
|
|
*/
|
|
public void sendMap(@NotNull MapView map);
|
|
|
|
+ // Paper start
|
|
+ /**
|
|
+ * Shows the player the win screen that normally is only displayed after one kills the ender dragon
|
|
+ * and exits the end for the first time.
|
|
+ * In vanilla, the win screen starts with a poem and then continues with the credits but its content can be
|
|
+ * changed by using a resource pack.
|
|
+ * <br>
|
|
+ * Calling this method does not change the value of {@link #hasSeenWinScreen()}.
|
|
+ * That means that the win screen is still displayed to a player if they leave the end for the first time, even though
|
|
+ * they have seen it before because this method was called.
|
|
+ * Note this method does not make the player invulnerable, which is normally expected when viewing credits.
|
|
+ *
|
|
+ * @see #hasSeenWinScreen()
|
|
+ * @see #setHasSeenWinScreen(boolean)
|
|
+ * @see <a href="https://minecraft.wiki/wiki/End_Poem#Technical_details">https://minecraft.wiki/wiki/End_Poem#Technical_details</a>
|
|
+ */
|
|
+ public void showWinScreen();
|
|
+
|
|
+ /**
|
|
+ * Returns whether this player has seen the win screen before.
|
|
+ * When a player leaves the end the win screen is shown to them if they have not seen it before.
|
|
+ *
|
|
+ * @return Whether this player has seen the win screen before
|
|
+ * @see #setHasSeenWinScreen(boolean)
|
|
+ * @see #showWinScreen()
|
|
+ * @see <a href="https://minecraft.wiki/wiki/End_Poem">https://minecraft.wiki/wiki/End_Poem</a>
|
|
+ */
|
|
+ public boolean hasSeenWinScreen();
|
|
+
|
|
+ /**
|
|
+ * Changes whether this player has seen the win screen before.
|
|
+ * When a player leaves the end the win screen is shown to them if they have not seen it before.
|
|
+ *
|
|
+ * @param hasSeenWinScreen Whether this player has seen the win screen before
|
|
+ * @see #hasSeenWinScreen()
|
|
+ * @see #showWinScreen()
|
|
+ * @see <a href="https://minecraft.wiki/wiki/End_Poem">https://minecraft.wiki/wiki/End_Poem</a>
|
|
+ */
|
|
+ public void setHasSeenWinScreen(boolean hasSeenWinScreen);
|
|
+ // Paper end
|
|
+
|
|
// Paper start
|
|
/**
|
|
* Permanently Bans the Profile and IP address currently used by the player.
|