CommandBook.java 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  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.permissions.Permissions;
  6. import net.minecraft.command.ICommandSender;
  7. import net.minecraft.entity.player.EntityPlayer;
  8. import net.minecraft.init.Items;
  9. import net.minecraft.item.ItemStack;
  10. public class CommandBook extends ModuleCommand
  11. {
  12. public CommandBook(Module m)
  13. {
  14. super("book", m);
  15. super.setDescription("Diverse Befehle für Bücher");
  16. super.setUsage("/book für die Hilfe");
  17. super.setPermission(Permissions.BOOK);
  18. }
  19. @Override
  20. public boolean execute(ICommandSender cs, String[] arg)
  21. {
  22. if(!(cs instanceof EntityPlayer))
  23. {
  24. this.getModule().send(cs, GlobalText.onlyPlayer());
  25. return true;
  26. }
  27. Module m = this.getModule();
  28. EntityPlayer p = (EntityPlayer) cs;
  29. if(arg.length >= 1)
  30. {
  31. ItemStack stack = p.getHeldItemMainhand();
  32. if(stack.getItem() != Items.WRITTEN_BOOK)
  33. {
  34. m.send(cs, "Du hast kein signiertes Buch in der Hand.");
  35. return true;
  36. }
  37. // TODO
  38. /*BookMeta bmeta = (BookMeta) stack.getItemMeta();
  39. switch(arg[0])
  40. {
  41. case "open":
  42. {
  43. ItemStack newItem = new ItemStack(Material.BOOK_AND_QUILL, stack.getAmount());
  44. newItem.setItemMeta(bmeta);
  45. p.getInventory().setItemInMainHand(newItem);
  46. return true;
  47. }
  48. case "author":
  49. {
  50. bmeta.setAuthor(ChatManager.colorMessage(Utils.connectSpaces(arg, 1), p));
  51. p.getInventory().getItemInMainHand().setItemMeta(bmeta);
  52. p.updateInventory();
  53. return true;
  54. }
  55. case "title":
  56. {
  57. bmeta.setTitle(ChatManager.colorMessage(Utils.connectSpaces(arg, 1), p));
  58. p.getInventory().getItemInMainHand().setItemMeta(bmeta);
  59. p.updateInventory();
  60. return true;
  61. }
  62. }*/
  63. }
  64. m.send(cs, "/book ...");
  65. m.sendHelpListElement(cs, "open", "Öffnet dein Buch erneut");
  66. m.sendHelpListElement(cs, "author <name>", "Setzt den Autor des Buches");
  67. m.sendHelpListElement(cs, "title <name>", "Setzt den Titel des Buches");
  68. return true;
  69. }
  70. }