package org.buckit.commands.admin;
import org.buckit.Config;
import org.bukkit.Server;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.plugin.Plugin;
import org.bukkit.plugin.PluginManager;
public class DisablePluginCommand extends Command {
private final Server server;
public DisablePluginCommand(String name, Server server) {
super(name);
this.description = "Disables specified plugin.";
this.usageMessage = "Usage: /disableplugin [plugin name]";
this.accessname = "buckit.admin.disableplugin";
this.server = server;
}
@Override
public boolean execute(CommandSender sender, String currentAlias, String[] args) {
if(args.length == 0) {
sender.sendMessage(Config.DEFAULT_ERROR_COLOR + "Insufficient arguments specified.");
sender.sendMessage(Config.DEFAULT_ERROR_COLOR + getUsage());
return true;
}
String name = args[0].toLowerCase();
PluginManager m = server.getPluginManager();
Plugin plugin = m.getPlugin(name);
if(plugin == null){
sender.sendMessage(Config.DEFAULT_ERROR_COLOR + "No active plugin found with name " + name + ".");
return true;
}
if(!plugin.isEnabled()){
sender.sendMessage(Config.DEFAULT_ERROR_COLOR + "This plugin is already disabled.");
return true;
}
m.disablePlugin(plugin);
sender.sendMessage(Config.DEFAULT_INFO_COLOR + "Plugin disabled.");
return true;
}
}