mirror of
https://github.com/PaperMC/Paper.git
synced 2024-12-28 15:30:19 +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 isBedSpawn;
|
||||||
private final boolean isAnchorSpawn;
|
private final boolean isAnchorSpawn;
|
||||||
private final RespawnReason respawnReason;
|
private final RespawnReason respawnReason;
|
||||||
|
private final java.util.Set<RespawnFlag> respawnFlags; // Paper
|
||||||
|
|
||||||
@Deprecated(since = "1.16.1")
|
@Deprecated(since = "1.16.1")
|
||||||
public PlayerRespawnEvent(@NotNull final Player respawnPlayer, @NotNull final Location respawnLocation, final boolean isBedSpawn) {
|
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);
|
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) {
|
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);
|
super(respawnPlayer);
|
||||||
this.respawnLocation = respawnLocation;
|
this.respawnLocation = respawnLocation;
|
||||||
this.isBedSpawn = isBedSpawn;
|
this.isBedSpawn = isBedSpawn;
|
||||||
this.isAnchorSpawn = isAnchorSpawn;
|
this.isAnchorSpawn = isAnchorSpawn;
|
||||||
this.respawnReason = respawnReason;
|
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;
|
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