danik159

Untitled

Jul 24th, 2019
128
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.88 KB | None | 0 0
  1. package com.junkstyle.forge;
  2.  
  3. import java.util.ArrayList;
  4. import java.util.List;
  5.  
  6. import org.bukkit.Bukkit;
  7. import org.bukkit.ChatColor;
  8. import org.bukkit.Material;
  9. import org.bukkit.Sound;
  10. import org.bukkit.block.Block;
  11. import org.bukkit.entity.Player;
  12. import org.bukkit.event.EventHandler;
  13. import org.bukkit.event.Listener;
  14. import org.bukkit.event.block.Action;
  15. import org.bukkit.event.inventory.InventoryClickEvent;
  16. import org.bukkit.event.inventory.InventoryCloseEvent;
  17. import org.bukkit.event.player.PlayerInteractEvent;
  18. import org.bukkit.inventory.EquipmentSlot;
  19. import org.bukkit.inventory.Inventory;
  20. import org.bukkit.inventory.ItemFlag;
  21. import org.bukkit.inventory.ItemStack;
  22. import org.bukkit.inventory.meta.ItemMeta;
  23. import org.bukkit.plugin.java.JavaPlugin;
  24. import org.bukkit.scheduler.BukkitRunnable;
  25. import org.bukkit.scheduler.BukkitTask;
  26.  
  27. import com.junkstyle.forge.CraftPlus;
  28.  
  29.  
  30. public class Main extends JavaPlugin implements Listener {
  31. @Override
  32. public void onEnable() {
  33. Bukkit.getPluginManager().registerEvents(this, this);
  34. getCommand("craftplus").setExecutor(new CraftPlus());
  35. }
  36. @EventHandler
  37. public void onCLick(InventoryClickEvent e) {
  38. int slot = e.getSlot();
  39. if (ChatColor.translateAlternateColorCodes('&', e.getClickedInventory().getTitle()).equals(ChatColor.GRAY + "CraftingPlus")) {
  40. if (slot == 20 || slot == 21 || slot >= 45 || slot == 24 || slot == 11 || slot == 12 || slot == 13 || slot == 22 || slot == 29 || slot == 30 || slot == 31) {
  41.  
  42. } else {
  43. e.setCancelled(true);
  44. }
  45. }
  46. }
  47.  
  48.  
  49.  
  50. BukkitTask task;
  51.  
  52. public void ApplyGui(Player player) {
  53. Inventory gui = Bukkit.createInventory(null, 45 , ChatColor.GRAY + "CraftingPlus");
  54. List<String> info = new ArrayList<>();
  55. info.add(ChatColor.LIGHT_PURPLE + "You can use this craft system to create new items!" );
  56. info.add(ChatColor.LIGHT_PURPLE + "Just put the specific items in the craft and you will get new item!");
  57. info.add(ChatColor.LIGHT_PURPLE + "To get more help write /crafthelp");
  58. info.add(ChatColor.GRAY + "© ChickenStyle");
  59.  
  60. ItemStack glass = new ItemStack(Material.STAINED_GLASS_PANE, 1, (short)7);
  61. ItemMeta meta = glass.getItemMeta();
  62. meta.removeItemFlags(ItemFlag.HIDE_ATTRIBUTES);
  63. meta.setDisplayName(" ");
  64. glass.setItemMeta(meta);
  65.  
  66. ItemStack paper = new ItemStack(Material.PAPER);
  67. ItemMeta papermeta = paper.getItemMeta();
  68. papermeta.setDisplayName(ChatColor.LIGHT_PURPLE + "Info");
  69. papermeta.setLore(info);
  70. papermeta.removeItemFlags(ItemFlag.HIDE_ATTRIBUTES);
  71. paper.setItemMeta(papermeta);
  72.  
  73.  
  74. gui.setItem(0, glass);
  75. gui.setItem(1, glass);
  76. gui.setItem(2, glass);
  77. gui.setItem(3, glass);
  78. gui.setItem(4, glass);
  79. gui.setItem(5, glass);
  80. gui.setItem(6, glass);
  81. gui.setItem(7, glass);
  82. gui.setItem(8, glass);
  83. gui.setItem(9, glass);
  84. gui.setItem(10, glass);
  85. gui.setItem(14, glass);
  86. gui.setItem(15, glass);
  87. gui.setItem(16, glass);
  88. gui.setItem(17, glass);
  89. gui.setItem(18, glass);
  90. gui.setItem(19, glass);
  91. gui.setItem(23, glass);
  92. gui.setItem(25, glass);
  93. gui.setItem(26, glass);
  94. gui.setItem(27, glass);
  95. gui.setItem(28, glass);
  96. gui.setItem(32, glass);
  97. gui.setItem(33, glass);
  98. gui.setItem(34, glass);
  99. gui.setItem(35, glass);
  100. gui.setItem(36, paper);
  101. gui.setItem(37, glass);
  102. gui.setItem(38, glass);
  103. gui.setItem(39, glass);
  104. gui.setItem(40, glass);
  105. gui.setItem(41, glass);
  106. gui.setItem(42, glass);
  107. gui.setItem(43, glass);
  108. gui.setItem(44, glass);
  109.  
  110. player.openInventory(gui);
  111. ItemStack diamond_sword = new ItemStack(Material.DIAMOND_SWORD);
  112.  
  113. //Craft System
  114. task = new BukkitRunnable() {
  115. // recipe slots 11,12,13,
  116. //20,21,22
  117. //29,30,31
  118. // get item slot 24
  119. @Override
  120. public void run() {
  121. //Diamond Sword Recipe
  122. if (gui.getItem(12).getType() == Material.DIAMOND && gui.getItem(21).getType() == Material.DIAMOND &&
  123. gui.getItem(30).getType() == Material.STICK ) {
  124. if (gui.getItem(12).getAmount() < 2 && gui.getItem(21).getAmount() < 2 &&
  125. gui.getItem(30).getAmount() < 2) {
  126. gui.setItem(12, null);
  127. gui.setItem(21, null);
  128. gui.setItem(30, null);
  129. gui.setItem(24, diamond_sword);
  130. player.getWorld().playSound(player.getLocation(), Sound.BLOCK_ANVIL_USE, 2f, 1f);
  131. } else {
  132. return;
  133. }
  134.  
  135.  
  136.  
  137. } else if (gui.getItem(12).getType() == null) {
  138. return;
  139. } else if (gui.getItem(21).getType() == null) {
  140. return;
  141. } else if (gui.getItem(30).getType() == null) {
  142. return;
  143. }
  144. }
  145.  
  146. }.runTaskTimerAsynchronously(this, 0, 1);
  147. }
  148. //close
  149. @EventHandler
  150. public void onClose(InventoryCloseEvent e) {
  151. if (ChatColor.translateAlternateColorCodes('&', e.getInventory().getTitle()).equals(ChatColor.GRAY + "CraftingPlus")) {
  152. Player player = (Player) e.getPlayer();
  153. if (e.getInventory().getItem(11) != null) {
  154. player.getInventory().addItem(e.getInventory().getItem(11));
  155. } else {
  156.  
  157. }
  158. if (e.getInventory().getItem(12) != null) {
  159. player.getInventory().addItem(e.getInventory().getItem(12));
  160. } else {
  161.  
  162. }
  163. if (e.getInventory().getItem(13) != null) {
  164. player.getInventory().addItem(e.getInventory().getItem(13));
  165. } else {
  166.  
  167. }
  168. if (e.getInventory().getItem(20) != null) {
  169. player.getInventory().addItem(e.getInventory().getItem(20));
  170. } else {
  171.  
  172. }
  173. if (e.getInventory().getItem(21) != null) {
  174. player.getInventory().addItem(e.getInventory().getItem(21));
  175. } else {
  176.  
  177. }
  178. if (e.getInventory().getItem(22) != null) {
  179. player.getInventory().addItem(e.getInventory().getItem(22));
  180. } else {
  181.  
  182. }
  183. if (e.getInventory().getItem(29) != null) {
  184. player.getInventory().addItem(e.getInventory().getItem(29));
  185. } else {
  186.  
  187. }
  188. if (e.getInventory().getItem(30) != null) {
  189. player.getInventory().addItem(e.getInventory().getItem(30));
  190. } else {
  191.  
  192. }
  193. if (e.getInventory().getItem(31) != null) {
  194. player.getInventory().addItem(e.getInventory().getItem(31));
  195. } else {
  196.  
  197. }
  198. if (e.getInventory().getItem(24) != null) {
  199. player.getInventory().addItem(e.getInventory().getItem(24));
  200. } else {
  201.  
  202. }
  203.  
  204. }
  205. }
  206.  
  207.  
  208.  
  209.  
  210.  
  211.  
  212.  
  213. @EventHandler
  214. public void onClick(PlayerInteractEvent e) {
  215. Player player = (Player) e.getPlayer();
  216. Block block = e.getClickedBlock();
  217. if(e.getAction() == Action.RIGHT_CLICK_BLOCK) {
  218. if (e.getHand().equals(EquipmentSlot.OFF_HAND)) {
  219. return;
  220. } else {
  221. if (e.getClickedBlock().getType() == Material.ENCHANTMENT_TABLE) {
  222. Block block2 = block.getRelative(1, -1, 0);
  223. Block block3 = block.getRelative(-1, -1, 0);
  224. Block block4 = block.getRelative(0, -1, 1);
  225. Block block5 = block.getRelative(0, -1, -1);
  226. Block block6 = block.getRelative(1, -1, 1);
  227. Block block7 = block.getRelative(-1, -1, 1);
  228. Block block8 = block.getRelative(1, -1, -1);
  229. Block block9 = block.getRelative(-1, -1, -1);
  230. Block block10 = block.getRelative(0, -1, 0);
  231. ItemStack shu = new ItemStack(Material.BLUE_SHULKER_BOX);
  232. ItemMeta meta = shu.getItemMeta();
  233. meta.setDisplayName(ChatColor.BLUE + "2019");
  234. shu.setItemMeta(meta);
  235. if (block2.getType() == Material.QUARTZ_STAIRS &&
  236. block3.getType() == Material.QUARTZ_STAIRS &&
  237. block4.getType() == Material.QUARTZ_STAIRS &&
  238. block5.getType() == Material.QUARTZ_STAIRS &&
  239. block6.getType() == Material.QUARTZ_STAIRS &&
  240. block7.getType() == Material.QUARTZ_STAIRS &&
  241. block8.getType() == Material.QUARTZ_STAIRS &&
  242. block9.getType() == Material.QUARTZ_STAIRS &&
  243. block10.getType() == Material.BEDROCK) {
  244. e.setCancelled(true);
  245. ApplyGui(player);
  246. }
  247.  
  248. }
  249. }
  250. }
  251. }
  252. }
Advertisement
Add Comment
Please, Sign In to add comment