package de.mviper.adventskalender; import org.bukkit.Bukkit; import org.bukkit.command.Command; import org.bukkit.command.CommandExecutor; import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; import org.bukkit.Material; public class AdminCommand implements CommandExecutor { @Override public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { if (args.length == 1 && args[0].equalsIgnoreCase("reload")) { Adventskalender.getInstance().reloadConfig(); LanguageManager.setup(); sender.sendMessage(LanguageManager.getString("messages.admin.reload_success")); return true; } if (args.length == 3 && args[0].equalsIgnoreCase("open")) { Player target = Bukkit.getPlayer(args[1]); if (target == null) { sender.sendMessage(LanguageManager.getString("messages.admin.player_not_found").replace("%player%", args[1])); return true; } try { int day = Integer.parseInt(args[2]); if (day < 1 || day > 24) { sender.sendMessage(LanguageManager.getString("messages.admin.invalid_day")); return true; } if (target.getInventory().firstEmpty() == -1) { target.getWorld().dropItemNaturally(target.getLocation(), AdventInventory.getRewardItem(day)); } else { target.getInventory().addItem(AdventInventory.getRewardItem(day)); } CalendarData.setClaimed(target, day); sender.sendMessage(LanguageManager.getString("messages.admin.open_success").replace("%player%", target.getName()).replace("%day%", String.valueOf(day))); target.sendMessage(LanguageManager.getString("messages.reward_received").replace("%day%", String.valueOf(day))); } catch (NumberFormatException e) { sender.sendMessage(LanguageManager.getString("messages.admin.invalid_day")); } return true; } sender.sendMessage("§cUsage: /adventskalender admin reload"); sender.sendMessage("§cUsage: /adventskalender admin open "); return true; } }