Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.junkstyle.forge;
- import java.util.ArrayList;
- import java.util.HashMap;
- import java.util.List;
- import org.bukkit.Bukkit;
- import org.bukkit.ChatColor;
- import org.bukkit.Material;
- import org.bukkit.Sound;
- import org.bukkit.block.Block;
- import org.bukkit.entity.Player;
- import org.bukkit.event.EventHandler;
- import org.bukkit.event.Listener;
- import org.bukkit.event.block.Action;
- import org.bukkit.event.inventory.InventoryClickEvent;
- import org.bukkit.event.player.PlayerInteractEvent;
- import org.bukkit.inventory.EquipmentSlot;
- import org.bukkit.inventory.Inventory;
- import org.bukkit.inventory.ItemFlag;
- import org.bukkit.inventory.ItemStack;
- import org.bukkit.inventory.meta.ItemMeta;
- import org.bukkit.plugin.java.JavaPlugin;
- import org.bukkit.scheduler.BukkitRunnable;
- import org.bukkit.scheduler.BukkitTask;
- public class Main extends JavaPlugin implements Listener {
- @Override
- public void onEnable() {
- Bukkit.getPluginManager().registerEvents(this, this);
- }
- @EventHandler
- public void onCLick(InventoryClickEvent e) {
- // List<String> playeritem = new ArrayList<>();
- List<String> craftitem = new ArrayList<>();
- craftitem.add("Diamond");
- // Player player = (Player) e.getWhoClicked();
- int slot = e.getSlot();
- //ItemStack itemin = player.getInventory().getItem(20);
- // ItemStack diamond = new ItemStack(Material.DIAMOND);
- //ItemStack pasted = e.getCurrentItem();
- if (ChatColor.translateAlternateColorCodes('&', e.getClickedInventory().getTitle()).equals(ChatColor.GRAY + "ForgePlus")) {
- if (slot == 20 || slot == 21 || slot >= 45 || slot == 23) {
- } else {
- e.setCancelled(true);
- }
- }
- }
- BukkitTask task;
- public void ApplyGui(Player player) {
- Inventory gui = Bukkit.createInventory(null, 45 , ChatColor.GRAY + "ForgePlus");
- List<String> info = new ArrayList<>();
- info.add(ChatColor.LIGHT_PURPLE + "You can use this forge to create new items!" );
- info.add(ChatColor.LIGHT_PURPLE + "Just put the specific items in the craft and you will get new item!");
- info.add(ChatColor.LIGHT_PURPLE + "To get more help write /forgehelp");
- ItemStack glass = new ItemStack(Material.STAINED_GLASS_PANE, 1, (short)7);
- ItemMeta meta = glass.getItemMeta();
- meta.removeItemFlags(ItemFlag.HIDE_ATTRIBUTES);
- meta.setDisplayName(" ");
- glass.setItemMeta(meta);
- ItemStack paper = new ItemStack(Material.PAPER);
- ItemMeta papermeta = paper.getItemMeta();
- papermeta.setDisplayName(ChatColor.LIGHT_PURPLE + "Info");
- papermeta.setLore(info);
- papermeta.removeItemFlags(ItemFlag.HIDE_ATTRIBUTES);
- paper.setItemMeta(papermeta);
- gui.setItem(0, glass);
- gui.setItem(1, glass);
- gui.setItem(2, glass);
- gui.setItem(3, glass);
- gui.setItem(4, glass);
- gui.setItem(5, glass);
- gui.setItem(6, glass);
- gui.setItem(7, glass);
- gui.setItem(8, glass);
- gui.setItem(9, glass);
- gui.setItem(10, glass);
- gui.setItem(11, glass);
- gui.setItem(12, glass);
- gui.setItem(13, glass);
- gui.setItem(14, glass);
- gui.setItem(15, glass);
- gui.setItem(16, glass);
- gui.setItem(17, glass);
- gui.setItem(18, glass);
- gui.setItem(19, glass);
- gui.setItem(22, glass);
- gui.setItem(24, glass);
- gui.setItem(25, glass);
- gui.setItem(26, glass);
- gui.setItem(27, glass);
- gui.setItem(28, glass);
- gui.setItem(29, glass);
- gui.setItem(30, glass);
- gui.setItem(31, glass);
- gui.setItem(32, glass);
- gui.setItem(33, glass);
- gui.setItem(34, glass);
- gui.setItem(35, glass);
- gui.setItem(36, paper);
- gui.setItem(37, glass);
- gui.setItem(38, glass);
- gui.setItem(39, glass);
- gui.setItem(40, glass);
- gui.setItem(41, glass);
- gui.setItem(42, glass);
- gui.setItem(43, glass);
- gui.setItem(44, glass);
- player.openInventory(gui);
- ItemStack diamond_sword = new ItemStack(Material.DIAMOND_SWORD);
- HashMap<String, ItemStack> storaged = new HashMap<String, ItemStack>();
- HashMap<String, ItemStack> storages = new HashMap<String, ItemStack>();
- //Craft System
- task = new BukkitRunnable() {
- @Override
- public void run() {
- player.sendMessage("1");
- if (gui.getViewers().isEmpty() == true) {
- cancel();
- return;
- } else {
- if (gui.getItem(20) == null) {
- return;
- } else if (gui.getItem(20).getType() == Material.DIAMOND) {
- storaged.put(player.getName(), gui.getItem(20));
- if (gui.getViewers().isEmpty() == true) {
- player.getInventory().addItem(storaged.get(player.getName()));
- storaged.clear();
- cancel();
- return;
- } else {
- if (gui.getItem(21) == null) {
- return;
- } else if (gui.getItem(21).getType() == Material.STICK) {
- storages.put(player.getName(), gui.getItem(21));
- if (gui.getViewers().isEmpty() == true) {
- player.getInventory().addItem(storaged.get(player.getName()));
- player.getInventory().addItem(storages.get(player.getName()));
- storaged.clear();
- storages.clear();
- cancel();
- return;
- } else {
- gui.setItem(20, null);
- gui.setItem(21, null);
- gui.setItem(23, diamond_sword);
- player.getWorld().playSound(player.getLocation(), Sound.BLOCK_ANVIL_USE, 2f, 1f);
- cancel();
- return;
- }
- }
- }
- }
- }
- }
- }.runTaskTimerAsynchronously(this, 0, 1);
- }
- @EventHandler
- public void onClick(PlayerInteractEvent e) {
- Player player = (Player) e.getPlayer();
- Block block = e.getClickedBlock();
- if(e.getAction() == Action.RIGHT_CLICK_BLOCK) {
- if (e.getHand().equals(EquipmentSlot.OFF_HAND)) {
- return;
- } else {
- if (e.getClickedBlock().getType() == Material.GOLD_BLOCK) {
- Block block2 = block.getRelative(1, 0, 0);
- Block block3 = block.getRelative(-1, 0, 0);
- Block block4 = block.getRelative(0, 0, 1);
- Block block5 = block.getRelative(0, 0, -1);
- if (block2.getType() == Material.QUARTZ_STAIRS &&
- block3.getType() == Material.QUARTZ_STAIRS &&
- block4.getType() == Material.QUARTZ_STAIRS &&
- block5.getType() == Material.QUARTZ_STAIRS) {
- player.sendMessage("hello");
- ApplyGui(player);
- }
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment