Abstracted commands into core
This commit is contained in:
parent
acaca1a04e
commit
06957f07fb
|
@ -1,53 +1,35 @@
|
|||
package matterlink.command
|
||||
|
||||
import com.google.common.collect.Lists
|
||||
import matterlink.MODID
|
||||
import matterlink.bridge.MessageHandler
|
||||
import matterlink.bridge.ServerChatHandler
|
||||
import matterlink.instance
|
||||
import matterlink.logger
|
||||
import net.minecraft.command.CommandBase
|
||||
import net.minecraft.command.ICommandSender
|
||||
import net.minecraft.command.WrongUsageException
|
||||
import net.minecraft.server.MinecraftServer
|
||||
import net.minecraft.util.text.TextComponentString
|
||||
|
||||
|
||||
class CommandMatterlink : CommandBase() {
|
||||
private val aliases: List<String>
|
||||
|
||||
init {
|
||||
aliases = Lists.newArrayList(MODID, "bridge", "BRIDGE")
|
||||
}
|
||||
|
||||
override fun getName(): String {
|
||||
return "bridge"
|
||||
return CommandCore.getName()
|
||||
}
|
||||
|
||||
override fun getUsage(sender: ICommandSender): String {
|
||||
return "bridge <connect|disconnect>"
|
||||
return CommandCore.getUsage()
|
||||
}
|
||||
|
||||
override fun getAliases(): List<String> {
|
||||
return aliases
|
||||
return CommandCore.getAliases()
|
||||
}
|
||||
|
||||
override fun execute(server: MinecraftServer, sender: ICommandSender, args: Array<String>) /*throws CommandException*/ {
|
||||
override fun execute(server: MinecraftServer, sender: ICommandSender, args: Array<String>) {
|
||||
if (args.isEmpty()) {
|
||||
//throw new WrongUsageException("")
|
||||
return
|
||||
throw WrongUsageException("Invalid command! Valid uses: ${this.getUsage(sender)}")
|
||||
}
|
||||
//TODO: check if sender is OP or test if normal users cannot send this
|
||||
|
||||
val reply = CommandCore.execute(args)
|
||||
|
||||
val cmd = args[0].toLowerCase()
|
||||
when (cmd) {
|
||||
"connect" -> {
|
||||
instance.connect()
|
||||
}
|
||||
"disconnect" -> {
|
||||
instance.disconnect()
|
||||
if (reply.isNotEmpty() && sender.sendCommandFeedback()) {
|
||||
sender.sendMessage(TextComponentString(reply))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -1,53 +1,35 @@
|
|||
package matterlink.command
|
||||
|
||||
import com.google.common.collect.Lists
|
||||
import matterlink.MODID
|
||||
import matterlink.bridge.MessageHandler
|
||||
import matterlink.bridge.ServerChatHandler
|
||||
import matterlink.instance
|
||||
import matterlink.logger
|
||||
import net.minecraft.command.CommandBase
|
||||
import net.minecraft.command.ICommandSender
|
||||
import net.minecraft.command.WrongUsageException
|
||||
import net.minecraft.server.MinecraftServer
|
||||
import net.minecraft.util.text.TextComponentString
|
||||
|
||||
|
||||
class CommandMatterlink : CommandBase() {
|
||||
private val aliases: List<String>
|
||||
|
||||
init {
|
||||
aliases = Lists.newArrayList(MODID, "bridge", "BRIDGE")
|
||||
}
|
||||
|
||||
override fun getName(): String {
|
||||
return "bridge"
|
||||
return CommandCore.getName()
|
||||
}
|
||||
|
||||
override fun getUsage(sender: ICommandSender): String {
|
||||
return "bridge <connect|disconnect>"
|
||||
return CommandCore.getUsage()
|
||||
}
|
||||
|
||||
override fun getAliases(): List<String> {
|
||||
return aliases
|
||||
return CommandCore.getAliases()
|
||||
}
|
||||
|
||||
override fun execute(server: MinecraftServer, sender: ICommandSender, args: Array<String>) /*throws CommandException*/ {
|
||||
override fun execute(server: MinecraftServer, sender: ICommandSender, args: Array<String>) {
|
||||
if (args.isEmpty()) {
|
||||
//throw new WrongUsageException("")
|
||||
return
|
||||
throw WrongUsageException("Invalid command! Valid uses: ${this.getUsage(sender)}")
|
||||
}
|
||||
//TODO: check if sender is OP or test if normal users cannot send this
|
||||
|
||||
val reply = CommandCore.execute(args)
|
||||
|
||||
val cmd = args[0].toLowerCase()
|
||||
when (cmd) {
|
||||
"connect" -> {
|
||||
instance.connect()
|
||||
}
|
||||
"disconnect" -> {
|
||||
instance.disconnect()
|
||||
if (reply.isNotEmpty() && sender.sendCommandFeedback()) {
|
||||
sender.sendMessage(TextComponentString(reply))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -1,53 +1,36 @@
|
|||
package matterlink.command
|
||||
|
||||
import com.google.common.collect.Lists
|
||||
import matterlink.MODID
|
||||
import matterlink.bridge.MessageHandler
|
||||
import matterlink.bridge.ServerChatHandler
|
||||
import matterlink.instance
|
||||
import matterlink.logger
|
||||
import net.minecraft.command.CommandBase
|
||||
import net.minecraft.command.ICommandSender
|
||||
import net.minecraft.command.WrongUsageException
|
||||
import net.minecraft.server.MinecraftServer
|
||||
import net.minecraft.util.text.TextComponentString
|
||||
|
||||
|
||||
class CommandMatterlink : CommandBase() {
|
||||
private val aliases: List<String>
|
||||
|
||||
init {
|
||||
aliases = Lists.newArrayList(MODID, "bridge", "BRIDGE")
|
||||
}
|
||||
|
||||
override fun getName(): String {
|
||||
return "bridge"
|
||||
return CommandCore.getName()
|
||||
}
|
||||
|
||||
override fun getUsage(sender: ICommandSender): String {
|
||||
return "bridge <connect|disconnect>"
|
||||
return CommandCore.getUsage()
|
||||
}
|
||||
|
||||
override fun getAliases(): List<String> {
|
||||
return aliases
|
||||
return CommandCore.getAliases()
|
||||
}
|
||||
|
||||
override fun execute(server: MinecraftServer, sender: ICommandSender, args: Array<String>) /*throws CommandException*/ {
|
||||
override fun execute(server: MinecraftServer, sender: ICommandSender, args: Array<String>) {
|
||||
if (args.isEmpty()) {
|
||||
//throw new WrongUsageException("")
|
||||
return
|
||||
throw WrongUsageException("Invalid command! Valid uses: ${this.getUsage(sender)}")
|
||||
}
|
||||
//TODO: check if sender is OP or test if normal users cannot send this
|
||||
|
||||
val reply = CommandCore.execute(args)
|
||||
|
||||
val cmd = args[0].toLowerCase()
|
||||
when (cmd) {
|
||||
"connect" -> {
|
||||
instance.connect()
|
||||
}
|
||||
"disconnect" -> {
|
||||
instance.disconnect()
|
||||
if (reply.isNotEmpty() && sender.sendCommandFeedback()) {
|
||||
sender.sendMessage(TextComponentString(reply))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -0,0 +1,34 @@
|
|||
package matterlink.command
|
||||
|
||||
import matterlink.instance
|
||||
|
||||
object CommandCore {
|
||||
fun getName() : String { return "bridge" }
|
||||
fun getAliases() : List<String> { return listOf("BRIDGE","bridge") }
|
||||
fun getUsage() : String { return "bridge <connect|disconnect|reload>"}
|
||||
|
||||
fun execute(args : Array<String>) : String {
|
||||
val cmd = args[0].toLowerCase()
|
||||
|
||||
val reply : String = when (cmd) {
|
||||
"connect" -> {
|
||||
instance.connect()
|
||||
"Bridge connected!"
|
||||
}
|
||||
"disconnect" -> {
|
||||
instance.disconnect()
|
||||
"Bridge disconnected!"
|
||||
}
|
||||
"reload" -> {
|
||||
|
||||
"Bridge config reloaded!"
|
||||
}
|
||||
else -> {
|
||||
"Invalid arguments for command!"
|
||||
}
|
||||
}
|
||||
|
||||
return reply
|
||||
}
|
||||
|
||||
}
|
Loading…
Reference in New Issue