123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184 |
- package me.km.commands;
- import me.km.permissions.Permissions;
- 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 net.minecraft.command.ICommandSender;
- import net.minecraft.entity.player.EntityPlayer;
- public class CommandExp extends ModuleCommand
- {
- public CommandExp(Module m)
- {
- super("exp", m);
- super.setDescription("Befehle um die EXP eines Spielers zu verändern");
- super.setUsage("/exp für die Hilfe");
- super.setPermission(Permissions.EXP);
- }
- @Override
- public boolean execute(ICommandSender cs, String[] arg)
- {
- Module m = this.getModule();
- if(arg.length >= 1)
- {
- switch(arg[0])
- {
- case "show":
- {
- EntityPlayer p;
- try
- {
- p = Utils.getPlayerByName(arg[1]);
- m.send(cs, p.getName() + " hat " + p.experienceTotal + " XP (Level: " + p.experienceLevel + ").");
- }
- catch(PlayerNotFoundException ex)
- {
- m.send(cs, GlobalText.cantFindPlayer(arg[1]));
- return true;
- }
- catch(IndexOutOfBoundsException ex)
- {
- if(!(cs instanceof EntityPlayer))
- {
- m.send(cs, GlobalText.missingParameter());
- return true;
- }
- p = (EntityPlayer) cs;
- m.send(cs, "Du hast " + p.experienceTotal + " XP (Level: " + p.experienceLevel + ").");
- }
- return true;
- }
- case "set":
- {
- if(arg.length >= 2)
- {
- EntityPlayer p;
- try
- {
- p = Utils.getPlayerByName(arg[2]);
- try
- {
- int i = Integer.parseInt(arg[1]);
- if(i < 0)
- {
- throw new NumberFormatException();
- }
- p.experienceLevel = 0;
- p.experience = 0;
- p.experienceTotal = 0;
- p.addExperience(i);
- m.send(cs, p.getName() + " hat nun " + arg[1] + " XP.");
- m.send(p, "Deine XP wurden auf " + arg[1] + " gesetzt.");
- }
- catch(NumberFormatException ex)
- {
- m.send(cs, GlobalText.noNaturalNumber());
- return true;
- }
- }
- catch(PlayerNotFoundException ex)
- {
- m.send(cs, GlobalText.cantFindPlayer(arg[2]));
- return true;
- }
- catch(IndexOutOfBoundsException ex)
- {
- if(!(cs instanceof EntityPlayer))
- {
- m.send(cs, GlobalText.missingParameter());
- return true;
- }
- p = (EntityPlayer) cs;
- try
- {
- int i = Integer.parseInt(arg[1]);
- if(i <= 0)
- {
- throw new NumberFormatException();
- }
- p.experienceLevel = 0;
- p.experience = 0;
- p.experienceTotal = 0;
- p.addExperience(i);
- m.send(p, "Deine XP wurden auf " + arg[1] + " gesetzt.");
- }
- catch(NumberFormatException ex2)
- {
- m.send(cs, GlobalText.noPositiveNaturalNumber());
- return true;
- }
- }
- return true;
- }
- }
- case "give":
- {
- if(arg.length >= 2)
- {
- EntityPlayer p;
- try
- {
- p = Utils.getPlayerByName(arg[2]);
- try
- {
- int i = Integer.parseInt(arg[1]);
- if(i <= 0)
- {
- throw new NumberFormatException();
- }
- p.addExperience(i);
- m.send(cs, p.getName() + " wurden " + arg[1] + " XP gegeben.");
- m.send(p, "Dir wurden " + arg[1] + " XP gegeben.");
- }
- catch(NumberFormatException ex)
- {
- m.send(cs, GlobalText.noPositiveNaturalNumber());
- return true;
- }
- }
- catch(PlayerNotFoundException ex)
- {
- m.send(cs, GlobalText.cantFindPlayer(arg[2]));
- return true;
- }
- catch(IndexOutOfBoundsException ex)
- {
- if(!(cs instanceof EntityPlayer))
- {
- m.send(cs, GlobalText.missingParameter());
- return true;
- }
- p = (EntityPlayer) cs;
- try
- {
- int i = Integer.parseInt(arg[1]);
- if(i <= 0)
- {
- throw new NumberFormatException();
- }
- p.addExperience(i);
- m.send(p, "Dir wurden " + arg[1] + " XP gegeben.");
- }
- catch(NumberFormatException ex2)
- {
- m.send(cs, GlobalText.noPositiveNaturalNumber());
- return true;
- }
- }
- return true;
- }
- }
- }
- }
-
- m.send(cs, "/exp ...");
- m.sendHelpListElement(cs, "show [player]", "Zeigt die EXP eines Spielers");
- m.sendHelpListElement(cs, "set <amount> [player]", "Setzt die EXP eines Spielers");
- m.sendHelpListElement(cs, "give <amount> [player]", "Gibt dem Spieler EXP");
- return true;
- }
- }
|