59 lines
2.1 KiB
Java
59 lines
2.1 KiB
Java
package dev.trixinity.eventmanager.commands;
|
|
|
|
import dev.trixinity.eventmanager.TrixinityEventManager;
|
|
import org.bukkit.Bukkit;
|
|
import org.bukkit.ChatColor;
|
|
import org.bukkit.command.Command;
|
|
import org.bukkit.command.CommandExecutor;
|
|
import org.bukkit.command.CommandSender;
|
|
|
|
/**
|
|
* Implementace příkazu /cleareventer pro vymazání eventera.
|
|
*/
|
|
public class ClearEventerCommand implements CommandExecutor {
|
|
|
|
@Override
|
|
public boolean onCommand(CommandSender sender, Command command, String label,
|
|
String[] args) {
|
|
// Kontrola oprávnění - vyžaduje * oprávnění
|
|
if (!sender.hasPermission("*")) {
|
|
sender.sendMessage(String.format("%s%sTrixinityEventManager v1.0",
|
|
ChatColor.RED, ChatColor.BOLD));
|
|
sender.sendMessage(ChatColor.RED + "Vytvořil: TrixinityDev");
|
|
sender.sendMessage(ChatColor.GRAY
|
|
+ "Plugin pro správu herních eventů s podporou WorldGuard.");
|
|
return true;
|
|
}
|
|
|
|
TrixinityEventManager plugin = TrixinityEventManager.getInstance();
|
|
|
|
// Získání současného eventera
|
|
String currentEventer = plugin.getConfig().getString("current_eventer", "");
|
|
|
|
if (currentEventer.isEmpty()) {
|
|
sender.sendMessage(ChatColor.YELLOW + "Žádný eventer není nastaven!");
|
|
return true;
|
|
}
|
|
|
|
// Vrácení eventera na default roli
|
|
String removeCommand = String.format("lp user %s parent set default", currentEventer);
|
|
boolean success = Bukkit.dispatchCommand(Bukkit.getConsoleSender(), removeCommand);
|
|
|
|
if (success) {
|
|
sender.sendMessage(ChatColor.GREEN + String.format(
|
|
"Hráč %s byl vrácen na default roli!", currentEventer));
|
|
|
|
// Vymazání z konfigurace
|
|
plugin.getConfig().set("current_eventer", "");
|
|
plugin.getConfig().set("eventers." + currentEventer, false);
|
|
plugin.saveConfig();
|
|
|
|
sender.sendMessage(ChatColor.GREEN + "Eventer byl úspěšně vymazán!");
|
|
} else {
|
|
sender.sendMessage(ChatColor.RED + String.format(
|
|
"Chyba při odebírání role eventer pro hráče %s!", currentEventer));
|
|
}
|
|
|
|
return true;
|
|
}
|
|
} |