package DownloadItem.magnum;
import com.massivecraft.factions.event.FactionCreateEvent;
import org.bukkit.Material;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.inventory.Inventory;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.PlayerInventory;
public class DownItemListener implements Listener{
@EventHandler
public void Fcreate(FactionCreateEvent event){
Player player = event.getFPlayer().getPlayer();
PlayerInventory playerinv = player.getInventory();
int size = playerinv.getSize();
if (haveItem(playerinv, new ItemStack(Material.DIAMOND_BLOCK , 32 ))) {
}
else {
event.setCancelled(true);
player.sendMessage("&7 Potrzebujesz 32 bloki diax");
}
if (haveItem(playerinv, new ItemStack(Material.IRON_BLOCK , 32 ))) {
}
else {
event.setCancelled(true);
player.sendMessage("&7 Potrzebujesz 32 bloki żelaza");
}
if (haveItem(playerinv, new ItemStack(Material.GOLD_BLOCK , 32 ))) {
}
else {
event.setCancelled(true);
player.sendMessage("&7 Potrzebujesz 32 bloki złota");
}
if (haveItem(playerinv, new ItemStack(Material.OBSIDIAN , 64 ))) {
}
else {
event.setCancelled(true);
player.sendMessage("&7 Potrzebujesz 64 obsydianu");
}
if (haveItem(playerinv, new ItemStack(Material.TNT , 64 ))) {
}
else {
event.setCancelled(true);
player.sendMessage("&7 Potrzebujesz 64 tnt");
}
if (haveItem(playerinv, new ItemStack(Material.ENDER_PEARL , 16 ))) {
}
else {
event.setCancelled(true);
player.sendMessage("&7 Potrzebujesz 16 ender pereł");
}
if (haveItem(playerinv, new ItemStack(Material.HAY_BLOCK , 64 ))) {
}
else {
event.setCancelled(true);
player.sendMessage("&7 Potrzebujesz 64 snopy siana");
}
if (haveItem(playerinv, new ItemStack(Material.STONE , 64 ))) {
}
else {
event.setCancelled(true);
player.sendMessage("&7 Potrzebujesz 64 stone");
}
if (haveItem(playerinv, new ItemStack(Material.ENDER_CHEST , 1 ))) {
}
else {
event.setCancelled(true);
player.sendMessage("&7 Potrzebujesz ender chest");
}
if (haveItem(playerinv, new ItemStack(Material.NETHER_WARTS , 32 ))) {
}
else {
event.setCancelled(true);
player.sendMessage("&7 Potrzebujesz 32 brodawki");
}
if (haveItem(playerinv, new ItemStack(Material.BLAZE_ROD , 16 ))) {
}
else {
event.setCancelled(true);
player.sendMessage("&7 Potrzebujesz 16 różdżek");
}
}else{
removeItem(player, new ItemStack(Material.DIAMOND_BLOCK, 32));
removeItem(player, new ItemStack(Material.IRON_BLOCK, 32));
removeItem(player, new ItemStack(Material.GOLD_BLOCK, 32));
removeItem(player, new ItemStack(Material.OBSIDIAN, 64));
removeItem(player, new ItemStack(Material.TNT, 64));
removeItem(player, new ItemStack(Material.ENDER_PEARL, 16));
removeItem(player, new ItemStack(Material.HAY_BLOCK, 64));
removeItem(player, new ItemStack(Material.STONE, 64));
removeItem(player, new ItemStack(Material.ENDER_CHEST, 1));
removeItem(player, new ItemStack(Material.NETHER_WARTS, 32));
removeItem(player, new ItemStack(Material.BLAZE_ROD, 16));
}
public int haveItem(PlayerInventory pi, ItemStack is){
int a = 0;
for(ItemStack it : pi.getContents()){
try{
if(it.isSimilar(is)){
a = a+it.getAmount();
}
continue;
}
}
return a;
}
public void removeItem(Player p, ItemStack is, int amount){
Inventory pi = p.getInventory();
ItemStack[] contents = pi.getContents();
int a=0;
for (int i = 0; i < contents.length; i++) {
try{
ItemStack it = contents[i];
int total = amount - a;
if(it.isSimilar(is)){
if (it.getAmount() < total) {
a += it.getAmount();
pi.setItem(i, new ItemStack(Material.AIR));
}
if (it.getAmount() == total) {
pi.setItem(i, new ItemStack(Material.AIR));
return;
}
if (it.getAmount() > total) {
pi.getItem(i).setAmount(it.getAmount() - total);
return;
}
}
continue;
}
}
}
}