aboutsummaryrefslogtreecommitdiff
path: root/src/main/kotlin/moe/nea/firmament/events
diff options
context:
space:
mode:
authornea <nea@nea.moe>2023-10-21 17:28:00 +0200
committernea <nea@nea.moe>2023-10-21 17:28:00 +0200
commite887067b7ecfa9d8e040008cca8d26c194f8c1a5 (patch)
tree8c558ed23edabd7722bf869ce24d5561b6644e44 /src/main/kotlin/moe/nea/firmament/events
parentbc758d17e2ac5c507117f85bf76b081a05f2baca (diff)
downloadfirmament-e887067b7ecfa9d8e040008cca8d26c194f8c1a5.tar.gz
firmament-e887067b7ecfa9d8e040008cca8d26c194f8c1a5.tar.bz2
firmament-e887067b7ecfa9d8e040008cca8d26c194f8c1a5.zip
Add tab completion to /warp
Diffstat (limited to 'src/main/kotlin/moe/nea/firmament/events')
-rw-r--r--src/main/kotlin/moe/nea/firmament/events/CommandEvent.kt6
-rw-r--r--src/main/kotlin/moe/nea/firmament/events/MaskCommands.kt17
2 files changed, 23 insertions, 0 deletions
diff --git a/src/main/kotlin/moe/nea/firmament/events/CommandEvent.kt b/src/main/kotlin/moe/nea/firmament/events/CommandEvent.kt
index c291ca4..5710245 100644
--- a/src/main/kotlin/moe/nea/firmament/events/CommandEvent.kt
+++ b/src/main/kotlin/moe/nea/firmament/events/CommandEvent.kt
@@ -16,9 +16,15 @@ import moe.nea.firmament.commands.literal
data class CommandEvent(
val dispatcher: CommandDispatcher<DefaultSource>,
val ctx: CommandRegistryAccess,
+ val serverCommands: CommandDispatcher<*>?,
) : FirmamentEvent() {
companion object : FirmamentEventBus<CommandEvent>()
+ fun deleteCommand(name: String) {
+ dispatcher.root.children.removeIf { it.name.equals(name, ignoreCase = false) }
+ serverCommands?.root?.children?.removeIf { it.name.equals(name, ignoreCase = false) }
+ }
+
fun register(
name: String,
block: CaseInsensitiveLiteralCommandNode.Builder<DefaultSource>.() -> Unit
diff --git a/src/main/kotlin/moe/nea/firmament/events/MaskCommands.kt b/src/main/kotlin/moe/nea/firmament/events/MaskCommands.kt
new file mode 100644
index 0000000..0ac0dde
--- /dev/null
+++ b/src/main/kotlin/moe/nea/firmament/events/MaskCommands.kt
@@ -0,0 +1,17 @@
+/*
+ * SPDX-FileCopyrightText: 2023 Linnea Gräf <nea@nea.moe>
+ *
+ * SPDX-License-Identifier: GPL-3.0-or-later
+ */
+
+package moe.nea.firmament.events
+
+import com.mojang.brigadier.CommandDispatcher
+
+data class MaskCommands(val dispatcher: CommandDispatcher<*>) : FirmamentEvent() {
+ companion object : FirmamentEventBus<MaskCommands>()
+
+ fun mask(name: String) {
+ dispatcher.root.children.removeIf { it.name.equals(name, ignoreCase = true) }
+ }
+}