aboutsummaryrefslogtreecommitdiffhomepage
path: root/patches/server/0288-Add-PlayerPostRespawnEvent.patch
diff options
context:
space:
mode:
Diffstat (limited to 'patches/server/0288-Add-PlayerPostRespawnEvent.patch')
-rw-r--r--patches/server/0288-Add-PlayerPostRespawnEvent.patch48
1 files changed, 48 insertions, 0 deletions
diff --git a/patches/server/0288-Add-PlayerPostRespawnEvent.patch b/patches/server/0288-Add-PlayerPostRespawnEvent.patch
new file mode 100644
index 0000000000..0b64cfe5fe
--- /dev/null
+++ b/patches/server/0288-Add-PlayerPostRespawnEvent.patch
@@ -0,0 +1,48 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: MisterVector <[email protected]>
+Date: Fri, 26 Oct 2018 21:31:00 -0700
+Subject: [PATCH] Add PlayerPostRespawnEvent
+
+
+diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
+index e3ce13685499e2adea5b776ec4abbdd978b6af58..8ce2826b1ded161a8220273d1fc5260ed3b6772f 100644
+--- a/src/main/java/net/minecraft/server/players/PlayerList.java
++++ b/src/main/java/net/minecraft/server/players/PlayerList.java
+@@ -751,9 +751,14 @@ public abstract class PlayerList {
+
+ boolean flag2 = false;
+
++ // Paper start - Add PlayerPostRespawnEvent
++ boolean isBedSpawn = false;
++ boolean isRespawn = false;
++ // Paper end - Add PlayerPostRespawnEvent
++
+ // CraftBukkit start - fire PlayerRespawnEvent
+ if (location == null) {
+- boolean isBedSpawn = false;
++ // boolean isBedSpawn = false; // Paper - Add PlayerPostRespawnEvent; moved up
+ ServerLevel worldserver1 = this.server.getLevel(entityplayer.getRespawnDimension());
+ if (worldserver1 != null) {
+ Optional optional;
+@@ -805,6 +810,7 @@ public abstract class PlayerList {
+
+ location = respawnEvent.getRespawnLocation();
+ if (!flag) entityplayer.reset(); // SPIGOT-4785
++ isRespawn = true; // Paper - Add PlayerPostRespawnEvent
+ } else {
+ location.setWorld(worldserver.getWorld());
+ }
+@@ -863,6 +869,13 @@ public abstract class PlayerList {
+ if (entityplayer.connection.isDisconnected()) {
+ this.save(entityplayer);
+ }
++
++ // Paper start - Add PlayerPostRespawnEvent
++ if (isRespawn) {
++ cserver.getPluginManager().callEvent(new com.destroystokyo.paper.event.player.PlayerPostRespawnEvent(entityplayer.getBukkitEntity(), location, isBedSpawn));
++ }
++ // Paper end - Add PlayerPostRespawnEvent
++
+ // CraftBukkit end
+ return entityplayer1;
+ }