Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.mjdk99.main;
- import java.util.ArrayList;
- import org.bukkit.ChatColor;
- import org.bukkit.Material;
- import org.bukkit.command.CommandSender;
- 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.player.AsyncPlayerChatEvent;
- import org.bukkit.event.player.PlayerInteractEvent;
- import org.bukkit.inventory.ItemStack;
- import com.mjdk99.commands.commandapi.Command;
- import com.mjdk99.commands.commandapi.CommandArgs;
- public class BlackSmith implements Listener
- {
- public static ArrayList<Player> blackSmithPlayers = new ArrayList<Player>();
- @Command(name="Blacksmith", aliases={"bs"}, description="Blacksmith")
- public void blackSmith(CommandArgs args)
- {
- CommandSender sender = args.getSender();
- Player player = (Player)sender;
- if ((sender instanceof Player))
- {
- if (player.getItemInHand().getType() == Material.AIR || player.getItemInHand().getType() == null)
- {
- player.sendMessage(msg("&cYou must be holding an item!"));
- return;
- }
- if (isSpecialItem(player.getItemInHand()))
- {
- player.sendMessage(msg("&cThis item cannot be repaired!"));
- return;
- }
- if (player.getItemInHand().getDurability() == (short)0)
- {
- player.sendMessage(msg("&cThis item is already repaired"));
- blackSmithPlayers.remove(player);
- return;
- }
- if (isItem(player.getItemInHand()))
- {
- blackSmithPlayers.add(player);
- player.sendMessage(" ");
- player.sendMessage(msg("&7Type &9Confirm &7to repair item for &9$1,000,000"));
- player.sendMessage(msg("&7Left click to &cCancel"));
- player.sendMessage(" ");
- }
- else
- {
- player.sendMessage(msg("&cHeld item is not repairable!"));
- }
- }
- }
- @EventHandler
- public void onChatEvent(AsyncPlayerChatEvent event)
- {
- Player player = event.getPlayer();
- if (blackSmithPlayers.contains(player))
- {
- event.setCancelled(true);
- if (event.getMessage().equalsIgnoreCase("confirm"))
- {
- //Check if player has $1,000,000
- //If not, send
- //player.sendmessage(msg("&cinsufficent funds"));
- player.getItemInHand().setDurability((short)0);
- player.sendMessage(msg("&aSuccessfully repaired item!"));
- blackSmithPlayers.remove(player);
- }
- }
- }
- @EventHandler
- public void interactEvent(PlayerInteractEvent event)
- {
- Player player = event.getPlayer();
- if (event.getAction() == Action.LEFT_CLICK_BLOCK || event.getAction() == Action.LEFT_CLICK_AIR)
- if (blackSmithPlayers.contains(player))
- {
- blackSmithPlayers.remove(player);
- player.sendMessage(msg("&cRepair cancelled!"));
- }
- }
- public boolean isSpecialItem(ItemStack is)
- {
- if (is.getItemMeta().getLore() == null)
- return false;
- for(String s:is.getItemMeta().getLore())
- {
- if (s.contains("Condense") || s.contains("Autosell") || s.contains("Smelting") || s.contains("Shatter"))
- return true;
- }
- return false;
- }
- public boolean isItem(ItemStack is)
- {
- String name = ChatColor.stripColor(is.getType().toString());
- if (name.contains("_SWORD") || name.contains("_PICKAXE") || name.contains("_AXE") || name.contains("_SHOVEL") ||
- name.contains("_HELMET") || name.contains("_CHESTPLATE") || name.contains("_LEGGINGS") || name.contains("_BOOTS"))
- {
- return true;
- }
- return false;
- }
- private String msg(String s)
- {
- return ChatColor.translateAlternateColorCodes('&', s);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement