Newer
Older
ChallengeSystem / src / main / java / net / brennholz / commands / HP_Command.java
@fantahund fantahund on 10 May 2020 4 KB Versuch für neue GUI
package net.brennholz.commands;



import net.brennholz.challenges.ChatUtil;
import org.bukkit.Bukkit;
import org.bukkit.OfflinePlayer;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;

public class HP_Command implements CommandExecutor {

	@SuppressWarnings("deprecation")
	@Override
	public boolean onCommand(CommandSender sender, Command cmd, String lable, String[] args) {
		if (sender.hasPermission("challenges.hp.modify")) {
			if (args.length >= 2) {
				if (args[0].equalsIgnoreCase("max")) {
					if (Double.parseDouble(args[1]) > 0) {
						for (Player pp : Bukkit.getOnlinePlayers()) {
							pp.setMaxHealth(Double.parseDouble(args[1]));
							pp.setHealth(pp.getMaxHealth());
						}
						ChatUtil.sendNormalMessage(sender, "Du hast die maximalen HP auf " + args[1] + " gesetzt!");
					}
				} else if (args[0].equalsIgnoreCase("get")) {
					OfflinePlayer other = (Bukkit.getServer().getOfflinePlayer(args[1]));
					if (other.isOnline()) {
						Player p = (Player) other;
						ChatUtil.sendNormalMessage(p, p.getName() + " besitzt derzeit " + p.getHealth() + "HP!");
					} else
					 	ChatUtil.sendErrorMessage(sender, "Dieser Spieler ist nicht online!");
				} else if (args.length >= 3) {
					OfflinePlayer other = (Bukkit.getServer().getOfflinePlayer(args[1]));
					if (other.isOnline()) {
						Player p = (Player) other;
						double finaladdhp = p.getHealth() + Double.parseDouble(args[2]);
						double finalremhp = p.getHealth() - Double.parseDouble(args[2]);
						if (args[0].equalsIgnoreCase("add")) {
							if (!(finaladdhp > p.getMaxHealth()) && !(finaladdhp < 0)) {
								p.setHealth(finaladdhp);
								ChatUtil.sendNormalMessage(p, "Du wurdest von " + sender.getName() + " um " + args[2] + "HP geheilt!");
							} else
								ChatUtil.sendErrorMessage(sender, "Operation nicht möglich!");
						}
						if (args[0].equalsIgnoreCase("remove")) {
							if (!(finalremhp > p.getMaxHealth()) && !(finalremhp < 0)) {
								p.setHealth(finalremhp);
								ChatUtil.sendNormalMessage(p, sender.getName() + " hat dir " + args[2] + "HP §centfernt!");
								ChatUtil.sendNormalMessage(sender, "Du hast " + p.getName() + " " + args[2] + "HP §centfernt!");
							} else
								ChatUtil.sendErrorMessage(sender, "Operation nicht möglich!");
						}
						if (args[0].equalsIgnoreCase("set")) {
							if (!(Double.parseDouble(args[2]) > p.getMaxHealth())
									&& !(Double.parseDouble(args[2]) < 0)) {
								p.setHealth(Double.parseDouble(args[2]));
								ChatUtil.sendNormalMessage(p, sender.getName() + " hat deine HP auf " + args[2] + " gesetzt!");
								ChatUtil.sendNormalMessage(sender, "Du hast die HP von " + p.getName() + " §eauf " + args[2] + " gesetzt!");
							} else
								ChatUtil.sendErrorMessage(sender, "Operation nicht möglich!");
						}
					} else
						ChatUtil.sendErrorMessage(sender, "Dieser Spieler ist nicht online!");
				} else {
					ChatUtil.sendNormalMessage(sender,"~~~~~ HP command ~~~~~");
					ChatUtil.sendNormalMessage(sender,"/HP Get <Spieler> - Erhalte die aktuelen HP eines Spielers");
					ChatUtil.sendNormalMessage(sender,"/HP Add <Spieler> <Wert> - Füge einem Spieler die angegebene Zahl an Herzen hinzu");
					ChatUtil.sendNormalMessage(sender,"/HP Remove <Spieler> <Wert> - §6Entferne einem Spieler die angegebene Zahl an Herzen");
					ChatUtil.sendNormalMessage(sender,"/HP Set <Spieler> <Wert> - Setze die Herzen eines Spieler auf die angegebene Zahl");
					ChatUtil.sendNormalMessage(sender,"/HP Max <Wert> - Setze die maximalen HP aller Spieler");

				}
			} else {
				ChatUtil.sendNormalMessage(sender,"~~~~~ HP command ~~~~~");
				ChatUtil.sendNormalMessage(sender,"/HP Get <Spieler> - Erhalte die aktuelen HP eines Spielers");
				ChatUtil.sendNormalMessage(sender,"/HP Add <Spieler> <Wert> - Füge einem Spieler die angegebene Zahl an Herzen hinzu");
				ChatUtil.sendNormalMessage(sender,"/HP Remove <Spieler> <Wert> - §6Entferne einem Spieler die angegebene Zahl an Herzen");
				ChatUtil.sendNormalMessage(sender,"/HP Set <Spieler> <Wert> - Setze die Herzen eines Spieler auf die angegebene Zahl");
				ChatUtil.sendNormalMessage(sender,"/HP Max <Wert> - Setze die maximalen HP aller Spieler");;
			}
		} else
			ChatUtil.sendErrorMessage(sender, "Keine Berechtigung!");
		return true;
	}
}