diff --git a/cloud-minecraft/cloud-paper/src/main/java/cloud/commandframework/paper/PaperCommandManager.java b/cloud-minecraft/cloud-paper/src/main/java/cloud/commandframework/paper/PaperCommandManager.java index 05714d95..720bb068 100644 --- a/cloud-minecraft/cloud-paper/src/main/java/cloud/commandframework/paper/PaperCommandManager.java +++ b/cloud-minecraft/cloud-paper/src/main/java/cloud/commandframework/paper/PaperCommandManager.java @@ -85,8 +85,13 @@ public class PaperCommandManager extends BukkitCommandManager { /** * Register asynchronous completions. This requires all argument parsers to be thread safe, and it * is up to the caller to guarantee that such is the case + * + * @throws IllegalStateException when the server does not support asynchronous completions. */ - public void registerAsynchronousCompletions() { + public void registerAsynchronousCompletions() throws IllegalStateException { + if (!this.queryCapability(CloudBukkitCapabilities.ASYNCHRONOUS_COMPLETION)) { + throw new IllegalStateException("Failed to register asynchronous command completion listener."); + } Bukkit.getServer().getPluginManager().registerEvents(new AsyncCommandSuggestionsListener<>(this), this.getOwningPlugin()); }