mirror of
https://github.com/mamoe/mirai.git
synced 2025-01-11 02:50:15 +08:00
change command structure
This commit is contained in:
parent
7a7b30766a
commit
1e4035c7a4
@ -97,6 +97,10 @@ abstract class RawCommand(name:String, alias: Array<String> = arrayOf()):Command
|
||||
}
|
||||
|
||||
|
||||
@Command.Permission(CommandPermission.Default::class)
|
||||
abstract fun onCommand(list: List<Message>)
|
||||
|
||||
|
||||
}
|
||||
/**
|
||||
* 解析完成的指令实际参数列表. 参数顺序与 [Command.descriptor] 的 [CommandDescriptor.params] 相同.
|
||||
|
@ -28,7 +28,6 @@ interface CommandPermission {
|
||||
*/
|
||||
fun CommandSender.hasPermission(): Boolean
|
||||
|
||||
|
||||
/**
|
||||
* 满足两个权限其中一个即可使用指令
|
||||
*/ // no extension for Java
|
||||
@ -39,7 +38,6 @@ interface CommandPermission {
|
||||
*/ // no extension for Java
|
||||
infix fun and(another: CommandPermission): CommandPermission = AndCommandPermission(this, another)
|
||||
|
||||
|
||||
/**
|
||||
* 任何人都可以使用这个指令
|
||||
*/
|
||||
@ -55,7 +53,7 @@ interface CommandPermission {
|
||||
}
|
||||
|
||||
/**
|
||||
* 来自任何 [Bot] 的任何一个管理员或群主都可以使用这个指令
|
||||
* 来自任何 [Bot] 的任何一个群管理员或群主都可以使用这个指令
|
||||
*/
|
||||
object Operator : CommandPermission {
|
||||
override fun CommandSender.hasPermission(): Boolean {
|
||||
@ -117,10 +115,8 @@ inline fun AnonymousCommandPermission(crossinline block: CommandSender.() -> Boo
|
||||
inline fun CommandSender.hasPermission(permission: CommandPermission): Boolean =
|
||||
permission.run { this@hasPermission.hasPermission() }
|
||||
|
||||
|
||||
inline fun CommandPermission.hasPermission(sender: CommandSender): Boolean = this.run { sender.hasPermission() }
|
||||
|
||||
|
||||
internal class OrCommandPermission(
|
||||
private val first: CommandPermission,
|
||||
private val second: CommandPermission
|
||||
|
Loading…
Reference in New Issue
Block a user