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?) {
|
override fun sendMessage(@Nonnull component: ITextComponent?) {
|
||||||
MessageHandler.transmit(ApiMessage(
|
sendReply(component!!.unformattedComponentText)
|
||||||
username = cfg.relay.systemUser,
|
|
||||||
text = component!!.unformattedComponentText
|
|
||||||
))
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -45,11 +45,7 @@ class MatterLinkCommandSender(user: String, userId: String, server: String) : IM
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun sendMessage(@Nonnull component: ITextComponent?) {
|
override fun sendMessage(@Nonnull component: ITextComponent?) {
|
||||||
MessageHandler.transmit(ApiMessage(
|
sendReply(component!!.unformattedComponentText)
|
||||||
username = cfg.relay.systemUser,
|
|
||||||
text = component!!.unformattedComponentText
|
|
||||||
))
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun sendCommandFeedback(): Boolean {
|
override fun sendCommandFeedback(): Boolean {
|
||||||
|
|
|
@ -41,11 +41,7 @@ class MatterLinkCommandSender(user: String, userId: String, server: String) : IM
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun sendMessage(@Nonnull component: ITextComponent?) {
|
override fun sendMessage(@Nonnull component: ITextComponent?) {
|
||||||
MessageHandler.transmit(ApiMessage(
|
sendReply(component!!.unformattedComponentText)
|
||||||
username = cfg.relay.systemUser,
|
|
||||||
text = component!!.unformattedComponentText
|
|
||||||
))
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun sendCommandFeedback(): Boolean {
|
override fun sendCommandFeedback(): Boolean {
|
||||||
|
|
|
@ -38,10 +38,7 @@ class MatterLinkCommandSender(user: String, userId: String, server: String) : IM
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun addChatMessage(component: IChatComponent) {
|
override fun addChatMessage(component: IChatComponent) {
|
||||||
MessageHandler.transmit(ApiMessage(
|
sendReply(component.unformattedText)
|
||||||
username = cfg.relay.systemUser,
|
|
||||||
text = component.unformattedText
|
|
||||||
))
|
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun getCommandSenderPosition(): ChunkCoordinates = ChunkCoordinates(0, 0, 0)
|
override fun getCommandSenderPosition(): ChunkCoordinates = ChunkCoordinates(0, 0, 0)
|
||||||
|
|
|
@ -25,7 +25,8 @@ data class CustomCommand(
|
||||||
CommandType.PASSTHROUGH -> {
|
CommandType.PASSTHROUGH -> {
|
||||||
//uses a new commandsender for each user
|
//uses a new commandsender for each user
|
||||||
// TODO: cache CommandSenders
|
// 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 -> {
|
CommandType.RESPONSE -> {
|
||||||
MessageHandler.transmit(ApiMessage(text = response.lazyFormat(getReplacements(user, args))))
|
MessageHandler.transmit(ApiMessage(text = response.lazyFormat(getReplacements(user, args))))
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
package matterlink.bridge.command
|
package matterlink.bridge.command
|
||||||
|
|
||||||
|
import matterlink.bridge.ApiMessage
|
||||||
|
import matterlink.bridge.MessageHandler
|
||||||
|
import matterlink.config.cfg
|
||||||
import matterlink.instance
|
import matterlink.instance
|
||||||
|
|
||||||
abstract class IMinecraftCommandSender(val user: String, val userId: String, val server: String) {
|
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)"
|
val accountName = "$user (id=$userId server=$server)"
|
||||||
|
|
||||||
fun canExecute(commandName: String): Boolean {
|
fun canExecute(commandName: String): Boolean {
|
||||||
instance.info("testing $commandName")
|
|
||||||
val command = BridgeCommandRegistry[commandName] ?: return false
|
val command = BridgeCommandRegistry[commandName] ?: return false
|
||||||
|
|
||||||
return command.canExecute(userId, server)
|
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_name = MatterLink
|
||||||
mod_version = 1.4.2
|
mod_version = 1.4.3
|
||||||
forgelin_version = 1.6.0
|
forgelin_version = 1.6.0
|
Loading…
Reference in New Issue