diff options
Diffstat (limited to 'EssentialsExtra/src/net/ess3/extra/EssentialsExtra.java')
-rw-r--r-- | EssentialsExtra/src/net/ess3/extra/EssentialsExtra.java | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/EssentialsExtra/src/net/ess3/extra/EssentialsExtra.java b/EssentialsExtra/src/net/ess3/extra/EssentialsExtra.java new file mode 100644 index 000000000..a1504b9cb --- /dev/null +++ b/EssentialsExtra/src/net/ess3/extra/EssentialsExtra.java @@ -0,0 +1,56 @@ +package net.ess3.extra; + +import java.io.File; +import java.net.MalformedURLException; +import java.net.URL; +import java.net.URLClassLoader; +import java.util.logging.Level; +import net.ess3.api.ICommandHandler; +import net.ess3.api.IEssentials; +import net.ess3.bukkit.BukkitPlugin; +import net.ess3.commands.EssentialsCommandHandler; +import org.bukkit.command.Command; +import org.bukkit.command.CommandSender; +import org.bukkit.plugin.java.JavaPlugin; + + +public class EssentialsExtra extends JavaPlugin +{ + private IEssentials ess; + private ICommandHandler handler; + private ClassLoader loader; + + @Override + public void onLoad() + { + ess = ((BukkitPlugin)getServer().getPluginManager().getPlugin("Essentials-3")).getEssentials(); + } + + @Override + public void onEnable() + { + handler = new EssentialsCommandHandler(loader, "Command", "essentials.", ess); + File commandDir = new File(ess.getPlugin().getDataFolder(), "extras"); + commandDir.mkdir(); + URL[] urls = null; + try + { + urls = new URL[] + { + commandDir.toURI().toURL() + }; + } + catch (MalformedURLException ex) + { + getLogger().log(Level.SEVERE, "Could not get extra command dir", ex); + getServer().getPluginManager().disablePlugin(this); + } + loader = new URLClassLoader(urls, getClassLoader()); + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) + { + return handler.handleCommand(sender, command, label, args); + } +} |