mirror of
https://github.com/PaperMC/Paper.git
synced 2024-12-27 23:10:16 +01:00
add RespawnFlags to PlayerRespawnEvent
This commit is contained in:
parent
28c7aca637
commit
e9c4b62f7e
1 changed files with 40 additions and 0 deletions
|
@ -18,6 +18,7 @@ public class PlayerRespawnEvent extends PlayerEvent {
|
|||
private final boolean isBedSpawn;
|
||||
private final boolean isAnchorSpawn;
|
||||
private final RespawnReason respawnReason;
|
||||
private final java.util.Set<RespawnFlag> respawnFlags; // Paper
|
||||
|
||||
@Deprecated(since = "1.16.1")
|
||||
public PlayerRespawnEvent(@NotNull final Player respawnPlayer, @NotNull final Location respawnLocation, final boolean isBedSpawn) {
|
||||
|
@ -29,12 +30,24 @@ public class PlayerRespawnEvent extends PlayerEvent {
|
|||
this(respawnPlayer, respawnLocation, isBedSpawn, false, RespawnReason.PLUGIN);
|
||||
}
|
||||
|
||||
@Deprecated // Paper
|
||||
public PlayerRespawnEvent(@NotNull final Player respawnPlayer, @NotNull final Location respawnLocation, final boolean isBedSpawn, final boolean isAnchorSpawn, @NotNull final RespawnReason respawnReason) {
|
||||
// Paper start
|
||||
this(respawnPlayer, respawnLocation, isBedSpawn, isAnchorSpawn, respawnReason, com.google.common.collect.ImmutableSet.builder());
|
||||
}
|
||||
|
||||
public PlayerRespawnEvent(@NotNull final Player respawnPlayer, @NotNull final Location respawnLocation, final boolean isBedSpawn, final boolean isAnchorSpawn, @NotNull final RespawnReason respawnReason, @NotNull final com.google.common.collect.ImmutableSet.Builder<org.bukkit.event.player.PlayerRespawnEvent.RespawnFlag> respawnFlags) {
|
||||
// Paper end
|
||||
super(respawnPlayer);
|
||||
this.respawnLocation = respawnLocation;
|
||||
this.isBedSpawn = isBedSpawn;
|
||||
this.isAnchorSpawn = isAnchorSpawn;
|
||||
this.respawnReason = respawnReason;
|
||||
// Paper start
|
||||
if (this.isBedSpawn) { respawnFlags.add(RespawnFlag.BED_SPAWN); }
|
||||
if (this.isAnchorSpawn) { respawnFlags.add(RespawnFlag.ANCHOR_SPAWN); }
|
||||
this.respawnFlags = respawnFlags.build();
|
||||
// Paper end
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -116,4 +129,31 @@ public class PlayerRespawnEvent extends PlayerEvent {
|
|||
*/
|
||||
PLUGIN;
|
||||
}
|
||||
|
||||
// Paper start
|
||||
/**
|
||||
* Get the set of flags that apply to this respawn.
|
||||
*
|
||||
* @return an immutable set of the flags that apply to this respawn
|
||||
*/
|
||||
@NotNull
|
||||
public java.util.Set<RespawnFlag> getRespawnFlags() {
|
||||
return respawnFlags;
|
||||
}
|
||||
|
||||
public enum RespawnFlag {
|
||||
/**
|
||||
* Will use the bed spawn location
|
||||
*/
|
||||
BED_SPAWN,
|
||||
/**
|
||||
* Will use the respawn anchor location
|
||||
*/
|
||||
ANCHOR_SPAWN,
|
||||
/**
|
||||
* Is caused by going to the end portal in the end.
|
||||
*/
|
||||
END_PORTAL,
|
||||
}
|
||||
// Paper end
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue