Fix message spam on server start and bridge reconnect
This commit is contained in:
parent
224af67113
commit
9b0aeb9657
|
@ -56,12 +56,17 @@ object MatterLink {
|
|||
BridgeCommandRegistry.registerAll(PlayerListCommand, HelpCommand)
|
||||
}
|
||||
|
||||
@Mod.EventHandler
|
||||
fun serverAboutToStart(event: FMLServerAboutToStartEvent) {
|
||||
MessageHandler.start()
|
||||
}
|
||||
|
||||
@Mod.EventHandler
|
||||
fun serverStarting(event: FMLServerStartingEvent) {
|
||||
logger.debug("Registering server commands")
|
||||
event.registerServerCommand(CommandMatterlink())
|
||||
MessageHandler.start()
|
||||
|
||||
MessageHandler.rcvQueue.clear()
|
||||
}
|
||||
|
||||
@Mod.EventHandler
|
||||
|
|
|
@ -5,10 +5,13 @@ import matterlink.bridge.command.BridgeCommandRegistry
|
|||
import matterlink.cfg
|
||||
|
||||
object ServerChatHandler {
|
||||
var processMessages: Boolean = true
|
||||
|
||||
/**
|
||||
* This method must be called every server tick with no arguments.
|
||||
*/
|
||||
fun writeIncomingToChat() {
|
||||
if (!processMessages) return
|
||||
if (MessageHandler.rcvQueue.isNotEmpty())
|
||||
MatterLink.logger.debug("incoming: " + MessageHandler.rcvQueue.toString())
|
||||
val nextMessage = MessageHandler.rcvQueue.poll()
|
||||
|
|
|
@ -4,9 +4,11 @@ import matterlink.*
|
|||
import matterlink.MatterLink.logger
|
||||
import matterlink.bridge.MessageHandler
|
||||
import com.google.common.collect.Lists
|
||||
import matterlink.bridge.ServerChatHandler
|
||||
import net.minecraft.command.CommandBase
|
||||
import net.minecraft.command.ICommandSender
|
||||
import net.minecraft.server.MinecraftServer
|
||||
import org.apache.logging.log4j.core.jmx.Server
|
||||
|
||||
|
||||
class CommandMatterlink : CommandBase() {
|
||||
|
@ -39,11 +41,16 @@ class CommandMatterlink : CommandBase() {
|
|||
val cmd = args[0].toLowerCase()
|
||||
when (cmd) {
|
||||
"connect" -> if (MessageHandler.start()) {
|
||||
MessageHandler.rcvQueue.clear()
|
||||
logger.info("Connected to matterbridge relay")
|
||||
ServerChatHandler.processMessages = true
|
||||
} else {
|
||||
logger.error("Connection to matterbridge relay failed.")
|
||||
}
|
||||
"disconnect" -> MessageHandler.stop()
|
||||
"disconnect" -> {
|
||||
MessageHandler.stop()
|
||||
ServerChatHandler.processMessages = false
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue