up version and anded tab complet
This commit is contained in:
2
pom.xml
2
pom.xml
@@ -6,7 +6,7 @@
|
||||
|
||||
<groupId>com.minster586</groupId>
|
||||
<artifactId>ServerDevMode</artifactId>
|
||||
<version>1.0.2</version>
|
||||
<version>1.0.3</version>
|
||||
<packaging>jar</packaging>
|
||||
<name>ServerDevMode</name>
|
||||
<description>Development mode plugin for Minecraft servers—tracing events and debugging logs</description>
|
||||
|
@@ -5,7 +5,30 @@ import org.bukkit.command.CommandExecutor;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.entity.Player;
|
||||
|
||||
public class CommandHandler implements CommandExecutor {
|
||||
import org.bukkit.command.TabCompleter;
|
||||
import java.util.Arrays;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
public class CommandHandler implements CommandExecutor, TabCompleter {
|
||||
private static final List<String> SUBCOMMANDS = Arrays.asList("on", "off", "level", "zip");
|
||||
private static final List<String> LEVELS = Arrays.asList("minimal", "verbose", "full");
|
||||
@Override
|
||||
public List<String> onTabComplete(CommandSender sender, Command command, String alias, String[] args) {
|
||||
if (!sender.hasPermission("serverdevmode.use")) return Collections.emptyList();
|
||||
|
||||
if (args.length == 1) {
|
||||
return SUBCOMMANDS.stream()
|
||||
.filter(s -> s.startsWith(args[0].toLowerCase()))
|
||||
.toList();
|
||||
}
|
||||
if (args.length == 2 && args[0].equalsIgnoreCase("level")) {
|
||||
return LEVELS.stream()
|
||||
.filter(l -> l.startsWith(args[1].toLowerCase()))
|
||||
.toList();
|
||||
}
|
||||
return Collections.emptyList();
|
||||
}
|
||||
|
||||
private final DevModeManager manager;
|
||||
|
||||
|
@@ -21,8 +21,11 @@ public class ServerDevMode extends JavaPlugin {
|
||||
// Initialize dev mode manager with logger
|
||||
devModeManager = new DevModeManager(this, logWriter);
|
||||
|
||||
// Register command handler
|
||||
getCommand("devmode").setExecutor(new CommandHandler(devModeManager));
|
||||
|
||||
// Register command handler and tab completer
|
||||
CommandHandler handler = new CommandHandler(devModeManager);
|
||||
getCommand("devmode").setExecutor(handler);
|
||||
getCommand("devmode").setTabCompleter(handler);
|
||||
|
||||
// Register listeners
|
||||
getServer().getPluginManager().registerEvents(new ChatEventListener(devModeManager), this);
|
||||
|
@@ -1,5 +1,5 @@
|
||||
name: ServerDevMode
|
||||
version: 1.0.2
|
||||
version: 1.0.3
|
||||
main: com.minster586.devmode.ServerDevMode
|
||||
api-version: 1.16
|
||||
description: Server-wide development mode plugin for event tracing, chat logging, and debugging support.
|
||||
|
Reference in New Issue
Block a user