From 5a7b9859cd534bf7d286855478cfbc15cd0fec14 Mon Sep 17 00:00:00 2001 From: Teriuihi Date: Fri, 4 Oct 2024 21:24:49 +0200 Subject: [PATCH] Fix NPE in key configuration, fixed tab completion Added missing key mapping to prevent NullPointerException when no UUIDs are present in KeyStorage. Also adjusted tab completion logic in Key.java to handle cases with more than one argument. --- .../alttd/playerutils/commands/playerutils_subcommands/Key.java | 2 +- src/main/java/com/alttd/playerutils/config/KeyStorage.java | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/alttd/playerutils/commands/playerutils_subcommands/Key.java b/src/main/java/com/alttd/playerutils/commands/playerutils_subcommands/Key.java index 308f5ef..536b490 100644 --- a/src/main/java/com/alttd/playerutils/commands/playerutils_subcommands/Key.java +++ b/src/main/java/com/alttd/playerutils/commands/playerutils_subcommands/Key.java @@ -74,7 +74,7 @@ public class Key extends SubCommand { @Override public List getTabComplete(CommandSender commandSender, String[] args) { - if (args.length > 1) { + if (args.length > 2) { return List.of(); } return Config.KEY.CRATES.keySet().stream().toList(); diff --git a/src/main/java/com/alttd/playerutils/config/KeyStorage.java b/src/main/java/com/alttd/playerutils/config/KeyStorage.java index 4190b67..9e277a1 100644 --- a/src/main/java/com/alttd/playerutils/config/KeyStorage.java +++ b/src/main/java/com/alttd/playerutils/config/KeyStorage.java @@ -44,6 +44,7 @@ public class KeyStorage extends AbstractConfig { ConfigurationSection configurationSection = config.getConfigurationSection(prefix + crate); if (configurationSection == null) { config.logger.info(String.format("No section yet for crate %s", crate)); + KEYS.put(crate, count); continue; } List uuids = configurationSection.getKeys(false).stream().map(UUID::fromString).toList();