fix some invalid commands being passed through
This commit is contained in:
parent
41c8776993
commit
6a77fbc3f3
|
@ -46,10 +46,7 @@ class MatterLinkCommandSender(user: String, userId: String, server: String) : IM
|
|||
}
|
||||
|
||||
override fun sendMessage(@Nonnull component: ITextComponent?) {
|
||||
MessageHandler.transmit(ApiMessage(
|
||||
username = cfg.relay.systemUser,
|
||||
text = component!!.unformattedComponentText
|
||||
))
|
||||
sendReply(component!!.unformattedComponentText)
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -45,11 +45,7 @@ class MatterLinkCommandSender(user: String, userId: String, server: String) : IM
|
|||
}
|
||||
|
||||
override fun sendMessage(@Nonnull component: ITextComponent?) {
|
||||
MessageHandler.transmit(ApiMessage(
|
||||
username = cfg.relay.systemUser,
|
||||
text = component!!.unformattedComponentText
|
||||
))
|
||||
|
||||
sendReply(component!!.unformattedComponentText)
|
||||
}
|
||||
|
||||
override fun sendCommandFeedback(): Boolean {
|
||||
|
|
|
@ -41,11 +41,7 @@ class MatterLinkCommandSender(user: String, userId: String, server: String) : IM
|
|||
}
|
||||
|
||||
override fun sendMessage(@Nonnull component: ITextComponent?) {
|
||||
MessageHandler.transmit(ApiMessage(
|
||||
username = cfg.relay.systemUser,
|
||||
text = component!!.unformattedComponentText
|
||||
))
|
||||
|
||||
sendReply(component!!.unformattedComponentText)
|
||||
}
|
||||
|
||||
override fun sendCommandFeedback(): Boolean {
|
||||
|
|
|
@ -38,10 +38,7 @@ class MatterLinkCommandSender(user: String, userId: String, server: String) : IM
|
|||
}
|
||||
|
||||
override fun addChatMessage(component: IChatComponent) {
|
||||
MessageHandler.transmit(ApiMessage(
|
||||
username = cfg.relay.systemUser,
|
||||
text = component.unformattedText
|
||||
))
|
||||
sendReply(component.unformattedText)
|
||||
}
|
||||
|
||||
override fun getCommandSenderPosition(): ChunkCoordinates = ChunkCoordinates(0, 0, 0)
|
||||
|
|
|
@ -25,7 +25,8 @@ data class CustomCommand(
|
|||
CommandType.PASSTHROUGH -> {
|
||||
//uses a new commandsender for each user
|
||||
// TODO: cache CommandSenders
|
||||
instance.commandSenderFor(user, userId, server).execute("$execute $args")
|
||||
val commandSender = instance.commandSenderFor(user, userId, server)
|
||||
commandSender.execute("$execute $args") || commandSender.reply.isNotBlank()
|
||||
}
|
||||
CommandType.RESPONSE -> {
|
||||
MessageHandler.transmit(ApiMessage(text = response.lazyFormat(getReplacements(user, args))))
|
||||
|
|
|
@ -1,5 +1,8 @@
|
|||
package matterlink.bridge.command
|
||||
|
||||
import matterlink.bridge.ApiMessage
|
||||
import matterlink.bridge.MessageHandler
|
||||
import matterlink.config.cfg
|
||||
import matterlink.instance
|
||||
|
||||
abstract class IMinecraftCommandSender(val user: String, val userId: String, val server: String) {
|
||||
|
@ -13,9 +16,18 @@ abstract class IMinecraftCommandSender(val user: String, val userId: String, val
|
|||
val accountName = "$user (id=$userId server=$server)"
|
||||
|
||||
fun canExecute(commandName: String): Boolean {
|
||||
instance.info("testing $commandName")
|
||||
val command = BridgeCommandRegistry[commandName] ?: return false
|
||||
|
||||
return command.canExecute(userId, server)
|
||||
}
|
||||
|
||||
var reply: String = ""
|
||||
|
||||
fun sendReply(text: String) {
|
||||
reply = text
|
||||
MessageHandler.transmit(ApiMessage(
|
||||
username = cfg.relay.systemUser,
|
||||
text = text
|
||||
))
|
||||
}
|
||||
}
|
|
@ -1,3 +1,3 @@
|
|||
mod_name = MatterLink
|
||||
mod_version = 1.4.2
|
||||
mod_version = 1.4.3
|
||||
forgelin_version = 1.6.0
|
Loading…
Reference in New Issue