emerald-extension / cn.berberman.emerald.dsl.command / DSLCommandBuilder
DSLCommandBuilder
class DSLCommandBuilder
A DSL structure to build commands.
Parameters
name - command name
Author berberman
Types
| TargetAndSenderBlocksData | class TargetAndSenderBlocksDataA class support function whenSenderIs, holds its data. |
Properties
| action | var action: ActionRead only, which will be invoked when commands execute. |
| aliases | val aliases: MutableList<String>The aliases of command, default is empty. |
| description | var description: StringThe description of command, default is empty. |
| permission | var permission: StringThe permission that this command needs, default is empty. |
| permissionMessage | var permissionMessage: StringThe message will say if invoker doesn’t have permission, default is empty. |
| usageMessage | var usageMessage: StringThe usageMessage of command, default is empty. |
Functions
| action | fun action(block: (CommandSender) -> Boolean): UnitSet action, only retain parameter command sender fun action(block: (CommandSender, Array<out String>) -> Boolean): UnitSet action, retain parameters command sender and command arguments |
| addAlias | fun addAlias(alias: String): BooleanAdd alias to this command. |
| subCommand | fun subCommand(name: String, block: (CommandSender, Array<out String>) -> Boolean): UnitCreate a sub-command |
| whenSenderIs | infix fun <T : CommandSender> CommandSender.whenSenderIs(block: T.() -> Boolean): TargetAndSenderBlocksDataProvide a function to take place of ` if…else… ` infix fun can’t declared generic explicitly |
Extension Functions
| 动作 | fun DSLCommandBuilder.动作(block: (CommandSender, Array<out String>) -> Boolean): Unit |
| 如果发送者是 | fun <T : CommandSender> DSLCommandBuilder.如果发送者是(发送者: CommandSender, block: T.() -> Boolean): TargetAndSenderBlocksData |
| 子命令 | fun DSLCommandBuilder.子命令(名字: String, block: (CommandSender, Array<out String>) -> Boolean): Unit |