Java Code Examples for org.bukkit.Material

The following are top voted examples for showing how to use org.bukkit.Material. These examples are extracted from open source projects. You can vote up the examples you like and your votes will be used in our system to generate more good examples.
Example 1
Project: Kineticraft   File: Pinata.java   Source Code and License 7 votes vote down vote up
private void spawnZombie() {
    Location center = new Location(Parties.getPartyWorld(), -74.5, 76, 30);
    Zombie z = center.getWorld().spawn(Utils.scatter(center, 4, 0, 4), Zombie.class);
    z.setCustomNameVisible(true);
    z.setCustomName(ChatColor.RED + "Piñata");

    z.getEquipment().setHelmet(ItemManager.createSkull("eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZn"
                    + "QubmV0L3RleHR1cmUvM2IyNTI2NmQ0MGNlY2Q5M2QwNTMxNTZlNGE0YTc4NDE0MGQwMzQyNTVjNzIxY2MzNzVkMWMzNjQ4MzQyYjZmZCJ9fX0",
            "Pinata Skull", "He doesn't want to party anymore."));
    z.getEquipment().setChestplate(new ItemStack(Material.LEATHER_CHESTPLATE));
    z.getEquipment().setLeggings(new ItemStack(Material.LEATHER_LEGGINGS));
    z.getEquipment().setBoots(new ItemStack(Material.LEATHER_BOOTS));
    z.getEquipment().setItemInMainHand(ItemManager.createItem(Material.STICK, ChatColor.RED + "Pinata Bat", ChatColor.DARK_PURPLE + "Stop hitting me!"));
    z.getAttribute(Attribute.GENERIC_MAX_HEALTH).setBaseValue(40);
    z.getAttribute(Attribute.GENERIC_MOVEMENT_SPEED).setBaseValue(.4F);
    z.getAttribute(Attribute.GENERIC_ATTACK_DAMAGE).setBaseValue(6);
    z.getAttribute(Attribute.GENERIC_KNOCKBACK_RESISTANCE).setBaseValue(1);
    z.setSilent(true);
    z.setGlowing(true);
    getScheduler().runTaskLater(z::remove, 1200L); // Remove zombie in 1 minute.
}
 
Example 2
Project: UltraCore   File: Events.java   Source Code and License 6 votes vote down vote up
@EventHandler
public void onInventoryClick1(InventoryClickEvent event) {
	Player player = (Player) event.getWhoClicked();
	ItemStack is = event.getCurrentItem();
	if ((event.getCurrentItem() != null) && (event.getCurrentItem().getType() != Material.AIR)) {
		if (event.getInventory().getName().equals(ChatColor.DARK_GRAY + "Teleport Menu - Page 1")) {
			event.setCancelled(true);
               for (int i = 0; i < Bukkit.getOnlinePlayers().size(); i++) {   
               Player targetPlayer = (Player) Bukkit.getOnlinePlayers().toArray()[i];
               Location location = player.getLocation();
               if ((event.getCurrentItem().getType() == Material.SKULL_ITEM) && (is.hasItemMeta()) && (is.getItemMeta().getDisplayName().equals(ChatColor.YELLOW + "Teleport to " + ChatColor.GREEN + targetPlayer.getName()))) {
                   player.closeInventory();
                   player.teleport(targetPlayer);
           		player.sendMessage(ChatColor.YELLOW + "You've teleported to " + ChatColor.GREEN + targetPlayer.getDisplayName() + ChatColor.YELLOW + "!");
           		player.playSound(location, Sound.ENTITY_ENDERMEN_TELEPORT, 100, 1);
           		player.playEffect(location, Effect.ENDER_SIGNAL, 1);
           		targetPlayer.playEffect(location, Effect.ENDER_SIGNAL, 1);
               }
               }
           }
	}
}
 
Example 3
Project: Transport-Pipes   File: InventoryUtils.java   Source Code and License 6 votes vote down vote up
public static ItemStack createSkullItemStack(String uuid, String textureValue, String textureSignature) {

		WrappedGameProfile wrappedProfile = new WrappedGameProfile(UUID.fromString(uuid), null);
		wrappedProfile.getProperties().put("textures", new WrappedSignedProperty("textures", textureValue, textureSignature));

		ItemStack skull = new ItemStack(Material.SKULL_ITEM, 1, (short) SkullType.PLAYER.ordinal());
		SkullMeta sm = (SkullMeta) skull.getItemMeta();

		Field profileField = null;
		try {
			profileField = sm.getClass().getDeclaredField("profile");
			profileField.setAccessible(true);
			profileField.set(sm, wrappedProfile.getHandle());
		} catch (NoSuchFieldException | IllegalArgumentException | IllegalAccessException e1) {
			e1.printStackTrace();
		}

		skull.setItemMeta(sm);
		return skull;
	}
 
Example 4
Project: SurvivalAPI   File: DiamondFlowerModule.java   Source Code and License 6 votes vote down vote up
/**
 * Chance to drop a diamond when a player breaks a flower
 *
 * @param event Event
 */
@EventHandler
public void onItemSpawn(ItemSpawnEvent event)
{
    if (event.getEntityType() != EntityType.DROPPED_ITEM)
        return;

    if (event.getEntity().hasMetadata("playerDrop"))
        return;

    if (event.getEntity().getItemStack().getType() != Material.YELLOW_FLOWER
            && event.getEntity().getItemStack().getType() != Material.RED_ROSE
            && (event.getEntity().getItemStack().getType() != Material.DOUBLE_PLANT
                || (event.getEntity().getItemStack().getDurability() > 1 && event.getEntity().getItemStack().getDurability() < 4)))
        return;

    if (this.random.nextDouble() <= (double) this.moduleConfiguration.get("chance"))
        event.getEntity().getWorld().dropItemNaturally(event.getLocation(), Meta.addMeta(new ItemStack(Material.DIAMOND, (int) this.moduleConfiguration.get("diamonds"))));

    event.setCancelled(true);
}
 
Example 5
Project: SurvivalAPI   File: FastTreeModule.java   Source Code and License 6 votes vote down vote up
public boolean isNearWood(Block block, int range)
{
    if(range <= 0)
        return false;

    for(BlockFace face : this.faces)
    {
        Block block1 = block.getRelative(face);

        if(block1.getType() == Material.LOG || block1.getType() == Material.LOG_2)
            return true;
        else if((block1.getType() == Material.LEAVES || block1.getType() == Material.LEAVES_2) && this.isNearWood(block1, range-1))
            return true;
    }

    return false;
}
 
Example 6
Project: HCFCore   File: BardClass.java   Source Code and License 6 votes vote down vote up
@Override
public boolean isApplicableFor(Player player) {
    ItemStack helmet = player.getInventory().getHelmet();
    if (helmet == null || helmet.getType() != Material.GOLD_HELMET)
        return false;

    ItemStack chestplate = player.getInventory().getChestplate();
    if (chestplate == null || chestplate.getType() != Material.GOLD_CHESTPLATE)
        return false;

    ItemStack leggings = player.getInventory().getLeggings();
    if (leggings == null || leggings.getType() != Material.GOLD_LEGGINGS)
        return false;

    ItemStack boots = player.getInventory().getBoots();
    return !(boots == null || boots.getType() != Material.GOLD_BOOTS);
}
 
Example 7
Project: SurvivalPlus   File: StarBattleaxeWither.java   Source Code and License 6 votes vote down vote up
@EventHandler(priority = EventPriority.HIGHEST)
public void onAttack(EntityDamageByEntityEvent event)
{
	if(event.isCancelled()) return;
	if(event.getDamager() instanceof Player && event.getEntity() instanceof LivingEntity && event.getCause() == DamageCause.ENTITY_ATTACK)
	{
		Player player = (Player)event.getDamager();
		ItemStack mainItem = player.getInventory().getItemInMainHand();
		LivingEntity enemy = (LivingEntity)event.getEntity();

		Random rand = new Random();
		
		if(mainItem.getType() == Material.GOLD_AXE)
		{
			enemy.addPotionEffect(new PotionEffect(PotionEffectType.WITHER, 480, 2, false));
			enemy.addPotionEffect(new PotionEffect(PotionEffectType.BLINDNESS, 480, 0, false));
           	enemy.getLocation().getWorld().playSound(enemy.getLocation(), Sound.ENTITY_WITHER_SPAWN, 1.0F, rand.nextFloat() * 0.4F + 0.8F);
		}
	}
}
 
Example 8
Project: Debuggery   File: InputFormatterTest.java   Source Code and License 6 votes vote down vote up
@Test
public void testMaterialData() throws InputException {
    Class[] inputTypes = {MaterialData.class};
    String[] input = {"diamond_spade:24"};

    Object[] output = InputFormatter.getTypesFromInput(inputTypes, Arrays.asList(input), null);

    // First let's make sure we didn't lose anything, or get anything
    assertEquals(inputTypes.length, output.length);

    // Next let's make sure everything is the right type
    for (Object object : output) {
        assertTrue(object instanceof MaterialData);
    }

    // Finally, let's make sure the values are correct
    assertSame(((MaterialData) output[0]).getItemType(), Material.DIAMOND_SPADE);
}
 
Example 9
Project: EscapeLag   File: BonemealDupePatch.java   Source Code and License 6 votes vote down vote up
@EventHandler
public void TreeGrowChecker(StructureGrowEvent event) {
    if (ConfigPatch.safetyBonemeal) {
    	if(event.isFromBonemeal() == false) {
    		return;
    	}
    	List<BlockState> blocks = event.getBlocks();
    	int bs = blocks.size();
    	for(int i = 0;i<bs;i++){
    		Block block = blocks.get(i).getBlock();
    		if(block.getType() != Material.AIR && block.getType() != Material.SAPLING && block.getType() != event.getLocation().getBlock().getRelative(BlockFace.DOWN).getType()){
    			event.setCancelled(true);
                if (event.getPlayer() != null) {
                    AzureAPI.log(event.getPlayer(), "§c这棵树生长区域有方块阻挡,请不要尝试利用骨粉BUG!");
                    return;
                }
    		}
    	}
    }
}
 
Example 10
Project: Crescent   File: InventoryTweaksB.java   Source Code and License 6 votes vote down vote up
@Override
public void call(Event event) {
	if (event instanceof InventoryClickEvent) {
		final InventoryClickEvent ice = (InventoryClickEvent) event;

		if (ice.getCurrentItem().getType() == Material.BOWL) {

			final int slot = ice.getSlot();

			if (!slotsChosen.containsKey(slot)) {
				slotsChosen.put(slot, 1);
			} else {
				slotsChosen.put(slot, slotsChosen.get(slot) + 1);
			}

			if (getStackChance() >= 100.0) {
				callback(true);
			}
		}
	}
}
 
Example 11
Project: FactionsXL   File: SetBannerCommand.java   Source Code and License 6 votes vote down vote up
@Override
public void onExecute(String[] args, CommandSender sender) {
    Player player = (Player) sender;
    Faction faction = getSenderFactionOrFromArg(sender, args, 1);
    if (faction == null) {
        return;
    }

    if (!faction.isAdmin(player)) {
        ParsingUtil.sendMessage(sender, FMessage.ERROR_NO_PERMISSION.getMessage());
        return;
    }

    ItemStack item = player.getInventory().getItemInMainHand();
    if (item == null || item.getType() != Material.BANNER) {
        displayHelp(player);
        return;
    }

    faction.setBanner(item);
    faction.sendMessage(FMessage.CMD_SET_BANNER_SUCCESS.getMessage(), player, faction);
}
 
Example 12
Project: AsgardAscension   File: RuneManager.java   Source Code and License 6 votes vote down vote up
private void handleFreeze(Player player, Rune rune) {
	Player target = Utility.getTargetPlayer(player, 10);
	if(target == null || !Utility.canAttack(player, target)) {
		return;
	}
	
	LineEffect eff = new LineEffect(plugin.getEffectManager());
	eff.setEntity(player);
	eff.setTargetEntity(target);
	eff.particle = ParticleEffect.SNOW_SHOVEL;
	eff.start();
	target.addPotionEffect(new PotionEffect(PotionEffectType.SLOW, 60, 6));
	target.playSound(target.getLocation(), Sound.ENTITY_SNOWMAN_DEATH, 1F, 1F);
	
	player.getInventory().setItemInMainHand(new ItemStack(Material.AIR));
	player.sendMessage(Lang.HEADERS_TOKENS.toString() + Lang.TOKENS_RUNE_APPLY.toString()
		.replaceAll("%s", rune.getName()));
	target.sendMessage(Lang.HEADERS_TOKENS.toString() + Lang.TOKENS_FROZEN.toString()
			.replaceAll("%s", player.getName()));
	finish(player, false);
}
 
Example 13
Project: Kineticraft   File: LazerPuzzle.java   Source Code and License 6 votes vote down vote up
@SuppressWarnings("deprecation")
@Override
public void onBlockClick(PlayerInteractEvent evt, Block bk, boolean rightClick) {
    if (!canTrigger() || MetadataManager.updateCooldownSilently(evt.getPlayer(), "lazerBk", 2))
        return;

    int y = getGateLocation().getBlockY();
    Block above = bk.getRelative(BlockFace.UP);
    if (isPuzzle(bk, y, Material.WOOL) && above.getType() == Material.AIR && rightClick) {
        above.setType(Material.DIODE_BLOCK_OFF);
        above.setData((byte) 0);
    }

    // Remove the next
    if (isPuzzle(bk, y + 1, Material.DIODE_BLOCK_OFF)) {
        if (!rightClick) {
            bk.setType(Material.AIR);
            return;
        }

        bk.setData((byte) (bk.getData() >= 3 ? 0 : bk.getData() + 1));
        evt.setCancelled(true);
    }
}
 
Example 14
Project: OpenUHC   File: Overcook.java   Source Code and License 6 votes vote down vote up
/**
 * Handles the action of smelting all items at once, exploding the furnace, and dropping the smelted items on the
 * ground.
 *
 * @param event The event
 */
@EventHandler(ignoreCancelled = true)
public void onFurnaceSmelt(FurnaceSmeltEvent event) {
  ItemStack resultItem = event.getResult();
  final Material result = resultItem.getType();
  //TODO: Verify that the "smelting amount" contains any extra ingredients
  final int amount = ((Furnace) event.getBlock().getState()).getInventory().getSmelting().getAmount();

  event.getSource().setType(Material.AIR);
  resultItem.setType(Material.AIR);

  Block block = event.getBlock();
  block.setType(Material.AIR);
  Location location = block.getLocation().add(0.5, 0.5, 0.5);
  World world = location.getWorld();
  world.createExplosion(location, 7);
  world.dropItem(location, new ItemStack(result, amount));
}
 
Example 15
Project: HCFCore   File: UnRepairableListener.java   Source Code and License 6 votes vote down vote up
@EventHandler
public void onRepair(final PrepareAnvilRepairEvent e) {
    if (e.getInventory().getContents() == null) {
        return;
    }
    for (final ItemStack itemStack : e.getInventory().getContents()) {
        if (!itemStack.hasItemMeta()) {
            return;
        }
        if (!itemStack.getItemMeta().hasLore()) {
            return;
        }
        if (itemStack.getItemMeta().getLore() == null) {
            return;
        }
        for (final String lore : itemStack.getItemMeta().getLore()) {
            final String fixedLore = ChatColor.stripColor(lore.toLowerCase());
            if (fixedLore.contains("no repair") || fixedLore.contains("unrepairable") || fixedLore.contains("norepair") || fixedLore.contains("nofix") || fixedLore.contains("no fix")) {
                e.setCancelled(true);
                e.setResult(new ItemStack(Material.AIR));
                e.getRepairer().closeInventory();
                ((Player)e.getRepairer()).sendMessage(ChatColor.RED + "This item cannot be repaired.");
            }
        }
    }
}
 
Example 16
Project: Uranium   File: CraftBlock.java   Source Code and License 6 votes vote down vote up
public static void dumpMaterials() {
    if (MinecraftServer.getServer().cauldronConfig.dumpMaterials.getValue())
    {
        FMLLog.info("Cauldron Dump Materials is ENABLED. Starting dump...");
        for (int i = 0; i < 32000; i++)
        {
            Material material = Material.getMaterial(i);
            if (material != null)
            {
                FMLLog.info("Found material " + material + " with ID " + i);
            }
        }
        FMLLog.info("Cauldron Dump Materials complete.");
        FMLLog.info("To disable these dumps, set cauldron.dump-materials to false in bukkit.yml.");
    }
}
 
Example 17
Project: ProjectAres   File: Uncarried.java   Source Code and License 6 votes vote down vote up
public Uncarried(Flag flag, Post post, @Nullable Location location) {
    super(flag, post);
    if(location == null) location = flag.getReturnPoint(post);
    this.location = new Location(location.getWorld(),
                                 location.getBlockX() + 0.5,
                                 location.getBlockY(),
                                 location.getBlockZ() + 0.5,
                                 location.getYaw(),
                                 location.getPitch());

    if(!flag.getMatch().getWorld().equals(this.location.getWorld())) {
        throw new IllegalStateException("Tried to place flag in the wrong world");
    }

    Block block = this.location.getBlock();
    if(block.getType() == Material.STANDING_BANNER) {
        // Banner may already be here at match start
        this.oldBlock = BlockStateUtils.cloneWithMaterial(block, Material.AIR);
    } else {
        this.oldBlock = block.getState();
    }
    this.oldBase = block.getRelative(BlockFace.DOWN).getState();
}
 
Example 18
Project: PA   File: AntiGravity.java   Source Code and License 6 votes vote down vote up
@Override
public void play(PAUser u) {
    if (isInCooldown(u, getName())) return;

    final ArmorStand as = (ArmorStand) spawnEntity(u.getLoc(), EntityType.ARMOR_STAND);
    as.setGravity(false);
    as.setSmall(true);
    as.setVisible(false);
    as.setHelmet(new ItemStack(Material.SEA_LANTERN));
    as.setPassenger(u.getPlayer());

    as.teleport(as.getLocation().add(0, 5, 0));

    bt = plugin.getServer().getScheduler().runTaskTimer(plugin, ()-> {
        as.teleport(as.getLocation().add(0, 0.2, 0));

        if (count <= 0) {
            remove(u, as);
            bt.cancel();
            return;
        }
        count--;
    }, 0, 20);
}
 
