From 225491c4cbb2a770ad0ac056df2cd9c3c7e080fe Mon Sep 17 00:00:00 2001 From: CroaBeast <66433837+CroaBeast@users.noreply.github.com> Date: Sat, 16 May 2026 14:56:14 -0500 Subject: [PATCH 1/5] chore: bump version to 1.2.4 --- build.gradle.kts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle.kts b/build.gradle.kts index 8cbcd56..1206646 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -10,7 +10,7 @@ plugins { } group = "com.bitaspire" -version = "1.2.3" +version = "1.2.4" repositories { mavenLocal() From a5a463ef06e91ae47aebf0af895e23b6df65aa4b Mon Sep 17 00:00:00 2001 From: CroaBeast <66433837+CroaBeast@users.noreply.github.com> Date: Sat, 16 May 2026 14:56:18 -0500 Subject: [PATCH 2/5] fix: allow CLV console tab completions --- .../cyberlevels/command/CLVTabComplete.java | 20 ++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/bitaspire/cyberlevels/command/CLVTabComplete.java b/src/main/java/com/bitaspire/cyberlevels/command/CLVTabComplete.java index 28d6641..9cc2c3b 100644 --- a/src/main/java/com/bitaspire/cyberlevels/command/CLVTabComplete.java +++ b/src/main/java/com/bitaspire/cyberlevels/command/CLVTabComplete.java @@ -36,6 +36,9 @@ public class CLVTabComplete implements TabCompleter { private static final Set MUTATION_COMMANDS = Collections.unmodifiableSet(new HashSet<>( Arrays.asList("addexp", "setexp", "removeexp", "addlevel", "setlevel", "removelevel") )); + private static final List CONSOLE_COMMANDS = Collections.unmodifiableList( + Arrays.asList("about", "reload", "addexp", "setexp", "removeexp", "addlevel", "setlevel", "removelevel", "purge") + ); private static final Map COMMAND_PERMISSIONS = new LinkedHashMap<>(); static { @@ -73,26 +76,29 @@ public class CLVTabComplete implements TabCompleter { */ @Override public List onTabComplete(@NotNull CommandSender sender, @NotNull Command command, @NotNull String alias, String[] args) { - if (!(sender instanceof Player)) return Collections.emptyList(); - Player player = (Player) sender; + Player player = sender instanceof Player ? (Player) sender : null; if (args.length == 1) { List available = new ArrayList<>(); - COMMAND_PERMISSIONS.forEach((cmd, perm) -> { - if (player.hasPermission(perm)) available.add(cmd); - }); + if (player == null) { + available.addAll(CONSOLE_COMMANDS); + } else { + COMMAND_PERMISSIONS.forEach((cmd, perm) -> { + if (player.hasPermission(perm)) available.add(cmd); + }); + } return partialMatch(args[0], available); } if (args.length == 2) { switch (args[0].toLowerCase()) { case "info": - if (player.hasPermission(ADMIN_PREFIX + "list")) + if (player != null && player.hasPermission(ADMIN_PREFIX + "list")) return partialMatch(args[1], getPlayerNames()); break; case "purge": - if (player.hasPermission(ADMIN_PREFIX + "purge")) + if (player == null || player.hasPermission(ADMIN_PREFIX + "purge")) return partialMatch(args[1], getPlayerNames()); break; From 6220c50b9b71023fd099daeb2eca31c8baacf057 Mon Sep 17 00:00:00 2001 From: CroaBeast <66433837+CroaBeast@users.noreply.github.com> Date: Wed, 20 May 2026 13:58:37 -0500 Subject: [PATCH 3/5] chore: bump version to 1.2.5 --- build.gradle.kts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle.kts b/build.gradle.kts index 1206646..4493c93 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -10,7 +10,7 @@ plugins { } group = "com.bitaspire" -version = "1.2.4" +version = "1.2.5" repositories { mavenLocal() From f291d341cd7193a6aaca5834ec8a0cf3fdef218f Mon Sep 17 00:00:00 2001 From: CroaBeast <66433837+CroaBeast@users.noreply.github.com> Date: Wed, 20 May 2026 13:58:37 -0500 Subject: [PATCH 4/5] fix: match CLV tab command permissions --- .../cyberlevels/command/CLVTabComplete.java | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/bitaspire/cyberlevels/command/CLVTabComplete.java b/src/main/java/com/bitaspire/cyberlevels/command/CLVTabComplete.java index 9cc2c3b..5a454bf 100644 --- a/src/main/java/com/bitaspire/cyberlevels/command/CLVTabComplete.java +++ b/src/main/java/com/bitaspire/cyberlevels/command/CLVTabComplete.java @@ -51,13 +51,13 @@ public class CLVTabComplete implements TabCompleter { COMMAND_PERMISSIONS.put("list", ADMIN_PREFIX + "list"); COMMAND_PERMISSIONS.put("purge", ADMIN_PREFIX + "purge"); - COMMAND_PERMISSIONS.put("addExp", ADMIN_PREFIX + "exp.add"); - COMMAND_PERMISSIONS.put("setExp", ADMIN_PREFIX + "exp.set"); - COMMAND_PERMISSIONS.put("removeExp", ADMIN_PREFIX + "exp.remove"); + COMMAND_PERMISSIONS.put("addexp", ADMIN_PREFIX + "exp.add"); + COMMAND_PERMISSIONS.put("setexp", ADMIN_PREFIX + "exp.set"); + COMMAND_PERMISSIONS.put("removeexp", ADMIN_PREFIX + "exp.remove"); - COMMAND_PERMISSIONS.put("addLevel", ADMIN_PREFIX + "levels.add"); - COMMAND_PERMISSIONS.put("setLevel", ADMIN_PREFIX + "levels.set"); - COMMAND_PERMISSIONS.put("removeLevel", ADMIN_PREFIX + "levels.remove"); + COMMAND_PERMISSIONS.put("addlevel", ADMIN_PREFIX + "levels.add"); + COMMAND_PERMISSIONS.put("setlevel", ADMIN_PREFIX + "levels.set"); + COMMAND_PERMISSIONS.put("removelevel", ADMIN_PREFIX + "levels.remove"); } private final CyberLevels main; From 5df064d9d5eca5ca077ee9bd910a57674193c6a9 Mon Sep 17 00:00:00 2001 From: CroaBeast <66433837+CroaBeast@users.noreply.github.com> Date: Wed, 20 May 2026 13:58:37 -0500 Subject: [PATCH 5/5] feat: enable CLV level rewards by default --- src/main/resources/config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/resources/config.yml b/src/main/resources/config.yml index 5facc30..46f5ac9 100644 --- a/src/main/resources/config.yml +++ b/src/main/resources/config.yml @@ -63,7 +63,7 @@ config: load-offline-users: true # Should adding levels give rewards? - add-level-reward: false + add-level-reward: true # Should getting rewards multiple times per # level be prevented?