package me.km.commands; import me.km.KajetansMod; import me.km.api.Utils; import me.km.api.GlobalText; import me.km.api.Module; import me.km.api.ModuleCommand; import me.km.exception.PlayerNotFoundException; import me.km.permissions.Permissions; import me.km.playerbank.PlayerManager; import net.minecraft.command.ICommandSender; import net.minecraft.entity.player.EntityPlayer; public class CommandPvP extends ModuleCommand { public CommandPvP(Module m) { super("pvp", m); super.setDescription("Schaltet deine PVP-Einstellungen"); super.setUsage("/pvp [player]"); super.setPermission(Permissions.PVP); } @Override public boolean execute(ICommandSender cs, String[] arg) { EntityPlayer affectedPlayer; try { if(!KajetansMod.perms.hasPermission(cs, Permissions.PVP_OTHER)) { throw new IndexOutOfBoundsException(); } affectedPlayer = Utils.getPlayerByName(arg[0]); } catch(PlayerNotFoundException ex) { this.getModule().send(cs, GlobalText.cantFindPlayer(arg[0])); return true; } catch(IndexOutOfBoundsException ex) { if(!(cs instanceof EntityPlayer)) { this.getModule().send(cs, GlobalText.missingParameter()); return true; } affectedPlayer = (EntityPlayer) cs; } PlayerManager pb = KajetansMod.playerbank; if(pb.getPvpStatus(affectedPlayer)) { pb.setPvpStatus(affectedPlayer, false); this.getModule().send(affectedPlayer, "Du hast PVP nun aus."); if(!affectedPlayer.equals(cs)) { this.getModule().send(cs, affectedPlayer.getName() + " hat PVP nun aus."); } return true; } pb.setPvpStatus(affectedPlayer, true); this.getModule().send(affectedPlayer, "Du hast PVP nun an."); if(!affectedPlayer.equals(cs)) { this.getModule().send(cs, affectedPlayer.getName() + " hat PVP nun an."); } return true; } }