diff options
author | nea <nea@nea.moe> | 2023-10-21 17:28:00 +0200 |
---|---|---|
committer | nea <nea@nea.moe> | 2023-10-21 17:28:00 +0200 |
commit | e887067b7ecfa9d8e040008cca8d26c194f8c1a5 (patch) | |
tree | 8c558ed23edabd7722bf869ce24d5561b6644e44 /src/main/kotlin/moe/nea/firmament/events | |
parent | bc758d17e2ac5c507117f85bf76b081a05f2baca (diff) | |
download | Firmament-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.kt | 6 | ||||
-rw-r--r-- | src/main/kotlin/moe/nea/firmament/events/MaskCommands.kt | 17 |
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) } + } +} |