commit 49aa5f8679dcfdd410b7c52b2fce5a0d46b0effb Author: tenkuma Date: Mon Mar 17 21:35:58 2025 -0300 First commit. diff --git a/.classpath b/.classpath new file mode 100644 index 0000000..67f6d3a --- /dev/null +++ b/.classpath @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/.project b/.project new file mode 100644 index 0000000..7d9d108 --- /dev/null +++ b/.project @@ -0,0 +1,17 @@ + + + aboukkit + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + + diff --git a/.settings/org.eclipse.core.resources.prefs b/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000..99f26c0 --- /dev/null +++ b/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +encoding/=UTF-8 diff --git a/.settings/org.eclipse.jdt.core.prefs b/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000..acdbf9c --- /dev/null +++ b/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,9 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=1.8 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.release=enabled +org.eclipse.jdt.core.compiler.source=1.8 diff --git a/bin/gd/rf/adrian/aboukkit/CustomCommand.class b/bin/gd/rf/adrian/aboukkit/CustomCommand.class new file mode 100644 index 0000000..cc2eed7 Binary files /dev/null and b/bin/gd/rf/adrian/aboukkit/CustomCommand.class differ diff --git a/bin/gd/rf/adrian/aboukkit/aboukkit.class b/bin/gd/rf/adrian/aboukkit/aboukkit.class new file mode 100644 index 0000000..50a8d0f Binary files /dev/null and b/bin/gd/rf/adrian/aboukkit/aboukkit.class differ diff --git a/config.yml b/config.yml new file mode 100644 index 0000000..1eaf4d6 --- /dev/null +++ b/config.yml @@ -0,0 +1,14 @@ +# IMPORTANT: for your commands to work you will need to register them +# Open this plugin's jar with a archive manager and add your command to plugin.yml +# Here lies your custom commands +commands: + - 'about' + - 'aboukkit' +# and here you define a string list for each command +# & will be automatically converted to ยง$ so you can use colors +about: + - "&cThis plugin has not been configured yet!" + - "Visit our website at &l&1https://betamargarina.rf.gd&f for server &cbackup downloads&f, our &cwiki&f and much more!" + - "&6Aboukkit, by &9Adrian Victor&6. Uses code from &9AleksandarHaralanov" +aboukkit: + - 'This server is running aboukkit.' \ No newline at end of file diff --git a/plugin.yml b/plugin.yml new file mode 100644 index 0000000..7631143 --- /dev/null +++ b/plugin.yml @@ -0,0 +1,10 @@ +name: Aboukkit +main: gd.rf.adrian.aboukkit.aboukkit +version: 2.0 +commands: + about: + description: Shows info about this server. + usage: /about + aboukkit: + description: Shows info about the Aboukkit plugin. + usage: /aboukkit diff --git a/src/gd/rf/adrian/aboukkit/CustomCommand.java b/src/gd/rf/adrian/aboukkit/CustomCommand.java new file mode 100644 index 0000000..412cb4c --- /dev/null +++ b/src/gd/rf/adrian/aboukkit/CustomCommand.java @@ -0,0 +1,36 @@ +package gd.rf.adrian.aboukkit; + +import org.bukkit.command.Command; +import org.bukkit.command.CommandExecutor; +import org.bukkit.command.CommandSender; + +import gd.rf.adrianvictor.lib.Color; + +import org.bukkit.ChatColor; + +import java.util.ArrayList; +import java.util.List; + +public class CustomCommand implements CommandExecutor { + private final String commandName; + + public CustomCommand(String commandName) { + this.commandName = commandName; + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + List messages = aboukkit.getPluginConfig().getStringList(commandName, new ArrayList<>()); + + if (messages == null || messages.isEmpty()) { + sender.sendMessage(ChatColor.RED + "No response set for this command in config.yml."); + return true; + } + + for (String message : messages) { + sender.sendMessage(Color.formatColors(message)); + } + + return true; + } +} diff --git a/src/gd/rf/adrian/aboukkit/aboukkit.java b/src/gd/rf/adrian/aboukkit/aboukkit.java new file mode 100644 index 0000000..9586ffc --- /dev/null +++ b/src/gd/rf/adrian/aboukkit/aboukkit.java @@ -0,0 +1,43 @@ +package gd.rf.adrian.aboukkit; +import org.bukkit.plugin.java.JavaPlugin; + +import java.util.ArrayList; +import java.util.List; + +import org.bukkit.plugin.PluginDescriptionFile; +import gd.rf.adrianvictor.lib.Configuration; +import gd.rf.adrianvictor.lib.Log; + +public class aboukkit extends JavaPlugin { + private static PluginDescriptionFile pdf; + private static Configuration config; + + @Override + public void onEnable() { + pdf = getDescription(); + config = new Configuration(this, "config.yml"); + config.loadConfig(); + + Log.info(this + " enabled (version " + pdf.getVersion() + ")"); + List userCommands = aboukkit.getPluginConfig().getStringList("commands", new ArrayList<>()); + + for (String userCommand : userCommands) { + if (getCommand(userCommand) != null) { + getCommand(userCommand).setExecutor(new CustomCommand(userCommand)); + Log.info("[Aboukkit] Registered command: " + userCommand); + } else { + Log.warning("[Aboukkit] Command '" + userCommand + "' is missing from plugin.yml!"); + } + } + } + + + @Override + public void onDisable() { + + } + + public static Configuration getPluginConfig() { + return config; + } +}