Advertisement
Guest User

Untitled

a guest
Sep 21st, 2017
55
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.82 KB | None | 0 0
  1. package me.specifies.fatalenchants;
  2.  
  3. import java.util.Arrays;
  4. import java.util.List;
  5. import java.util.Random;
  6. import java.util.logging.Logger;
  7.  
  8. import org.bukkit.Bukkit;
  9. import org.bukkit.Material;
  10. import org.bukkit.command.Command;
  11. import org.bukkit.command.CommandSender;
  12. import org.bukkit.enchantments.Enchantment;
  13. import org.bukkit.entity.Player;
  14. import org.bukkit.event.EventHandler;
  15. import org.bukkit.event.EventPriority;
  16. import org.bukkit.event.Listener;
  17. import org.bukkit.event.block.Action;
  18. import org.bukkit.event.enchantment.PrepareItemEnchantEvent;
  19. import org.bukkit.event.entity.EntityDamageByEntityEvent;
  20. import org.bukkit.event.inventory.InventoryClickEvent;
  21. import org.bukkit.event.player.PlayerInteractEvent;
  22. import org.bukkit.event.player.PlayerJoinEvent;
  23. import org.bukkit.inventory.Inventory;
  24. import org.bukkit.inventory.ItemStack;
  25. import org.bukkit.inventory.meta.ItemMeta;
  26. import org.bukkit.plugin.java.JavaPlugin;
  27.  
  28. import net.md_5.bungee.api.ChatColor;
  29.  
  30.  
  31. public class Core extends JavaPlugin implements Listener{
  32.  
  33.  
  34.  
  35. @Override
  36. public void onEnable() {
  37.  
  38. this.getServer().getPluginManager().registerEvents(this, this);
  39. Logger.getLogger("FatalEnchantments v1.0 has been enabled!");
  40.  
  41. }
  42.  
  43.  
  44. public static String color (String msg) {
  45. return ChatColor.translateAlternateColorCodes('&', msg);
  46. }
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53. public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args) {
  54. Player p = (Player) sender;
  55.  
  56. ItemStack decoration = new ItemStack(Material.STAINED_GLASS_PANE);
  57. ItemMeta meta = decoration.getItemMeta();
  58. meta.setDisplayName(" ");
  59. meta.setLore(Arrays.asList(ChatColor.BLACK + ""));
  60. decoration.setItemMeta(meta);
  61. decoration.setDurability((short) 15);
  62.  
  63. ItemStack common = new ItemStack(Material.BOOK);
  64. ItemMeta cmeta = common.getItemMeta();
  65. cmeta.setDisplayName(ChatColor.translateAlternateColorCodes('&', "&8&m---&8[&bCommon&8]&8&m---"));
  66. cmeta.setLore(Arrays.asList(ChatColor.translateAlternateColorCodes('&', "&7Gain a random book in the &bCommon &7class."), ChatColor.translateAlternateColorCodes('&', "&7Cost: &a10 Levels&7.")));
  67. common.setItemMeta(cmeta);
  68.  
  69. ItemStack uncommon = new ItemStack(Material.BOOK);
  70. ItemMeta umeta = uncommon.getItemMeta();
  71. umeta.setDisplayName(org.bukkit.ChatColor.translateAlternateColorCodes('&', "&8&m---&8[&cUncommon&8]&8&m---"));
  72. umeta.setLore(Arrays.asList(ChatColor.translateAlternateColorCodes('&', "&7Gain a random book in the &cUncommon &7class."), ChatColor.translateAlternateColorCodes('&', "&7Cost: &a20 Levels&7.")));
  73. uncommon.setItemMeta(umeta);
  74.  
  75. ItemStack epic = new ItemStack(Material.BOOK);
  76. ItemMeta emeta = epic.getItemMeta();
  77. emeta.setDisplayName(ChatColor.translateAlternateColorCodes('&', "&8&m---&8[&5Epic&8]&8&m---"));
  78. emeta.setLore(Arrays.asList(ChatColor.translateAlternateColorCodes('&', "&7Gain a random book in the &5Epic &7class."), ChatColor.translateAlternateColorCodes('&', "&7Cost: &a30 Levels&7.")));
  79. epic.setItemMeta(emeta);
  80.  
  81. ItemStack Legendary = new ItemStack(Material.BOOK);
  82. ItemMeta lmeta = Legendary.getItemMeta();
  83. lmeta.setDisplayName(ChatColor.translateAlternateColorCodes('&', "&8&m---&8[&dLegendary&8]&8&m---"));
  84. lmeta.setLore(Arrays.asList(ChatColor.translateAlternateColorCodes('&' , "&7Gain a random book in the &dLegendary &7class."), ChatColor.translateAlternateColorCodes('&', "&7Cost: &a40 Levels&7.")));
  85. Legendary.setItemMeta(lmeta);
  86.  
  87.  
  88.  
  89.  
  90. if (cmd.getName().equalsIgnoreCase("fenchant")) {
  91. if(p.hasPermission("fe.enchant")) {
  92. Inventory inv = Bukkit.createInventory(null, 27, ChatColor.RED + "Fatal" + ChatColor.GRAY + "Enchants");
  93. int i = 0;
  94. while (i <= 8) {
  95. inv.setItem(i, decoration);
  96. i++;
  97. }
  98. inv.setItem(9, decoration);
  99. inv.setItem(10, common);
  100. inv.setItem(11, decoration);
  101. inv.setItem(12, uncommon);
  102. inv.setItem(13, decoration);
  103. inv.setItem(14, epic);
  104. inv.setItem(15, decoration);
  105. inv.setItem(16, Legendary);
  106. inv.setItem(17, decoration);
  107. int ii = 18;
  108. while (ii <= 26) {
  109. inv.setItem(ii, decoration);
  110. ii++;
  111. }
  112. p.openInventory(inv);
  113. }// end of enchant perm
  114. }
  115. return true;
  116. }
  117. @EventHandler
  118. public void onClick(InventoryClickEvent e) {
  119. Player p = (Player) e.getWhoClicked();
  120. if(e.getInventory().getTitle().equals(ChatColor.RED + "Fatal" + ChatColor.GRAY + "Enchants")) {
  121. //Common Item Stacks
  122. Random hazer = new Random();
  123. int Low = 1;
  124. int High = 100;
  125. int Result = hazer.nextInt(High-Low) + Low;
  126. Random hazers = new Random();
  127. int SResult = hazers.nextInt(High-Low) + Low;
  128. // Haze : I-II-II Chance: 10-5-2%
  129. ItemStack haze1 = new ItemStack(Material.BOOK);
  130. ItemMeta h1m = haze1.getItemMeta();
  131. h1m.setDisplayName(color("&cHaze I"));
  132. h1m.setLore(Arrays.asList(color("&7Applicable to: &cSwords"), color("&aSuccess Rate&7: " + SResult), color("&cDestroy Rate&7: " + Result)));
  133. haze1.setItemMeta(h1m);
  134.  
  135. //Haze 2:
  136. ItemStack haze2 = new ItemStack(Material.BOOK);
  137. ItemMeta h2m = haze2.getItemMeta();
  138. h2m.setDisplayName(color("&cHaze II"));
  139. h2m.setLore(Arrays.asList(color("&7Applicable to: &cSwords"),color("&aSuccess Rate&7: " + SResult), color("&cDestroy Rate&7: " + Result)));
  140. haze2.setItemMeta(h2m);
  141.  
  142. //Haze 3:
  143. ItemStack haze3 = new ItemStack(Material.BOOK);
  144. ItemMeta h3m = haze3.getItemMeta();
  145. h3m.setDisplayName(color("&cHaze III"));
  146. h2m.setLore(Arrays.asList(color("&7Applicable to: &cSwords"),color("&aSuccess Rate&7: &a" + SResult), color("&cDestroy Rate&7 &a" + Result)));
  147.  
  148.  
  149.  
  150. int i = e.getSlot();
  151. while (i <= 9) {
  152. e.setCancelled(true);
  153. i++;
  154.  
  155. }
  156.  
  157. if (e.getSlot() == 18) {
  158. e.setCancelled(true);
  159. }
  160. if (e.getSlot() == 19) {
  161. e.setCancelled(true);
  162. }
  163. if (e.getSlot() == 20) {
  164. e.setCancelled(true);
  165. }
  166. if (e.getSlot() == 21) {
  167. e.setCancelled(true);
  168. }
  169. if (e.getSlot() == 22) {
  170. e.setCancelled(true);
  171. }
  172. if (e.getSlot() == 23) {
  173. e.setCancelled(true);
  174. }
  175. if (e.getSlot() == 24) {
  176. e.setCancelled(true);
  177. }
  178. if (e.getSlot() == 25) {
  179. e.setCancelled(true);
  180. }
  181. if (e.getSlot() == 26) {
  182. e.setCancelled(true);
  183. }
  184. if (e.getSlot() == 10) {
  185. if(p.hasPermission("fe.common")) {
  186. int commonl = 10;
  187. int level = p.getLevel();
  188. if (level >= 10) {
  189. p.setLevel(p.getLevel() - commonl);
  190. Random r = new Random();
  191. int percent = r.nextInt(100);
  192. if (percent <= 10) {
  193. p.getInventory().addItem(haze1);
  194. }
  195. if (percent <= 90) {
  196. p.getInventory().addItem(haze2);
  197. }
  198. p.sendMessage(color("&7[&cFatal&7Enchants] &cYou have purchased one &bCommon &cbook for &a10 levels&c!"));
  199. e.setCancelled(true);
  200. }//2nd if
  201. else {
  202. p.sendMessage(color("&7[&cFatal&7Enchants] &cYou do not have enough levels to purchase this book!"));
  203. e.setCancelled(true);
  204. }// else
  205. }//first if
  206.  
  207. }//last if
  208. if(e.getSlot() == 11) {
  209. e.setCancelled(true);
  210. }
  211.  
  212. if(e.getSlot() == 12) {
  213. if(p.hasPermission("fe.uncommon")) {
  214. int uncommonl = 20;
  215. int level = p.getLevel();
  216. if (level >= 20) {
  217. p.setLevel(p.getLevel() - uncommonl);
  218.  
  219. p.sendMessage(color("&7[&cFatal&7Enchants] &cYou have purchased one &cUncommon &cbook for &a20 levels&c!"));
  220. e.setCancelled(true);
  221. } else {
  222. p.sendMessage(color("&7[&cFatal&7Enchants] &cYou do not have enough levels to purchase this book!"));
  223. e.setCancelled(true);
  224. }
  225. }//2nd
  226. }//last
  227. if(e.getSlot() == 13) {
  228. e.setCancelled(true);
  229. }
  230. if(e.getSlot() == 14) {
  231. if(p.hasPermission("fe.epic")) {
  232. int epicl = 30;
  233. int level = p.getLevel();
  234. if (level >= 30) {
  235. p.setLevel(p.getLevel() - epicl);
  236.  
  237. p.sendMessage(color("&7[&cFatal&7Enchants] &cYou have purchased one &5Epic &cbook for &a30 levels&c!"));
  238. e.setCancelled(true);
  239. } else {
  240. p.sendMessage(color("&7[&cFatal&7Enchants] &cYou do not have enough levels to purchase this book!"));
  241. e.setCancelled(true);
  242. }
  243. }
  244. }//end
  245. if(e.getSlot() == 15) {
  246. e.setCancelled(true);
  247. }
  248. if(e.getSlot() == 16) {
  249. if(p.hasPermission("fe.legendary")) {
  250. int legendaryl = 40;
  251. int level = p.getLevel();
  252. if(level >= 40) {
  253. p.setLevel(p.getLevel() - legendaryl);
  254. p.sendMessage(color("&7[&cFatal&7Enchants] &cYou have purchased one &dLegendary &cbook for &a40 levels&c!"));
  255. e.setCancelled(true);
  256. } else {
  257. p.sendMessage(color("&7[&cFatal&7Enchants] &cYou do not have enough levels to purchase this book!"));
  258. e.setCancelled(true);
  259. }
  260. }
  261. }//end
  262. if(e.getSlot() == 17) {
  263. e.setCancelled(true);
  264. }
  265.  
  266. }
  267.  
  268. }//end of event
  269.  
  270.  
  271.  
  272.  
  273.  
  274. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement