Advertisement
tomerkenis

Untitled

Sep 19th, 2017
53
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.99 KB | None | 0 0
  1. package me.tomerkenis.pcases.Vnts;
  2.  
  3. import java.util.Random;
  4.  
  5. import org.bukkit.Bukkit;
  6. import org.bukkit.ChatColor;
  7. import org.bukkit.Material;
  8. import org.bukkit.configuration.file.FileConfiguration;
  9. import org.bukkit.entity.Player;
  10. import org.bukkit.event.EventHandler;
  11. import org.bukkit.event.Listener;
  12. import org.bukkit.event.block.Action;
  13. import org.bukkit.event.player.PlayerInteractEvent;
  14. import org.bukkit.inventory.ItemStack;
  15.  
  16. import me.tomerkenis.pcases.Main;
  17. import me.tomerkenis.pcases.Utils;
  18.  
  19. public class Interact implements Listener {
  20.  
  21. FileConfiguration config = Main.getInstance().getConfig();
  22.  
  23. @EventHandler
  24. public void onInteract(PlayerInteractEvent e) {
  25. Player p = e.getPlayer();
  26. if (e.getAction().equals(Action.RIGHT_CLICK_BLOCK) || e.getAction().equals(Action.LEFT_CLICK_BLOCK)) {
  27. if (e.getClickedBlock().getLocation().getBlockX() == config.getInt("crate-master.x") - 1)
  28. if (e.getClickedBlock().getLocation().getBlockY() == config.getInt("crate-master.y"))
  29. if (e.getClickedBlock().getLocation().getBlockZ() == config.getInt("crate-master.z"))
  30. if (p.getWorld().getName().equalsIgnoreCase(config.getString("crate-master.world"))) {
  31. e.setCancelled(true);
  32. for (String s : config.getConfigurationSection("cases").getKeys(false)) {
  33. if (p.getItemInHand().getType().equals(Material
  34. .getMaterial(config.getString("cases." + s + ".key.item").toUpperCase()))) {
  35. if (p.getItemInHand().getItemMeta().getDisplayName()
  36. .equals(ChatColor.translateAlternateColorCodes('&',
  37. config.getString("cases." + s + ".key.name")))) {
  38. if (!Main.invFull(p)) {
  39. ItemStack is = p.getItemInHand();
  40. is.setAmount(p.getItemInHand().getAmount() - 1);
  41. p.setItemInHand(is);
  42. for (String ism : config.getConfigurationSection("cases." + s)
  43. .getKeys(false)) {
  44. if (!ism.equalsIgnoreCase("key")) {
  45. ItemStack iss = Utils
  46. .createItem(
  47. Material.getMaterial(config
  48. .getString(
  49. "cases." + s + "." + ism + ".item")
  50. .toUpperCase()),
  51. ChatColor.translateAlternateColorCodes('&',
  52. config.getString("cases." + s + "." + ism
  53. + ".name")),
  54. config.getInt(
  55. "cases." + s + "." + ism + ".amount"));
  56. Random r = new Random();
  57. int chance = r.nextInt(100);
  58. if (config
  59. .getInt("cases." + s + "." + ism + ".rarity.from") < chance
  60. && config.getInt(
  61. "cases." + s + "." + ism + ".rarity.to") > chance) {
  62. if (config.getBoolean(
  63. "cases." + s + "." + ism + ".command-type")) {
  64. Bukkit.dispatchCommand(Bukkit.getConsoleSender(),
  65. config.getString(
  66. "cases." + s + "." + ism + ".command")
  67. .replaceAll("%p%", p.getName()));
  68. } else {
  69. p.getInventory().addItem(iss);
  70. }
  71. }
  72. }
  73. }
  74. } else if (Main.invFull(p)) {
  75. p.sendMessage(ChatColor.translateAlternateColorCodes('&',
  76. "&cYour inventory is full! can't open the crate!"));
  77. }
  78. } else {
  79. p.sendMessage(
  80. ChatColor.translateAlternateColorCodes('&', "&cUse the proper key!"));
  81. }
  82. } else {
  83. p.sendMessage(ChatColor.translateAlternateColorCodes('&', "&cUse the proper key!"));
  84. }
  85. }
  86. }
  87. }
  88. }
  89.  
  90. }
  91.  
  92. -----------------------------------------------------------------------------------------------------------------------------------
  93. package me.tomerkenis.pcases.Cmds;
  94.  
  95. import org.bukkit.ChatColor;
  96. import org.bukkit.command.Command;
  97. import org.bukkit.command.CommandExecutor;
  98. import org.bukkit.command.CommandSender;
  99. import org.bukkit.configuration.file.FileConfiguration;
  100. import org.bukkit.entity.Player;
  101.  
  102. import me.tomerkenis.pcases.Main;
  103.  
  104. public class setCrateMaster implements CommandExecutor {
  105.  
  106. FileConfiguration config = Main.getInstance().getConfig();
  107.  
  108. @Override
  109. public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
  110. if (sender instanceof Player) {
  111. Player p = (Player) sender;
  112. if (p.hasPermission("pcases.setcratemaster")) {
  113. boolean temp;
  114. try {
  115. config.set("crate-master.x", (int) p.getLocation().getX());
  116. config.set("crate-master.y", (int) p.getLocation().getY());
  117. config.set("crate-master.z", (int) p.getLocation().getZ());
  118. config.set("crate-master.world", p.getLocation().getWorld().getName());
  119. Main.getInstance().saveConfig();
  120. temp = true;
  121. } catch (Exception e) {
  122. e.printStackTrace();
  123. temp = false;
  124. }
  125. if (temp) {
  126. p.sendMessage(
  127. ChatColor.translateAlternateColorCodes('&', "&eYou successfuly defined the cratemaster!"));
  128. } else {
  129. p.sendMessage(ChatColor.translateAlternateColorCodes('&',
  130. "&cAn error occured, please contact an admin or the developer."));
  131. }
  132. } else {
  133. p.sendMessage(ChatColor.translateAlternateColorCodes('&',
  134. "&cYou don't have the permission to execute this command!"));
  135. }
  136. }
  137. return false;
  138. }
  139. }
  140.  
  141. --------------------------------------------------------------------------------------------------------------------------------------
  142. package me.tomerkenis.pcases.Cmds;
  143.  
  144. import org.bukkit.ChatColor;
  145. import org.bukkit.Material;
  146. import org.bukkit.command.Command;
  147. import org.bukkit.command.CommandExecutor;
  148. import org.bukkit.command.CommandSender;
  149. import org.bukkit.configuration.file.FileConfiguration;
  150. import org.bukkit.entity.Player;
  151. import org.bukkit.inventory.ItemStack;
  152.  
  153. import me.tomerkenis.pcases.Main;
  154. import me.tomerkenis.pcases.Utils;
  155.  
  156. public class getKey implements CommandExecutor {
  157.  
  158. FileConfiguration config = Main.getInstance().getConfig();
  159.  
  160. @Override
  161. public boolean onCommand(CommandSender arg0, Command arg1, String arg2, String[] arg3) {
  162. if (arg0 instanceof Player) {
  163. Player p = (Player) arg0;
  164. if (arg3.length == 1) {
  165. if (p.hasPermission("pcases.getkey")) {
  166. if (config.getConfigurationSection("cases").getKeys(false).contains(arg3[0].toLowerCase())) {
  167. ItemStack iss = Utils.createItem(
  168. Material.getMaterial(config.getString("cases." + arg3[0] + ".key.item").toUpperCase()),
  169. ChatColor.translateAlternateColorCodes('&',
  170. config.getString("cases." + arg3[0] + ".key.name")),
  171. 1);
  172. p.getInventory().addItem(iss);
  173. } else {
  174. p.sendMessage(ChatColor.translateAlternateColorCodes('&', "&cThe key/case doesn't exist!"));
  175. }
  176. } else {
  177. p.sendMessage(ChatColor.translateAlternateColorCodes('&',
  178. "&cYou don't have the permission to execute this command!"));
  179. }
  180. } else {
  181. ChatColor.translateAlternateColorCodes('&', "&c/getkey <CaseName>");
  182. }
  183. }
  184. return false;
  185. }
  186.  
  187. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement