aboutsummaryrefslogtreecommitdiffhomepage
path: root/patches/api/0294-Add-PlayerSignCommandPreprocessEvent.patch
diff options
context:
space:
mode:
Diffstat (limited to 'patches/api/0294-Add-PlayerSignCommandPreprocessEvent.patch')
-rw-r--r--patches/api/0294-Add-PlayerSignCommandPreprocessEvent.patch59
1 files changed, 59 insertions, 0 deletions
diff --git a/patches/api/0294-Add-PlayerSignCommandPreprocessEvent.patch b/patches/api/0294-Add-PlayerSignCommandPreprocessEvent.patch
new file mode 100644
index 0000000000..8882c35337
--- /dev/null
+++ b/patches/api/0294-Add-PlayerSignCommandPreprocessEvent.patch
@@ -0,0 +1,59 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Jake Potrebic <[email protected]>
+Date: Fri, 9 Jul 2021 17:44:33 -0700
+Subject: [PATCH] Add PlayerSignCommandPreprocessEvent
+
+
+diff --git a/src/main/java/io/papermc/paper/event/player/PlayerSignCommandPreprocessEvent.java b/src/main/java/io/papermc/paper/event/player/PlayerSignCommandPreprocessEvent.java
+new file mode 100644
+index 0000000000000000000000000000000000000000..dc774403749633a1bf8e8088b8c7b402b0e43863
+--- /dev/null
++++ b/src/main/java/io/papermc/paper/event/player/PlayerSignCommandPreprocessEvent.java
+@@ -0,0 +1,47 @@
++package io.papermc.paper.event.player;
++
++import org.bukkit.block.Sign;
++import org.bukkit.block.sign.Side;
++import org.bukkit.entity.Player;
++import org.bukkit.event.player.PlayerCommandPreprocessEvent;
++import org.jetbrains.annotations.ApiStatus;
++import org.jetbrains.annotations.NotNull;
++
++import java.util.Set;
++
++/**
++ * Called when a {@link Player} clicks a side on a sign that causes a command to run.
++ * <p>
++ * This command is run with elevated permissions which allows players to access commands on signs they wouldn't
++ * normally be able to run.
++ */
++public class PlayerSignCommandPreprocessEvent extends PlayerCommandPreprocessEvent {
++
++ private final Sign sign;
++ private final Side side;
++
++ @ApiStatus.Internal
++ public PlayerSignCommandPreprocessEvent(@NotNull Player player, @NotNull String message, @NotNull Set<Player> recipients, @NotNull Sign sign, @NotNull Side side) {
++ super(player, message, recipients);
++ this.sign = sign;
++ this.side = side;
++ }
++
++ /**
++ * Gets the sign that the command originated from.
++ *
++ * @return the sign
++ */
++ public @NotNull Sign getSign() {
++ return this.sign;
++ }
++
++ /**
++ * Gets the side of the sign that the command originated from.
++ *
++ * @return the sign side
++ */
++ public @NotNull Side getSide() {
++ return this.side;
++ }
++}