aboutsummaryrefslogtreecommitdiffhomepage
path: root/patches/api/0307-Add-PlayerKickEvent-causes.patch
diff options
context:
space:
mode:
authorJake Potrebic <[email protected]>2022-03-04 00:09:43 -0800
committerGitHub <[email protected]>2022-03-04 09:09:43 +0100
commit15b6b3db2cf24c98afbfb0849e694875d18fc021 (patch)
tree03e884d0c7fe2ce292825b5b51ec4c9a6ce2e8cc /patches/api/0307-Add-PlayerKickEvent-causes.patch
parent753bf2c1034c5f35cc0839001d12363a44f936fc (diff)
downloadPaper-15b6b3db2cf24c98afbfb0849e694875d18fc021.tar.gz
Paper-15b6b3db2cf24c98afbfb0849e694875d18fc021.zip
Add StructuresLocateEvent as replacement for StructureLocateEvent (#7524)
Diffstat (limited to 'patches/api/0307-Add-PlayerKickEvent-causes.patch')
-rw-r--r--patches/api/0307-Add-PlayerKickEvent-causes.patch129
1 files changed, 129 insertions, 0 deletions
diff --git a/patches/api/0307-Add-PlayerKickEvent-causes.patch b/patches/api/0307-Add-PlayerKickEvent-causes.patch
new file mode 100644
index 0000000000..8977bbbb31
--- /dev/null
+++ b/patches/api/0307-Add-PlayerKickEvent-causes.patch
@@ -0,0 +1,129 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Jake Potrebic <[email protected]>
+Date: Sat, 15 May 2021 20:30:34 -0700
+Subject: [PATCH] Add PlayerKickEvent causes
+
+
+diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
+index d881ae7fb0c17242998c0a495ccd81802611410a..35be51b2b57acfc5dc165b22e16f499fac906e34 100644
+--- a/src/main/java/org/bukkit/entity/Player.java
++++ b/src/main/java/org/bukkit/entity/Player.java
+@@ -236,6 +236,14 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
+ * @param message kick message
+ */
+ void kick(final @Nullable net.kyori.adventure.text.Component message);
++
++ /**
++ * Kicks player with custom kick message and cause.
++ *
++ * @param message kick message
++ * @param cause kick cause
++ */
++ void kick(final @Nullable Component message, @NotNull org.bukkit.event.player.PlayerKickEvent.Cause cause);
+ // Paper end
+
+ /**
+diff --git a/src/main/java/org/bukkit/event/player/PlayerKickEvent.java b/src/main/java/org/bukkit/event/player/PlayerKickEvent.java
+index 5c0efe74237dbe6803ce023fde99682ff70d1a92..05ecfd8c133e72d198faeeded8c757c231c871cc 100644
+--- a/src/main/java/org/bukkit/event/player/PlayerKickEvent.java
++++ b/src/main/java/org/bukkit/event/player/PlayerKickEvent.java
+@@ -12,6 +12,7 @@ public class PlayerKickEvent extends PlayerEvent implements Cancellable {
+ private static final HandlerList handlers = new HandlerList();
+ private net.kyori.adventure.text.Component leaveMessage; // Paper
+ private net.kyori.adventure.text.Component kickReason; // Paper
++ private final Cause cause; // Paper
+ private Boolean cancel;
+
+ @Deprecated // Paper
+@@ -19,14 +20,25 @@ public class PlayerKickEvent extends PlayerEvent implements Cancellable {
+ super(playerKicked);
+ this.kickReason = org.bukkit.Bukkit.getUnsafe().legacyComponentSerializer().deserialize(kickReason); // Paper
+ this.leaveMessage = org.bukkit.Bukkit.getUnsafe().legacyComponentSerializer().deserialize(leaveMessage); // Paper
++ this.cause = Cause.UNKNOWN; // Paper
+ this.cancel = false;
+ }
+ // Paper start
++ @Deprecated
+ public PlayerKickEvent(@NotNull final Player playerKicked, @NotNull final net.kyori.adventure.text.Component kickReason, @NotNull final net.kyori.adventure.text.Component leaveMessage) {
+ super(playerKicked);
+ this.kickReason = kickReason;
+ this.leaveMessage = leaveMessage;
+ this.cancel = false;
++ this.cause = Cause.UNKNOWN;
++ }
++
++ public PlayerKickEvent(@NotNull final Player playerKicked, @NotNull final net.kyori.adventure.text.Component kickReason, @NotNull final net.kyori.adventure.text.Component leaveMessage, @NotNull final Cause cause) {
++ super(playerKicked);
++ this.kickReason = kickReason;
++ this.leaveMessage = leaveMessage;
++ this.cancel = false;
++ this.cause = cause;
+ }
+
+ /**
+@@ -132,4 +144,65 @@ public class PlayerKickEvent extends PlayerEvent implements Cancellable {
+ public static HandlerList getHandlerList() {
+ return handlers;
+ }
++ // Paper start
++ /**
++ * Gets the cause of this kick
++ *
++ * @return
++ */
++ @NotNull
++ public org.bukkit.event.player.PlayerKickEvent.Cause getCause() {
++ return cause;
++ }
++
++ public enum Cause {
++
++ PLUGIN,
++
++ WHITELIST,
++
++ BANNED,
++
++ IP_BANNED,
++
++ KICK_COMMAND,
++
++ FLYING_PLAYER,
++
++ FLYING_VEHICLE,
++
++ TIMEOUT,
++
++ IDLING,
++
++ INVALID_VEHICLE_MOVEMENT,
++
++ INVALID_PLAYER_MOVEMENT,
++
++ INVALID_ENTITY_ATTACKED,
++
++ INVALID_PAYLOAD,
++
++ SPAM,
++
++ ILLEGAL_ACTION,
++
++ ILLEGAL_CHARACTERS,
++
++ SELF_INTERACTION,
++
++ DUPLICATE_LOGIN,
++
++ RESOURCE_PACK_REJECTION,
++
++ /**
++ * Spigot's restart command
++ */
++ RESTART_COMMAND,
++ /**
++ * Fallback cause
++ */
++ UNKNOWN,
++ }
++ // Paper end
+ }