danik159

Untitled

Mar 30th, 2020
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.21 KB | None | 0 0
  1. package com.chickenstyle.fullInventory;
  2.  
  3. import java.io.File;
  4. import java.io.IOException;
  5.  
  6. import org.bukkit.ChatColor;
  7. import org.bukkit.Sound;
  8. import org.bukkit.command.Command;
  9. import org.bukkit.command.CommandExecutor;
  10. import org.bukkit.command.CommandSender;
  11. import org.bukkit.configuration.file.YamlConfiguration;
  12.  
  13. public class InventoryCommand implements CommandExecutor {
  14. public static boolean isInteger(String s) {
  15. try {
  16. Integer.parseInt(s);
  17. } catch(NumberFormatException e) {
  18. return false;
  19. } catch(NullPointerException e) {
  20. return false;
  21. }
  22. return true;
  23. }
  24.  
  25. public static boolean isSound(String s) {
  26. try {
  27. Sound.valueOf(s);
  28. } catch(Exception e) {
  29. return false;
  30. }
  31. return true;
  32. }
  33.  
  34. @Override
  35. public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
  36. Main main = Main.getPlugin(Main.class);
  37. File file = new File(Main.getPlugin(Main.class).getDataFolder(), "config.yml");
  38. YamlConfiguration config = YamlConfiguration.loadConfiguration(file);
  39. if (args.length == 1) {
  40. switch (args[0].toLowerCase()) {
  41. case "reload":
  42. if (sender.hasPermission("inventory.reload") || sender.hasPermission("inventory.admin")) {
  43. try {
  44. config.save(file);
  45. main.reloadConfig();
  46. } catch (IOException e) {
  47. e.printStackTrace();
  48. }
  49. sender.sendMessage(ChatColor.GREEN + "Config Has Been Reloaded");
  50. } else {
  51. sender.sendMessage(ChatColor.RED + "You dont have permission to use this command!");
  52. }
  53. break;
  54.  
  55. case "help":
  56. if (sender.hasPermission("inventory.help") || sender.hasPermission("inventory.admin")) {
  57. sender.sendMessage(ChatColor.GRAY + "<---------------------------------->");
  58. sender.sendMessage(ChatColor.GRAY + "/inv reload // reloads you config");
  59. sender.sendMessage(ChatColor.GRAY + "");
  60. sender.sendMessage(ChatColor.GRAY + "/inv settype (text/title) // sets the type of the message");
  61. sender.sendMessage(ChatColor.GRAY + "");
  62. sender.sendMessage(ChatColor.GRAY + "/inv setdelay [seconds] // sets delay between message (I dont suggest to use it)");
  63. sender.sendMessage(ChatColor.GRAY + "");
  64. sender.sendMessage(ChatColor.GRAY + "/inv setmessage [message] // sets the message");
  65. sender.sendMessage(ChatColor.GRAY + "");
  66. sender.sendMessage(ChatColor.GRAY + "/inv setsound [sound's name] // sets the sound for the message");
  67. sender.sendMessage(ChatColor.GRAY + "");
  68. sender.sendMessage(ChatColor.GRAY + "/inv setduration [seconds] // sets the sound for the message");
  69. sender.sendMessage(ChatColor.GRAY + "<---------------------------------->");
  70. } else {
  71. sender.sendMessage(ChatColor.RED + "You dont have permission to use this command!");
  72. }
  73. break;
  74.  
  75. default:
  76. sender.sendMessage(ChatColor.RED + "Invalid Usage");
  77. sender.sendMessage(ChatColor.RED + "Type: /inv help");
  78. break;
  79. }
  80.  
  81. } else if (args.length >= 2) {
  82. switch (args[0].toLowerCase()) {
  83. case "settype":
  84. if (sender.hasPermission("inventory.admin") || sender.hasPermission("inventory.settype")) {
  85. if (args[1].toLowerCase().equals("text") || args[1].toLowerCase().equals("title")) {
  86. config.set("typeofmessage", args[1].toLowerCase());
  87. try {
  88. config.save(file);
  89. main.reloadConfig();
  90. } catch (IOException e) {
  91. e.printStackTrace();
  92. }
  93. sender.sendMessage(ChatColor.GREEN + "Type was set successfully");
  94. } else {
  95. sender.sendMessage(ChatColor.RED + "Invalid Usage");
  96. sender.sendMessage(ChatColor.RED + "Type: /inv help");
  97. }
  98. } else {
  99. sender.sendMessage(ChatColor.RED + "You dont have permission to use this command!");
  100. }
  101. break;
  102.  
  103. case "setdelay":
  104. if (sender.hasPermission("inventory.setdelay") || sender.hasPermission("inventory.admin")) {
  105. if (isInteger(args[1])) {
  106. config.set("delaytime", Integer.valueOf(args[1]));
  107. try {
  108. config.save(file);
  109. main.reloadConfig();
  110. } catch (IOException e) {
  111. e.printStackTrace();
  112. }
  113. sender.sendMessage(ChatColor.GREEN + "Delay was set successfully");
  114. } else {
  115. sender.sendMessage(ChatColor.RED + "Invalid Number");
  116. sender.sendMessage(ChatColor.RED + "Type: /inv help");
  117. }
  118. } else {
  119. sender.sendMessage(ChatColor.RED + "You dont have permission to use this command!");
  120. }
  121.  
  122. break;
  123.  
  124. case "setmessage":
  125. if (sender.hasPermission("inventory.setmessage") || sender.hasPermission("inventory.admin")) {
  126. StringBuilder builder = new StringBuilder();
  127. for (int i = 1; i < args.length; i++) {
  128. builder.append(args[i]).append(" ");
  129. }
  130. String msg = builder.toString();
  131. config.set("message", msg);
  132. try {
  133. config.save(file);
  134. main.reloadConfig();
  135. } catch (IOException e) {
  136. e.printStackTrace();
  137. }
  138. sender.sendMessage(ChatColor.GREEN + "Message was set successfully");
  139. } else {
  140. sender.sendMessage(ChatColor.RED + "You dont have permission to use this command!");
  141. }
  142. break;
  143.  
  144. case "setsound":
  145. if (sender.hasPermission("inventory.setsound") || sender.hasPermission("inventory.admin")) {
  146. if (isSound(args[1].toUpperCase())) {
  147. config.set("sound", args[1].toUpperCase());
  148. try {
  149. config.save(file);
  150. main.reloadConfig();
  151. } catch (IOException e) {
  152. e.printStackTrace();
  153. }
  154. sender.sendMessage(ChatColor.GREEN + "Sound was set successfully");
  155. } else {
  156. sender.sendMessage(ChatColor.RED + "Unvalid Sound");
  157. }
  158. }
  159. break;
  160.  
  161. case "setduration":
  162. if (sender.hasPermission("inventory.setduration") || sender.hasPermission("inventory.admin")) {
  163. if (isInteger(args[1])) {
  164. config.set("setduration", Integer.valueOf(args[1]));
  165. try {
  166. config.save(file);
  167. main.reloadConfig();
  168. } catch (IOException e) {
  169. e.printStackTrace();
  170. }
  171. } else {
  172. sender.sendMessage(ChatColor.RED + "Invalid Number");
  173. }
  174. }
  175. break;
  176.  
  177. default:
  178. sender.sendMessage(ChatColor.RED + "Type: /inv help");
  179. break;
  180.  
  181.  
  182. }
  183.  
  184.  
  185.  
  186.  
  187.  
  188. } else {
  189. sender.sendMessage(ChatColor.RED + "Invalid Usage");
  190. sender.sendMessage(ChatColor.RED + "Correct Usage: /inv help");
  191. }
  192. return false;
  193. }
  194.  
  195. }
Add Comment
Please, Sign In to add comment