Example 19
Project: HCFCore   File: KitsCommand.java   Source Code and License 6 votes vote down vote up
private ItemStack titaniumKitGlass(Player player) {
	ItemStack stack = new ItemStack(Material.STAINED_GLASS_PANE, 1, (short) 0, (byte) 14);
	ItemMeta meta = stack.getItemMeta();
	addGlow(stack);
	meta.setDisplayName(ChatColor.translateAlternateColorCodes('&', "&4Titanium &7Kit"));
	List<String> lore = new ArrayList<String>();
	lore.add(ChatColor.translateAlternateColorCodes('&', "&7This is a kit contains:"));
	lore.add(ChatColor.translateAlternateColorCodes('&', "&fGod Diamond kit!"));
	lore.add("");
	lore.add(ChatColor.translateAlternateColorCodes('&', "&8&l* &cPurchase the Titanium Rank from store.hcriots.net"));
	lore.add("");
	lore.add(ChatColor.translateAlternateColorCodes('&', "&8&l* &7CoolDown: &c3 Days"));
	if(cooldowns.containsKey(player.getUniqueId())) {
		if(cooldowns.get(player.getUniqueId()).containsKey("TitaniumKit")) {
			lore.add(ChatColor.translateAlternateColorCodes('&', "&8&l* &7Available in: &c" + DurationFormatUtils.formatDurationWords(cooldowns.get(player.getUniqueId()).get("TitaniumKit"), true, true)));
		} else {
			lore.add(ChatColor.translateAlternateColorCodes('&', "&8&l* &7Available in: &aNow"));
		}
	} else {
		lore.add(ChatColor.translateAlternateColorCodes('&', "&8&l* &7Available in: &aNow"));
	}
	meta.setLore(lore);
	stack.setItemMeta(meta);
	return stack;
}
 
Example 20
Project: Hub   File: StepEffect.java   Source Code and License 6 votes vote down vote up
@Override
public void onRun()
{
    // Prevents an excess of particles
    if (last != null && last.getX() == getEntity().getLocation().getX() && last.getZ() == getEntity().getLocation().getZ())
        return;
    last = getEntity().getLocation();

    Block block = this.getEntity().getLocation().add(0, -0.4, 0).getBlock();
    Material type = block.getType();

    // If the step should be displayed or not
    if (type.isBlock() && type.isSolid() && !type.isTransparent()) {
        Location loc = getEntity().getLocation();
        loc.setY(block.getY());
        loc = loc.add(0, 1 + Math.random() / 100, 0);
        Vector dir = VectorUtils.rotateAroundAxisY(getEntity().getLocation().getDirection().setY(0).normalize(), p ? 90 : -90).multiply(0.25);
        display(ParticleEffect.FOOTSTEP, loc.add(dir.getX(), 0, dir.getZ()), 7, 0);

        p = !p;
    }
}
 
Example 21
Project: NavyCraft2-Lite   File: MoveCraft_PlayerListener.java   Source Code and License 5 votes vote down vote up
public void playerDisableUpdate(final Player player, final Craft craft) {
	plugin.getServer().getScheduler().scheduleSyncDelayedTask(plugin, () -> {
		if ((craft != null) && (player != null) && player.isOnline()) {
			craft.doRemove = true;
			if (player.getInventory().contains(Material.GOLD_SWORD)) {
				player.getInventory().remove(Material.GOLD_SWORD);
			}
			player.sendMessage("Vehicle disabled.");
		}
	});
}
 
Example 22
Project: QuarSK   File: SExprBannerBlockLayers.java   Source Code and License 5 votes vote down vote up
@Nullable
@Override
protected Pattern[] get(Event e) {
	Block b = block.getSingle(e);
	if (b == null) {
		return null;
	}
	if (b.getType() == Material.STANDING_BANNER || b.getType() == Material.WALL_BANNER) {
		return ((Banner) b.getState()).getPatterns().stream().toArray(Pattern[]::new);
	}
	return null;
}
 
Example 23
Project: AsgardAscension   File: MainInventory.java   Source Code and License 5 votes vote down vote up
public static void setupInventory(Player player){
	Inventory inv = Bukkit.createInventory(player, 9, ChatColor.BOLD + "Asgard Ascension");
	inv.setItem(0, ItemStackGenerator.createItem(Material.NETHER_STAR, 0, 0, 
			ChatColor.LIGHT_PURPLE + "" + ChatColor.BOLD + "Rank-ups and Challenges", null));
	inv.setItem(1, ItemStackGenerator.createItem(Material.DIAMOND, 0, 0,
			ChatColor.LIGHT_PURPLE + "" + ChatColor.BOLD + "Ragnorak", null));
	inv.setItem(2, ItemStackGenerator.createItem(Material.GOLDEN_CARROT, 0, 0,
			ChatColor.LIGHT_PURPLE + "" + ChatColor.BOLD + "Food of the Gods", null));
	inv.setItem(8, ItemStackGenerator.createItem(Material.REDSTONE_BLOCK, 0, 0,
			ChatColor.LIGHT_PURPLE + "" + ChatColor.BOLD + "Reload Configs", null));
	player.openInventory(inv);
}
 
Example 24
Project: AstralEdit   File: DisplayArmorstand.java   Source Code and License 5 votes vote down vote up
/**
 * Initializes the armorstand
 *
 * @param player   player
 * @param location location
 * @param id       id
 * @param data     data
 * @param watchers watchers
 */
public DisplayArmorstand(Player player, Location location, int id, byte data, Set<Player> watchers) {
    super();
    this.watchers = watchers;
    this.player = player;
    this.armorStand = new EntityArmorStand(((CraftWorld) player.getWorld()).getHandle());
    final NBTTagCompound compound = new NBTTagCompound();
    compound.setBoolean("invulnerable", true);
    compound.setBoolean("Invisible", true);
    compound.setBoolean("PersistenceRequired", true);
    compound.setBoolean("NoBasePlate", true);
    this.armorStand.a(compound);
    this.armorStand.setLocation(location.getX(), location.getY(), location.getZ(), 0, 0);
    this.storedId = id;
    this.storedData = data;

    ItemStackBuilder stackBuilder = new ItemStackBuilder(Material.getMaterial(id), 1, data);
    this.getCraftEntity().setHelmet(stackBuilder.build());
    this.getCraftEntity().setBodyPose(new EulerAngle(3.15, 0, 0));
    this.getCraftEntity().setLeftLegPose(new EulerAngle(3.15, 0, 0));
    this.getCraftEntity().setRightLegPose(new EulerAngle(3.15, 0, 0));

    if (((ArmorStand) this.armorStand.getBukkitEntity()).getHelmet().getType() == Material.AIR) {
        stackBuilder = new ItemStackBuilder(Material.SKULL_ITEM, 1, (short) 3);
        if (id == Material.WATER.getId() || id == Material.STATIONARY_WATER.getId()) {
            stackBuilder.setSkin(NMSRegistry.WATER_HEAD);
        } else if (id == Material.LAVA.getId() || id == Material.STATIONARY_LAVA.getId()) {
            stackBuilder.setSkin(NMSRegistry.LAVA_HEAD);
        } else {
            stackBuilder.setSkin(NMSRegistry.NOT_FOUND);
        }
        ((ArmorStand) this.armorStand.getBukkitEntity()).setHelmet(stackBuilder.build());
    }
}
 
Example 25
Project: Slimefun4-Chinese-Version   File: ItemEnergy.java   Source Code and License 5 votes vote down vote up
public static float addStoredEnergy(ItemStack item, float energy)
{
    if(item == null || item.getType() == null || item.getType().equals(Material.AIR))
        return 0.0F;
    if(!item.hasItemMeta() || !item.getItemMeta().hasLore())
        return 0.0F;
    float rest = 0.0F;
    float capacity = getMaxEnergy(item);
    if(capacity == 0.0F)
        return rest;
    float stored = getStoredEnergy(item);
    if(stored + energy > capacity)
    {
        rest = (stored + energy) - capacity;
        stored = capacity;
    } else
    if(stored + energy < 0.0F)
        stored = 0.0F;
    else
        stored += energy;
    List lore = item.getItemMeta().getLore();
    int index = -1;
    for(int i = 0; i < lore.size(); i++)
    {
        String line = (String)lore.get(i);
        if(!line.startsWith(ChatColor.translateAlternateColorCodes('&', "&c&o&8\u21E8 &e\u26A1 &7")) || !line.contains(" / ") || !line.endsWith(" J"))
            continue;
        index = i;
        break;
    }

    BigDecimal decimal = (new BigDecimal(stored)).setScale(2, 4);
    lore.set(index, (new StringBuilder(String.valueOf(ChatColor.translateAlternateColorCodes('&', "&c&o&8\u21E8 &e\u26A1 &7")))).append(decimal.floatValue()).append(" / ").append(capacity).append(" J").toString());
    ItemMeta im = item.getItemMeta();
    im.setLore(lore);
    item.setItemMeta(im);
    return rest;
}
 
Example 26
Project: MCLibrary   File: PageGUI.java   Source Code and License 5 votes vote down vote up
private void setContents(Inventory inv) {
    GUIData data = getData();
    ItemStack[] contents = data.contents();
    int start = currPage * spaceSize;
    int end = start + spaceSize;
    for (int i = start; i < end; i++) {
        if (contents.length <= i)
            break;
        ItemStack item = contents[i];
        if (item != null && item.getType() != Material.AIR) {
            inv.setItem(i - start + 9, item);
        }
    }
}
 
Example 27
Project: BedwarsXP   File: XPItemShop.java   Source Code and License 5 votes vote down vote up
private VillagerTrade getTradingItem(MerchantCategory category,
		ItemStack stack, Game game, Player player) {
	for (VillagerTrade trade : category.getOffers()) {
		if ((trade.getItem1().getType() != Material.AIR)
				|| (trade.getRewardItem().getType() != Material.AIR)) {
			ItemStack iStack = toItemStack(trade, player, game);
			if ((iStack.getType() == Material.ENDER_CHEST)
					&& (stack.getType() == Material.ENDER_CHEST))
				return trade;
			if (((iStack.getType() == Material.POTION) || ((Main
					.getInstance().getCurrentVersion().startsWith("v1_9")) && ((iStack
					.getType().equals(Material.valueOf("TIPPED_ARROW")))
					|| (iStack.getType().equals(Material
							.valueOf("LINGERING_POTION"))) || (iStack
						.getType()
					.equals(Material.valueOf("SPLASH_POTION"))))))
					&& (((PotionMeta) iStack.getItemMeta())
							.getCustomEffects().equals(((PotionMeta) stack
							.getItemMeta()).getCustomEffects()))) {
				return trade;
			}
			if (iStack.equals(stack)) {
				return trade;
			}
		}
	}
	return null;
}
 
Example 28
Project: DungeonGen   File: Passageway.java   Source Code and License 5 votes vote down vote up
/** Opens or closes the exit of this Passageway according to its DoorType.
 * @param open	true: opens, false: closes
 */
public void toggleExit(boolean open) {
	switch (exitType) {
	case APPEARING:
		if (open)
			genWall(exit.doorLoc,exit.height,exit.width,Material.AIR);
		else//close
			genWall(exit.doorLoc,exit.height,exit.width,exit.doorMaterial);
		break;
	case FALLING:
		Vector v_above = exit.doorLoc.add(0,exit.height,0); // the door location but height higher for stuff to fall down
		Vector v_below = exit.doorLoc.add(0,-exit.height,0); // the door location but height deeper
		if (open) {
			genWall(v_below,exit.height,exit.width,Material.AIR);
			genWall(v_above,exit.height,exit.width,Material.SMOOTH_BRICK);
		}else{//close
			genWall(v_above,exit.height,exit.width,exit.doorMaterial);
		}
		break;
	case PISTON:
		Vector v = toGlobal(exit.redstonePos);
		if (open)
			parent.world.getBlockAt(v.getBlockX(),v.getBlockY(),v.getBlockZ()).setType(Material.AIR);
		else //close
			parent.world.getBlockAt(v.getBlockX(),v.getBlockY(),v.getBlockZ()).setType(Material.REDSTONE_BLOCK);
		break;
	}
}
 
Example 29
Project: Warzone   File: WoolObjective.java   Source Code and License 5 votes vote down vote up
@EventHandler
public void onCollect(InventoryClickEvent event) {
    if (event.getCurrentItem() != null && event.getCurrentItem().getType() == Material.WOOL) {
        if (event.getCurrentItem().getData().getData() == color) {
            handleWoolPickup((Player) event.getWhoClicked());
        }
    }
}
 
Example 30
Project: Slimefun4-Chinese-Version   File: ItemEnergy.java   Source Code and License 5 votes vote down vote up
public static float getMaxEnergy(ItemStack item)
{
    if(item == null || item.getType() == null || item.getType().equals(Material.AIR))
        return 0.0F;
    if(!item.hasItemMeta() || !item.getItemMeta().hasLore())
        return 0.0F;
    for(Iterator iterator = item.getItemMeta().getLore().iterator(); iterator.hasNext();)
    {
        String line = (String)iterator.next();
        if(line.startsWith(ChatColor.translateAlternateColorCodes('&', "&c&o&8\u21E8 &e\u26A1 &7")) && line.contains(" / ") && line.endsWith(" J"))
            return Float.valueOf(line.split(" / ")[1].replace(" J", "")).floatValue();
    }

    return 0.0F;
}
 
Example 31
Project: ZentrelaCore   File: RParticles.java   Source Code and License 5 votes vote down vote up
public static boolean isAirlike(Material m) {
    switch (m.getId()) {
        case 0: //air
        case 78: //snow layer
        case 51: //fire
        case 50: //torch
        case 59: //wheat
        case 39: //mushroom
        case 40: //mushroom
        case 55: //redstone wire
        case 70: //stone pressure
        case 72: //wood pressure
        case 106: //vines
        case 141: //carrots
        case 142: //potatoes
        case 175: //flowers
        case 31: //grasses
        case 32: //dead shrub
        case 323: //sign (item, just in case)
        case 63: //standing sign
        case 68: //wall-mounted sign
        case 69: //lever
        case 77: //stone button
        case 143: //wood button
        case 75: //redstone torch on
        case 76: //redstone torch off
        case 65: //ladder
        case 66: //rail
        case 83: //sugar cane
        case 171: // carpet
            return true;
        default:
            return false;
    }
}
 
Example 32
Project: SparseBukkitAPI   File: ExampleMenu.java   Source Code and License 5 votes vote down vote up
public ExampleMenu()
{
	super("Test Menu", 4);
	
	setItem(0, 0, new MenuItem()
	{
		public ItemStack getItem()
		{
			return new ItemBuilder(Material.PAPER).colorName("&a0,0").enchantEffect().build();
		}
		
		public boolean shouldUpdateItem()
		{
			return false;
		}
		
		public boolean onClick(Player player, ClickType clickType, InventoryAction action)
		{
			Bukkit.broadcastMessage(player.getName()+" clicked");
			return false;
		}
	});
	
	setItem(1,1, new BasicItem(
			new ItemBuilder(Material.PAPER).colorName("&a1,1").enchantEffect().build(),
			(player, clickType, action) ->
			{
				Bukkit.broadcastMessage(player.getName() + " clicked BasicItem");
				return false;
			})
	);
}
 
