mirror of
https://github.com/Auxilor/EcoJobs.git
synced 2025-12-26 18:39:06 +00:00
Added /jobs <job>
This commit is contained in:
@@ -47,7 +47,7 @@ allprojects {
|
||||
}
|
||||
|
||||
dependencies {
|
||||
compileOnly 'com.willfp:eco:6.45.0'
|
||||
compileOnly 'com.willfp:eco:6.46.0'
|
||||
implementation 'com.willfp:libreforge:3.120.0'
|
||||
implementation 'com.willfp:ecomponent:1.0.0'
|
||||
implementation 'org.joml:joml:1.10.4'
|
||||
|
||||
@@ -2,9 +2,11 @@ package com.willfp.ecojobs.commands
|
||||
|
||||
import com.willfp.eco.core.EcoPlugin
|
||||
import com.willfp.eco.core.command.impl.PluginCommand
|
||||
import com.willfp.ecojobs.jobs.Jobs
|
||||
import com.willfp.ecojobs.jobs.JobsGUI
|
||||
import org.bukkit.command.CommandSender
|
||||
import com.willfp.ecojobs.jobs.hasJob
|
||||
import org.bukkit.entity.Player
|
||||
import org.bukkit.util.StringUtil
|
||||
|
||||
class CommandJobs(plugin: EcoPlugin) : PluginCommand(plugin, "jobs", "ecojobs.command.jobs", true) {
|
||||
init {
|
||||
@@ -12,8 +14,39 @@ class CommandJobs(plugin: EcoPlugin) : PluginCommand(plugin, "jobs", "ecojobs.co
|
||||
.addSubcommand(CommandLeave(plugin))
|
||||
}
|
||||
|
||||
override fun onExecute(player: CommandSender, args: List<String>) {
|
||||
player as Player
|
||||
JobsGUI.open(player)
|
||||
override fun onExecute(player: Player, args: List<String>) {
|
||||
if (args.isEmpty()) {
|
||||
JobsGUI.open(player)
|
||||
return
|
||||
}
|
||||
|
||||
val id = args[0].lowercase()
|
||||
val job = Jobs.getByID(id)
|
||||
|
||||
if (job == null) {
|
||||
player.sendMessage(plugin.langYml.getMessage("invalid-job"))
|
||||
return
|
||||
}
|
||||
|
||||
job.levelGUI.open(player)
|
||||
}
|
||||
|
||||
override fun tabComplete(player: Player, args: List<String>): List<String> {
|
||||
val completions = mutableListOf<String>()
|
||||
|
||||
if (args.isEmpty()) {
|
||||
return Jobs.values().filter { player.hasJob(it) }.map { it.id }
|
||||
}
|
||||
|
||||
if (args.size == 1) {
|
||||
StringUtil.copyPartialMatches(
|
||||
args[0],
|
||||
Jobs.values().filter { player.hasJob(it) }.map { it.id },
|
||||
completions
|
||||
)
|
||||
return completions
|
||||
}
|
||||
|
||||
return emptyList()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -52,7 +52,6 @@ class CommandJoin(plugin: EcoPlugin) : Subcommand(plugin, "join", "ecojobs.comma
|
||||
|
||||
val completions = mutableListOf<String>()
|
||||
if (args.isEmpty()) {
|
||||
// Currently, this case is not ever reached
|
||||
return Jobs.values().filter { sender.hasJob(it) }.map { it.id }
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user