diff --git a/src/main/java/de/viper/survivalplus/commands/UnblockCommand.java b/src/main/java/de/viper/survivalplus/commands/UnblockCommand.java new file mode 100644 index 0000000..84aaac3 --- /dev/null +++ b/src/main/java/de/viper/survivalplus/commands/UnblockCommand.java @@ -0,0 +1,45 @@ +package de.viper.survivalplus.commands; + +import de.viper.survivalplus.Manager.BlockManager; +import org.bukkit.Bukkit; +import org.bukkit.command.*; +import org.bukkit.entity.Player; + +public class UnblockCommand implements CommandExecutor { + + private final BlockManager blockManager; + + public UnblockCommand(BlockManager blockManager) { + this.blockManager = blockManager; + } + + @Override + public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { + + if (!(sender instanceof Player player)) { + sender.sendMessage("Dieser Befehl ist nur für Spieler."); + return true; + } + + if (args.length != 1) { + player.sendMessage("§cBenutze: /unblock "); + return true; + } + + Player target = Bukkit.getPlayerExact(args[0]); + if (target == null || target == player) { + player.sendMessage("§cUngültiger Spieler."); + return true; + } + + if (blockManager.hasBlocked(player, target)) { + blockManager.unblockPlayer(player, target); + player.sendMessage("§aDu hast §e" + target.getName() + "§a entblockt."); + target.sendMessage("§aDu wurdest von §e" + player.getName() + "§a entblockt."); + } else { + player.sendMessage("§cDu hast §e" + target.getName() + "§c nicht blockiert."); + } + + return true; + } +}