danik159

Untitled

Jul 24th, 2019
164
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.56 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. ItemStack diamond_chestplate = new ItemStack(Material.DIAMOND_CHESTPLATE);
  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. try {
  123. if (gui.getItem(24) == null) {
  124. if (gui.getItem(12).getType() == Material.DIAMOND && gui.getItem(21).getType() == Material.DIAMOND &&
  125. gui.getItem(30).getType() == Material.STICK) {
  126. if (gui.getItem(12).getAmount() < 2 && gui.getItem(21).getAmount() < 2 &&
  127. gui.getItem(30).getAmount() < 2) {
  128. gui.setItem(12, null);
  129. gui.setItem(21, null);
  130. gui.setItem(30, null);
  131. gui.setItem(24, diamond_sword);
  132. player.getWorld().playSound(player.getLocation(), Sound.BLOCK_ANVIL_USE, 2f, 1f);
  133. } else {
  134. return;
  135. }
  136.  
  137.  
  138.  
  139. }
  140. }
  141. } catch (NullPointerException e) {
  142. return;
  143. }
  144.  
  145. }
  146.  
  147. }.runTaskTimerAsynchronously(this, 0, 1);
  148.  
  149.  
  150.  
  151. task = new BukkitRunnable() {
  152.  
  153. @Override
  154. public void run() {
  155. try {
  156. if (gui.getItem(24) == null) {
  157. if (gui.getItem(11).getType() == Material.DIAMOND && gui.getItem(20).getType() == Material.DIAMOND &&
  158. gui.getItem(29).getType() == Material.DIAMOND && gui.getItem(21).getType() == Material.DIAMOND &&
  159. gui.getItem(30).getType() == Material.DIAMOND && gui.getItem(31).getType() == Material.DIAMOND &&
  160. gui.getItem(13).getType() == Material.DIAMOND && gui.getItem(22).getType() == Material.DIAMOND) {
  161. if (gui.getItem(11).getAmount() < 2 && gui.getItem(21).getAmount() < 2 &&
  162. gui.getItem(20).getAmount() < 2 && gui.getItem(31).getAmount() < 2 &&
  163. gui.getItem(29).getAmount() < 2 && gui.getItem(22).getAmount() < 2 &&
  164. gui.getItem(30).getAmount() < 2 && gui.getItem(13).getAmount() < 2 ) {
  165. gui.setItem(11, null);
  166. gui.setItem(20, null);
  167. gui.setItem(29, null);
  168. gui.setItem(30, null);
  169. gui.setItem(21, null);
  170. gui.setItem(31, null);
  171. gui.setItem(22, null);
  172. gui.setItem(13, null);
  173. gui.setItem(24, diamond_chestplate);
  174. player.getWorld().playSound(player.getLocation(), Sound.BLOCK_ANVIL_USE, 2f, 1f);
  175.  
  176.  
  177.  
  178. }else {
  179. return;
  180. }
  181.  
  182. }
  183. }
  184. } catch (NullPointerException e) {
  185. return;
  186. }
  187.  
  188. }
  189. }.runTaskTimerAsynchronously(this, 0, 1);
  190. }
  191. //close
  192. @EventHandler
  193. public void onClose(InventoryCloseEvent e) {
  194. if (ChatColor.translateAlternateColorCodes('&', e.getInventory().getTitle()).equals(ChatColor.GRAY + "CraftingPlus")) {
  195. Player player = (Player) e.getPlayer();
  196. if (e.getInventory().getItem(11) != null) {
  197. player.getInventory().addItem(e.getInventory().getItem(11));
  198. } else {
  199.  
  200. }
  201. if (e.getInventory().getItem(12) != null) {
  202. player.getInventory().addItem(e.getInventory().getItem(12));
  203. } else {
  204.  
  205. }
  206. if (e.getInventory().getItem(13) != null) {
  207. player.getInventory().addItem(e.getInventory().getItem(13));
  208. } else {
  209.  
  210. }
  211. if (e.getInventory().getItem(20) != null) {
  212. player.getInventory().addItem(e.getInventory().getItem(20));
  213. } else {
  214.  
  215. }
  216. if (e.getInventory().getItem(21) != null) {
  217. player.getInventory().addItem(e.getInventory().getItem(21));
  218. } else {
  219.  
  220. }
  221. if (e.getInventory().getItem(22) != null) {
  222. player.getInventory().addItem(e.getInventory().getItem(22));
  223. } else {
  224.  
  225. }
  226. if (e.getInventory().getItem(29) != null) {
  227. player.getInventory().addItem(e.getInventory().getItem(29));
  228. } else {
  229.  
  230. }
  231. if (e.getInventory().getItem(30) != null) {
  232. player.getInventory().addItem(e.getInventory().getItem(30));
  233. } else {
  234.  
  235. }
  236. if (e.getInventory().getItem(31) != null) {
  237. player.getInventory().addItem(e.getInventory().getItem(31));
  238. } else {
  239.  
  240. }
  241. if (e.getInventory().getItem(24) != null) {
  242. player.getInventory().addItem(e.getInventory().getItem(24));
  243. } else {
  244.  
  245. }
  246.  
  247. }
  248. }
  249.  
  250.  
  251.  
  252.  
  253.  
  254.  
  255.  
  256. @EventHandler
  257. public void onClick(PlayerInteractEvent e) {
  258. Player player = (Player) e.getPlayer();
  259. Block block = e.getClickedBlock();
  260. if(e.getAction() == Action.RIGHT_CLICK_BLOCK) {
  261. if (e.getHand().equals(EquipmentSlot.OFF_HAND)) {
  262. return;
  263. } else {
  264. if (e.getClickedBlock().getType() == Material.ENCHANTMENT_TABLE) {
  265. Block block2 = block.getRelative(1, -1, 0);
  266. Block block3 = block.getRelative(-1, -1, 0);
  267. Block block4 = block.getRelative(0, -1, 1);
  268. Block block5 = block.getRelative(0, -1, -1);
  269. Block block6 = block.getRelative(1, -1, 1);
  270. Block block7 = block.getRelative(-1, -1, 1);
  271. Block block8 = block.getRelative(1, -1, -1);
  272. Block block9 = block.getRelative(-1, -1, -1);
  273. Block block10 = block.getRelative(0, -1, 0);
  274. ItemStack shu = new ItemStack(Material.BLUE_SHULKER_BOX);
  275. ItemMeta meta = shu.getItemMeta();
  276. meta.setDisplayName(ChatColor.BLUE + "2019");
  277. shu.setItemMeta(meta);
  278. if (block2.getType() == Material.QUARTZ_STAIRS &&
  279. block3.getType() == Material.QUARTZ_STAIRS &&
  280. block4.getType() == Material.QUARTZ_STAIRS &&
  281. block5.getType() == Material.QUARTZ_STAIRS &&
  282. block6.getType() == Material.QUARTZ_STAIRS &&
  283. block7.getType() == Material.QUARTZ_STAIRS &&
  284. block8.getType() == Material.QUARTZ_STAIRS &&
  285. block9.getType() == Material.QUARTZ_STAIRS &&
  286. block10.getType() == Material.BEDROCK) {
  287. e.setCancelled(true);
  288. ApplyGui(player);
  289. }
  290.  
  291. }
  292. }
  293. }
  294. }
  295. }
Advertisement
Add Comment
Please, Sign In to add comment