From 3203ecff107341b4a43dc5fb3b665d89e441cd25 Mon Sep 17 00:00:00 2001 From: Jsinco Date: Tue, 13 Feb 2024 20:05:27 -0500 Subject: [PATCH] version cmd, minor stuff --- resources/plugin.yml | 3 ++ .../dre/brewery/api/addons/AddonManager.java | 1 - .../dre/brewery/commands/CommandManager.java | 1 + .../commands/subcommands/VersionCommand.java | 45 +++++++++++++++++++ .../dre/brewery/filedata/UpdateChecker.java | 4 ++ 5 files changed, 53 insertions(+), 1 deletion(-) create mode 100644 src/com/dre/brewery/commands/subcommands/VersionCommand.java diff --git a/resources/plugin.yml b/resources/plugin.yml index 57eae55..32301f9 100644 --- a/resources/plugin.yml +++ b/resources/plugin.yml @@ -25,6 +25,7 @@ permissions: brewery.cauldron.time: true brewery.cauldron.insert: true brewery.cauldron.fill: true + brewery.cmd.version: true # Mod brewery.mod: description: Allow to maintain Wakeup Points and to login even if overdrunken @@ -100,6 +101,8 @@ permissions: description: View the material name of an item brewery.cmd.reloadaddons: description: Reload all Addons + brewery.cmd.version: + description: See misc info about BreweryX # -- Barrel -- brewery.createbarrel: diff --git a/src/com/dre/brewery/api/addons/AddonManager.java b/src/com/dre/brewery/api/addons/AddonManager.java index 847aa04..c6edcd7 100644 --- a/src/com/dre/brewery/api/addons/AddonManager.java +++ b/src/com/dre/brewery/api/addons/AddonManager.java @@ -3,7 +3,6 @@ package com.dre.brewery.api.addons; import com.dre.brewery.BreweryPlugin; import org.bukkit.Bukkit; import org.bukkit.command.CommandMap; -import org.bukkit.command.SimpleCommandMap; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; diff --git a/src/com/dre/brewery/commands/CommandManager.java b/src/com/dre/brewery/commands/CommandManager.java index 2c7f1c2..3fb6851 100644 --- a/src/com/dre/brewery/commands/CommandManager.java +++ b/src/com/dre/brewery/commands/CommandManager.java @@ -37,6 +37,7 @@ public class CommandManager implements TabExecutor { subCommands.put("puke", new PukeCommand()); subCommands.put("drink", new DrinkCommand()); subCommands.put("reloadaddons", new ReloadAddonsCommand()); + subCommands.put("version", new VersionCommand()); } @Override diff --git a/src/com/dre/brewery/commands/subcommands/VersionCommand.java b/src/com/dre/brewery/commands/subcommands/VersionCommand.java new file mode 100644 index 0000000..c693c3e --- /dev/null +++ b/src/com/dre/brewery/commands/subcommands/VersionCommand.java @@ -0,0 +1,45 @@ +package com.dre.brewery.commands.subcommands; + +import com.dre.brewery.BreweryPlugin; +import com.dre.brewery.api.addons.AddonManager; +import com.dre.brewery.api.addons.BreweryAddon; +import com.dre.brewery.commands.SubCommand; +import com.dre.brewery.filedata.UpdateChecker; +import org.bukkit.command.CommandSender; + +import java.util.List; + +public class VersionCommand implements SubCommand { + @Override + public void execute(BreweryPlugin breweryPlugin, CommandSender sender, String label, String[] args) { + List addons = new AddonManager(breweryPlugin).getAddons(); + StringBuilder addonString = new StringBuilder(); + + for (BreweryAddon addon : addons) { + addonString.append(addon.getClass().getSimpleName()); + if (addons.indexOf(addon) < addons.size() - 1) { + addonString.append("&f, &a"); + } + } + + breweryPlugin.msg(sender, "&2BreweryX version&7: &av" + breweryPlugin.getDescription().getVersion() + " &7(Latest: v" + UpdateChecker.getLatestVersion() + ")"); + breweryPlugin.msg(sender, "&2Original Authors&7: &aGrafe&f, &aTTTheKing&f, &aSn0wStorm"); + breweryPlugin.msg(sender, "&2BreweryX Authors/Maintainers&7: &aJsinco"); + breweryPlugin.msg(sender, "&2Loaded addons&7: &a" + addonString); + } + + @Override + public List tabComplete(BreweryPlugin breweryPlugin, CommandSender sender, String label, String[] args) { + return null; + } + + @Override + public String permission() { + return "brewery.cmd.version"; + } + + @Override + public boolean playerOnly() { + return false; + } +} diff --git a/src/com/dre/brewery/filedata/UpdateChecker.java b/src/com/dre/brewery/filedata/UpdateChecker.java index e706e5f..282f5f5 100644 --- a/src/com/dre/brewery/filedata/UpdateChecker.java +++ b/src/com/dre/brewery/filedata/UpdateChecker.java @@ -52,6 +52,10 @@ public class UpdateChecker { latestVersion = version; } + public static String getLatestVersion() { + return latestVersion; + } + public static void setUpdateAvailable(boolean available) { updateAvailable = available; }