aboutsummaryrefslogtreecommitdiffhomepage
path: root/patches/api/0057-Add-UnknownCommandEvent.patch
blob: 9e3d997b0def300b4c41cf1c74ba06610aad1afa (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Sweepyoface <github@sweepy.pw>
Date: Sat, 17 Jun 2017 18:48:06 -0400
Subject: [PATCH] Add UnknownCommandEvent


diff --git a/src/main/java/org/bukkit/event/command/UnknownCommandEvent.java b/src/main/java/org/bukkit/event/command/UnknownCommandEvent.java
new file mode 100644
index 0000000000000000000000000000000000000000..d5632d352590dec6982a372b285a8d4a332fa589
--- /dev/null
+++ b/src/main/java/org/bukkit/event/command/UnknownCommandEvent.java
@@ -0,0 +1,114 @@
+package org.bukkit.event.command;
+
+import net.kyori.adventure.text.Component;
+import org.bukkit.Bukkit;
+import org.bukkit.command.CommandSender;
+import org.bukkit.event.HandlerList;
+import org.bukkit.event.Event;
+
+import org.jetbrains.annotations.NotNull;
+import org.jetbrains.annotations.Nullable;
+
+/**
+ * Thrown when a player executes a command that is not defined
+ */
+public class UnknownCommandEvent extends Event {
+    private static final HandlerList handlers = new HandlerList();
+    @NotNull private CommandSender sender;
+    @NotNull private String commandLine;
+    @Nullable private Component message;
+
+    @Deprecated
+    public UnknownCommandEvent(@NotNull final CommandSender sender, @NotNull final String commandLine, @Nullable final String message) {
+        this(sender, commandLine, message == null ? null : Bukkit.getUnsafe().legacyComponentSerializer().deserialize(message));
+    }
+
+    public UnknownCommandEvent(@NotNull final CommandSender sender, @NotNull final String commandLine, @Nullable final Component message) {
+        super(false);
+        this.sender = sender;
+        this.commandLine = commandLine;
+        this.message = message;
+    }
+
+    /**
+     * Gets the CommandSender or ConsoleCommandSender
+     * <p>
+     *
+     * @return Sender of the command
+     */
+    @NotNull
+    public CommandSender getSender() {
+        return sender;
+    }
+
+    /**
+     * Gets the command that was send
+     * <p>
+     *
+     * @return Command sent
+     */
+    @NotNull
+    public String getCommandLine() {
+        return commandLine;
+    }
+
+    /**
+     * Gets message that will be returned
+     * <p>
+     *
+     * @return Unknown command message
+     * @deprecated use {@link #message()}
+     */
+    @Nullable
+    @Deprecated
+    public String getMessage() {
+        return this.message == null ? null : Bukkit.getUnsafe().legacyComponentSerializer().serialize(this.message);
+    }
+
+    /**
+     * Sets message that will be returned
+     * <p>
+     * Set to null to avoid any message being sent
+     *
+     * @param message the message to be returned, or null
+     * @deprecated use {@link #message(Component)}
+     */
+    @Deprecated
+    public void setMessage(@Nullable String message) {
+        this.message(message == null ? null : Bukkit.getUnsafe().legacyComponentSerializer().deserialize(message));
+    }
+
+    /**
+     * Gets message that will be returned
+     * <p>
+     *
+     * @return Unknown command message
+     */
+    @Nullable
+    public Component message() {
+        return this.message;
+    }
+
+    /**
+     * Sets message that will be returned
+     * <p>
+     * Set to null to avoid any message being sent
+     *
+     * @param message the message to be returned, or null
+     */
+    public void message(@Nullable Component message) {
+        this.message = message;
+    }
+
+    @NotNull
+    @Override
+    public HandlerList getHandlers() {
+        return handlers;
+    }
+
+    @NotNull
+    public static HandlerList getHandlerList() {
+        return handlers;
+    }
+}
+