Advertisement
Guest User

Untitled

a guest
Feb 17th, 2020
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.23 KB | None | 0 0
  1. package com.sylvcraft.commands;
  2.  
  3. import java.util.HashMap;
  4. import java.util.List;
  5. import java.util.Map;
  6.  
  7. import org.bukkit.Material;
  8. import org.bukkit.command.Command;
  9. import org.bukkit.command.CommandExecutor;
  10. import org.bukkit.command.CommandSender;
  11. import org.bukkit.entity.Player;
  12. import com.sylvcraft.BlockRestrict;
  13.  
  14. public class br implements CommandExecutor {
  15. BlockRestrict plugin;
  16.  
  17. public br(BlockRestrict instance) {
  18. plugin = instance;
  19. }
  20.  
  21. @Override
  22. public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
  23. try {
  24. String targetBlock = ""; Player p = (sender instanceof Player)?(Player)sender:null;
  25. if (!sender.hasPermission("blockrestrict.admin")) {
  26. plugin.msg("access-denied", sender);
  27. return true;
  28. }
  29.  
  30. if (args.length == 0) {
  31. if (!(sender instanceof Player)) {
  32. plugin.msg("specify-block", sender);
  33. return true;
  34. }
  35. if (!p.getInventory().getItemInMainHand().getType().isBlock()) {
  36. plugin.msg("not-a-block", sender);
  37. return true;
  38. }
  39.  
  40. targetBlock = p.getInventory().getItemInMainHand().getType().name();
  41. } else {
  42. if (args[0].equalsIgnoreCase("list")) {
  43. listMaterials(sender);
  44. return true;
  45. }
  46.  
  47. Material m = Material.matchMaterial(args[0]);
  48. if (m == null) {
  49. plugin.msg("invalid-item", sender);
  50. return true;
  51. }
  52. if (!m.isBlock()) {
  53. plugin.msg("not-a-block", sender);
  54. return true;
  55. }
  56.  
  57. targetBlock = m.name();
  58. }
  59.  
  60.  
  61.  
  62. List<String> blocks = plugin.getConfig().getStringList("blocks");
  63. if (blocks.contains(targetBlock)) {
  64. blocks.remove(targetBlock);
  65. plugin.msg("removed", sender);
  66. } else {
  67. blocks.add(targetBlock);
  68. plugin.msg("added", sender);
  69. }
  70.  
  71. plugin.getConfig().set("blocks", blocks);
  72. plugin.saveConfig();
  73. return true;
  74. } catch (Exception ex) {
  75. return false;
  76. }
  77. }
  78.  
  79. void listMaterials(CommandSender sender) {
  80. Map<String, String> data = new HashMap<String, String>();
  81. plugin.msg("list-header", sender);
  82. plugin.msg("", sender, data);
  83. }
  84. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement