CommandTest.java 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. package me.km.commands;
  2. import me.km.api.GlobalText;
  3. import me.km.api.Module;
  4. import me.km.api.ModuleCommand;
  5. import me.km.capabilities.ChestKeyProvider;
  6. import me.km.capabilities.IChestKey;
  7. import me.km.permissions.Permissions;
  8. import net.minecraft.command.ICommandSender;
  9. import net.minecraft.entity.player.EntityPlayerMP;
  10. import net.minecraft.item.ItemStack;
  11. public class CommandTest extends ModuleCommand
  12. {
  13. public CommandTest(Module m)
  14. {
  15. super("test", m);
  16. super.setDescription("Für Tests");
  17. super.setUsage("/test");
  18. super.setPermission(Permissions.TEST);
  19. }
  20. @Override
  21. public boolean execute(ICommandSender cs, String[] arg)
  22. {
  23. if(!(cs instanceof EntityPlayerMP))
  24. {
  25. this.getModule().send(cs, GlobalText.onlyPlayer());
  26. return true;
  27. }
  28. EntityPlayerMP p = (EntityPlayerMP) cs;
  29. ItemStack stack = p.getHeldItemMainhand();
  30. if(arg.length >= 1 && stack.hasCapability(ChestKeyProvider.CHEST_KEY_CAP, null))
  31. {
  32. IChestKey key = stack.getCapability(ChestKeyProvider.CHEST_KEY_CAP, null);
  33. if(key == null)
  34. {
  35. // will never happen
  36. return true;
  37. }
  38. switch(arg[0])
  39. {
  40. case "key":
  41. {
  42. if(arg.length >= 2)
  43. {
  44. key.setKey(arg[1]);
  45. this.getModule().send(cs, "Schlüssel geändert auf '" + arg[1] + "'");
  46. }
  47. else
  48. {
  49. this.getModule().send(cs, "'" + key.getKey() + "'");
  50. }
  51. break;
  52. }
  53. case "copy":
  54. {
  55. key.setCopy(!key.isCopy());
  56. this.getModule().send(cs, "Copy-Status ist nun '" + key.isCopy() + "'");
  57. break;
  58. }
  59. }
  60. }
  61. return true;
  62. }
  63. }