mirror of
https://github.com/PaperMC/Paper.git
synced 2024-12-27 11:27:35 +01:00
Add event for player editing sign
This commit is contained in:
parent
7920d9020b
commit
7c2fbd4ab8
@ -0,0 +1,105 @@
|
|||||||
|
package io.papermc.paper.event.player;
|
||||||
|
|
||||||
|
import org.bukkit.block.Sign;
|
||||||
|
import org.bukkit.block.sign.Side;
|
||||||
|
import org.bukkit.entity.HumanEntity;
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
import org.bukkit.event.Cancellable;
|
||||||
|
import org.bukkit.event.HandlerList;
|
||||||
|
import org.bukkit.event.player.PlayerEvent;
|
||||||
|
import org.jetbrains.annotations.ApiStatus;
|
||||||
|
import org.jspecify.annotations.NullMarked;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Called when a player begins editing a sign's text.
|
||||||
|
* <p>
|
||||||
|
* Cancelling this event stops the sign editing menu from opening.
|
||||||
|
*/
|
||||||
|
@NullMarked
|
||||||
|
public class PlayerOpenSignEvent extends PlayerEvent implements Cancellable {
|
||||||
|
|
||||||
|
private static final HandlerList HANDLER_LIST = new HandlerList();
|
||||||
|
|
||||||
|
private final Sign sign;
|
||||||
|
private final Side side;
|
||||||
|
private final Cause cause;
|
||||||
|
|
||||||
|
private boolean cancelled;
|
||||||
|
|
||||||
|
@ApiStatus.Internal
|
||||||
|
public PlayerOpenSignEvent(final Player editor, final Sign sign, final Side side, final Cause cause) {
|
||||||
|
super(editor);
|
||||||
|
this.sign = sign;
|
||||||
|
this.side = side;
|
||||||
|
this.cause = cause;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the sign that was clicked.
|
||||||
|
*
|
||||||
|
* @return {@link Sign} that was clicked
|
||||||
|
*/
|
||||||
|
public Sign getSign() {
|
||||||
|
return this.sign;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets which side of the sign was clicked.
|
||||||
|
*
|
||||||
|
* @return {@link Side} that was clicked
|
||||||
|
* @see Sign#getSide(Side)
|
||||||
|
*/
|
||||||
|
public Side getSide() {
|
||||||
|
return this.side;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The cause of this sign open.
|
||||||
|
*
|
||||||
|
* @return the cause
|
||||||
|
*/
|
||||||
|
public Cause getCause() {
|
||||||
|
return this.cause;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean isCancelled() {
|
||||||
|
return this.cancelled;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setCancelled(final boolean cancel) {
|
||||||
|
this.cancelled = cancel;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public HandlerList getHandlers() {
|
||||||
|
return HANDLER_LIST;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static HandlerList getHandlerList() {
|
||||||
|
return HANDLER_LIST;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The cause of the {@link PlayerOpenSignEvent}.
|
||||||
|
*/
|
||||||
|
public enum Cause {
|
||||||
|
/**
|
||||||
|
* The event was triggered by the placement of a sign.
|
||||||
|
*/
|
||||||
|
PLACE,
|
||||||
|
/**
|
||||||
|
* The event was triggered by an interaction with a sign.
|
||||||
|
*/
|
||||||
|
INTERACT,
|
||||||
|
/**
|
||||||
|
* The event was triggered via a plugin with {@link HumanEntity#openSign(Sign, Side)}
|
||||||
|
*/
|
||||||
|
PLUGIN,
|
||||||
|
/**
|
||||||
|
* Fallback cause for any unknown cause.
|
||||||
|
*/
|
||||||
|
UNKNOWN,
|
||||||
|
}
|
||||||
|
}
|
@ -9,7 +9,10 @@ import org.jetbrains.annotations.NotNull;
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* This event is fired when a sign is opened by the player.
|
* This event is fired when a sign is opened by the player.
|
||||||
|
* @deprecated use {@link io.papermc.paper.event.player.PlayerOpenSignEvent}
|
||||||
*/
|
*/
|
||||||
|
@Deprecated(forRemoval = true) // Paper
|
||||||
|
@org.bukkit.Warning(false) // Paper
|
||||||
public class PlayerSignOpenEvent extends PlayerEvent implements Cancellable {
|
public class PlayerSignOpenEvent extends PlayerEvent implements Cancellable {
|
||||||
|
|
||||||
private static final HandlerList handlers = new HandlerList();
|
private static final HandlerList handlers = new HandlerList();
|
||||||
|
Loading…
Reference in New Issue
Block a user