Add PlayerKickEvent causes
This commit is contained in:
@@ -335,6 +335,14 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
|
|||||||
* @param message kick message
|
* @param message kick message
|
||||||
*/
|
*/
|
||||||
void kick(final net.kyori.adventure.text.@Nullable Component message);
|
void kick(final net.kyori.adventure.text.@Nullable Component message);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Kicks player with custom kick message and cause.
|
||||||
|
*
|
||||||
|
* @param message kick message
|
||||||
|
* @param cause kick cause
|
||||||
|
*/
|
||||||
|
void kick(final net.kyori.adventure.text.@Nullable Component message, org.bukkit.event.player.PlayerKickEvent.@NotNull Cause cause);
|
||||||
// Paper end
|
// Paper end
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ public class PlayerKickEvent extends PlayerEvent implements Cancellable {
|
|||||||
private static final HandlerList handlers = new HandlerList();
|
private static final HandlerList handlers = new HandlerList();
|
||||||
private net.kyori.adventure.text.Component leaveMessage; // Paper
|
private net.kyori.adventure.text.Component leaveMessage; // Paper
|
||||||
private net.kyori.adventure.text.Component kickReason; // Paper
|
private net.kyori.adventure.text.Component kickReason; // Paper
|
||||||
|
private final Cause cause; // Paper
|
||||||
private boolean cancel;
|
private boolean cancel;
|
||||||
|
|
||||||
@Deprecated // Paper
|
@Deprecated // Paper
|
||||||
@@ -19,14 +20,26 @@ public class PlayerKickEvent extends PlayerEvent implements Cancellable {
|
|||||||
super(playerKicked);
|
super(playerKicked);
|
||||||
this.kickReason = net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer.legacySection().deserialize(kickReason); // Paper
|
this.kickReason = net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer.legacySection().deserialize(kickReason); // Paper
|
||||||
this.leaveMessage = net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer.legacySection().deserialize(leaveMessage); // Paper
|
this.leaveMessage = net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer.legacySection().deserialize(leaveMessage); // Paper
|
||||||
|
this.cause = Cause.UNKNOWN; // Paper
|
||||||
this.cancel = false;
|
this.cancel = false;
|
||||||
}
|
}
|
||||||
// Paper start
|
// 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) {
|
public PlayerKickEvent(@NotNull final Player playerKicked, @NotNull final net.kyori.adventure.text.Component kickReason, @NotNull final net.kyori.adventure.text.Component leaveMessage) {
|
||||||
super(playerKicked);
|
super(playerKicked);
|
||||||
this.kickReason = kickReason;
|
this.kickReason = kickReason;
|
||||||
this.leaveMessage = leaveMessage;
|
this.leaveMessage = leaveMessage;
|
||||||
this.cancel = false;
|
this.cancel = false;
|
||||||
|
this.cause = Cause.UNKNOWN;
|
||||||
|
}
|
||||||
|
|
||||||
|
@org.jetbrains.annotations.ApiStatus.Internal
|
||||||
|
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 +145,79 @@ public class PlayerKickEvent extends PlayerEvent implements Cancellable {
|
|||||||
public static HandlerList getHandlerList() {
|
public static HandlerList getHandlerList() {
|
||||||
return handlers;
|
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,
|
||||||
|
|
||||||
|
INVALID_COOKIE,
|
||||||
|
|
||||||
|
SPAM,
|
||||||
|
|
||||||
|
ILLEGAL_ACTION,
|
||||||
|
|
||||||
|
ILLEGAL_CHARACTERS,
|
||||||
|
|
||||||
|
OUT_OF_ORDER_CHAT,
|
||||||
|
|
||||||
|
UNSIGNED_CHAT,
|
||||||
|
|
||||||
|
CHAT_VALIDATION_FAILED,
|
||||||
|
|
||||||
|
EXPIRED_PROFILE_PUBLIC_KEY,
|
||||||
|
|
||||||
|
INVALID_PUBLIC_KEY_SIGNATURE,
|
||||||
|
|
||||||
|
TOO_MANY_PENDING_CHATS,
|
||||||
|
|
||||||
|
SELF_INTERACTION,
|
||||||
|
|
||||||
|
DUPLICATE_LOGIN,
|
||||||
|
|
||||||
|
RESOURCE_PACK_REJECTION,
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Spigot's restart command
|
||||||
|
*/
|
||||||
|
RESTART_COMMAND,
|
||||||
|
/**
|
||||||
|
* Fallback cause
|
||||||
|
*/
|
||||||
|
UNKNOWN,
|
||||||
|
}
|
||||||
|
// Paper end
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user