Examples of Jukebox


Examples of org.bukkit.block.Jukebox

    @EventHandler
    public void onRedstonePower(SourcedBlockRedstoneEvent event) {

        if(event.isMinor()) return;
        if(event.getBlock().getType() != Material.JUKEBOX) return; //Only listen for Jukeboxes.
        Jukebox juke = (org.bukkit.block.Jukebox) event.getBlock().getState();
        if(!event.isOn()) {
            //FIXME byte data = juke.getRawData();
            //juke.setPlaying(null);
            //event.getBlock().setTypeIdAndData(BlockID.JUKEBOX, data, false);
        } else
            juke.setPlaying(juke.getPlaying());
        juke.update();
    }
View Full Code Here

Examples of org.bukkit.block.Jukebox

                Block fac = bl.getRelative(p.getFacing());
                if (InventoryUtil.doesBlockHaveInventory(fac)) {
                    newItems.addAll(InventoryUtil.addItemsToInventory((InventoryHolder) fac.getState(), filteredItems.toArray(new ItemStack[filteredItems.size()])));
                } else if(fac.getType() == Material.JUKEBOX) {
                    Jukebox juke = (Jukebox) fac.getState();
                    List<ItemStack> its = new ArrayList<ItemStack>(filteredItems);
                    if(!juke.isPlaying()) {
                        Iterator<ItemStack> iter = its.iterator();
                        while(iter.hasNext()) {
                            ItemStack st = iter.next();
                            if(!st.getType().isRecord()) continue;
                            juke.setPlaying(st.getType());
                            iter.remove();
                            break;
                        }
                    }
                    newItems.addAll(its);
View Full Code Here

Examples of org.bukkit.block.Jukebox

                            leftovers.add(ItemUtil.addToStack(f.getInventory().getResult(), item));
                    }
                } else f.getInventory().setResult(null);
            } else if (fac.getType() == Material.JUKEBOX) {

                Jukebox juke = (Jukebox) fac.getState();

                items.add(new ItemStack(juke.getPlaying()));

                PipeSuckEvent event = new PipeSuckEvent(block, new ArrayList<ItemStack>(items), fac);
                Bukkit.getPluginManager().callEvent(event);
                items.clear();
                items.addAll(event.getItems());

                if(!event.isCancelled()) {
                    visitedPipes.add(fac.getLocation());
                    searchNearbyPipes(block, visitedPipes, items, filters, exceptions);
                }

                if (!items.isEmpty()) {
                    for (ItemStack item : items) {
                        if (item == null) continue;
                        block.getWorld().dropItem(BlockUtil.getBlockCentre(block), item);
                    }
                } else juke.setPlaying(null);
            } else {
                PipeSuckEvent event = new PipeSuckEvent(block, new ArrayList<ItemStack>(items), fac);
                Bukkit.getPluginManager().callEvent(event);
                items.clear();
                items.addAll(event.getItems());
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.