geforkt von Mirrors/Paper
96d5e6ca48
Currently includes generated key holder classes for types used in the Registry Modification API
79 Zeilen
2.8 KiB
Diff
79 Zeilen
2.8 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: MisterVector <whizkid3000@hotmail.com>
|
|
Date: Fri, 26 Oct 2018 21:33:13 -0700
|
|
Subject: [PATCH] Add PlayerPostRespawnEvent
|
|
|
|
|
|
diff --git a/src/main/java/com/destroystokyo/paper/event/player/PlayerPostRespawnEvent.java b/src/main/java/com/destroystokyo/paper/event/player/PlayerPostRespawnEvent.java
|
|
new file mode 100644
|
|
index 0000000000000000000000000000000000000000..31f34b54801f6699ce43355fa2a0a51f1ad0c997
|
|
--- /dev/null
|
|
+++ b/src/main/java/com/destroystokyo/paper/event/player/PlayerPostRespawnEvent.java
|
|
@@ -0,0 +1,52 @@
|
|
+package com.destroystokyo.paper.event.player;
|
|
+
|
|
+import org.bukkit.Location;
|
|
+import org.bukkit.entity.Player;
|
|
+import org.bukkit.event.HandlerList;
|
|
+import org.bukkit.event.player.PlayerEvent;
|
|
+import org.jetbrains.annotations.NotNull;
|
|
+
|
|
+/**
|
|
+ * Fired after a player has respawned
|
|
+ */
|
|
+public class PlayerPostRespawnEvent extends PlayerEvent {
|
|
+ private final static HandlerList handlers = new HandlerList();
|
|
+ private final Location respawnedLocation;
|
|
+ private final boolean isBedSpawn;
|
|
+
|
|
+ public PlayerPostRespawnEvent(@NotNull final Player respawnPlayer, @NotNull final Location respawnedLocation, final boolean isBedSpawn) {
|
|
+ super(respawnPlayer);
|
|
+ this.respawnedLocation = respawnedLocation;
|
|
+ this.isBedSpawn = isBedSpawn;
|
|
+ }
|
|
+
|
|
+ /**
|
|
+ * Returns the location of the respawned player
|
|
+ *
|
|
+ * @return location of the respawned player
|
|
+ */
|
|
+ @NotNull
|
|
+ public Location getRespawnedLocation() {
|
|
+ return respawnedLocation.clone();
|
|
+ }
|
|
+
|
|
+ /**
|
|
+ * Checks if the player respawned to their bed
|
|
+ *
|
|
+ * @return whether the player respawned to their bed
|
|
+ */
|
|
+ public boolean isBedSpawn() {
|
|
+ return isBedSpawn;
|
|
+ }
|
|
+
|
|
+ @Override
|
|
+ @NotNull
|
|
+ public HandlerList getHandlers() {
|
|
+ return handlers;
|
|
+ }
|
|
+
|
|
+ @NotNull
|
|
+ public static HandlerList getHandlerList() {
|
|
+ return handlers;
|
|
+ }
|
|
+}
|
|
diff --git a/src/main/java/org/bukkit/event/player/PlayerRespawnEvent.java b/src/main/java/org/bukkit/event/player/PlayerRespawnEvent.java
|
|
index c3d9d95be50eacb212108a01b612756f772956aa..03225d2b4c91caa58c2995d9cf0e7fb4663749ab 100644
|
|
--- a/src/main/java/org/bukkit/event/player/PlayerRespawnEvent.java
|
|
+++ b/src/main/java/org/bukkit/event/player/PlayerRespawnEvent.java
|
|
@@ -8,6 +8,9 @@ import org.jetbrains.annotations.NotNull;
|
|
|
|
/**
|
|
* Called when a player respawns.
|
|
+ * <p>
|
|
+ * If changing player state, see {@link com.destroystokyo.paper.event.player.PlayerPostRespawnEvent}
|
|
+ * because the player is "reset" between this event and that event and some changes won't persist.
|
|
*/
|
|
public class PlayerRespawnEvent extends PlayerEvent {
|
|
private static final HandlerList handlers = new HandlerList();
|