Example 33
Project: ZentrelaRPG   File: MelodaBomb.java   Source Code and License 5 votes vote down vote up
@Override
public void castSpell(LivingEntity caster, MobData md, Player target) {
    for (int k = 0; k < RMath.randInt(20, 35); k++) {
        RScheduler.schedule(Spell.plugin, new Runnable() {
            public void run() {
                if (caster == null || !caster.isValid() || caster.isDead() || md.dead || md.despawned)
                    return;
                Location loc = caster.getLocation();
                double range = 10;
                Location l = loc.clone().add(RMath.randDouble(-range, range), RMath.randDouble(10, 15), RMath.randDouble(-range, range));
                FallingBlock fall = l.getWorld().spawnFallingBlock(l, Material.PACKED_ICE, (byte) 0);
                fall.setDropItem(false);
                fall.setHurtEntities(false);
                RScheduler.schedule(Spell.plugin, new Runnable() {
                    public void run() {
                        if (fall.isDead()) {
                            MelodaBombEffect effect = new MelodaBombEffect(EffectFactory.em(), fall.getLocation());
                            effect.run();
                            Spell.damageNearby(md.getDamage() * 3, caster, fall.getLocation(), 2, null);
                        } else {
                            RScheduler.schedule(Spell.plugin, this, 3);
                        }
                    }
                });
            }
        }, RMath.randInt(RTicks.seconds(1), RTicks.seconds(7)));
    }
}
 
Example 34
Project: HCFCore   File: HCF.java   Source Code and License 5 votes vote down vote up
public void resetGlowstoneMountain() {
	for(int x = 502 ; x <= 582 ; x++) {
		for(int y = 76 ; y <= 112 ; y++) {
			for(int z = 594 ; z > 514 ; z--) {
	    			Block block = Bukkit.getWorld("world_nether").getBlockAt(new Location(Bukkit.getWorld("world_nether"), -1 * x, y ,z));
	    			if(block.getType().equals(Material.BEDROCK)) {
	    				block.setType(Material.GLOWSTONE);
	    			}
	    	}
    	}
	}
}
 
Example 35
Project: HCFCore   File: ModeratorMode.java   Source Code and License 5 votes vote down vote up
@EventHandler
public void onRightClick2(PlayerInteractEvent event)
{
    if(event.getAction().equals(Action.RIGHT_CLICK_AIR) || event.getAction().equals(Action.RIGHT_CLICK_BLOCK)) {
          Player player = event.getPlayer();
          if ((modMode.contains(player.getName())) && (player.getItemInHand().getType() == Material.FEATHER)) {
              player.chat("/v");
          }
    }
}
 
Example 36
Project: WC   File: PokeEgg.java   Source Code and License 5 votes vote down vote up
public void registerRecipe(){
    ItemStack i = getPokeEgg();

    ShapedRecipe pokeEgg = new ShapedRecipe(i);

    pokeEgg.shape("BAB", "DCD", "BAB");

    pokeEgg.setIngredient('B', Material.WOOL);
    pokeEgg.setIngredient('A', Material.STRING);
    pokeEgg.setIngredient('D', Material.GOLD_NUGGET);
    pokeEgg.setIngredient('C', Material.EGG);

    Bukkit.addRecipe(pokeEgg);
}
 
Example 37
Project: KingdomFactions   File: Item.java   Source Code and License 5 votes vote down vote up
public ItemStack getItem(Material m, String name, int amount, ArrayList<String> lore, int in) {
	ItemStack i = new ItemStack(m, amount, (short) in);
	ItemMeta im = i.getItemMeta();
	im.setDisplayName(name);
	im.setLore(lore);
	i.setItemMeta(im);
	return i;
}
 
Example 38
Project: RealSurvival   File: Items.java   Source Code and License 5 votes vote down vote up
public static ItemStack getPlaceholder13(){
	ItemStack sw=new ItemStack(Material.STAINED_GLASS_PANE,1,(short)9);
	ItemMeta im = sw.getItemMeta();
	im.setDisplayName("��3��l��ˮ");
	sw.setItemMeta(im);
	return sw;
}
 
Example 39
Project: ProjectAres   File: BukkitTranslatorImpl.java   Source Code and License 5 votes vote down vote up
@Override
public Optional<String> materialKey(Material material) {
    return Optionals.first(
        Optional.ofNullable(substance(material))
                .map(Substance::key),
        Optional.ofNullable(NMSHacks.getTranslationKey(material))
    );
}
 
Example 40
Project: KingdomFactions   File: PortalTravelEventListener.java   Source Code and License 5 votes vote down vote up
@EventHandler
public void onPortalDestroy(BlockBreakEvent e) {
	if (e.getBlock() == null)
		return;
	if(e.getBlock().getType() == Material.PORTAL) {
		if(!e.getPlayer().isOp()) {
			e.setCancelled(true);
		}
	}
}