当前位置: 首页>>代码示例>>Java>>正文


Java BlockStateMeta.setBlockState方法代码示例

本文整理汇总了Java中org.bukkit.inventory.meta.BlockStateMeta.setBlockState方法的典型用法代码示例。如果您正苦于以下问题:Java BlockStateMeta.setBlockState方法的具体用法?Java BlockStateMeta.setBlockState怎么用?Java BlockStateMeta.setBlockState使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.bukkit.inventory.meta.BlockStateMeta的用法示例。


在下文中一共展示了BlockStateMeta.setBlockState方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: setBoxInventory

import org.bukkit.inventory.meta.BlockStateMeta; //导入方法依赖的package包/类
public void setBoxInventory(Inventory inventory){
	if(item.getItemMeta() instanceof BlockStateMeta){
		BlockStateMeta im = (BlockStateMeta)item.getItemMeta();
		if(im.getBlockState() instanceof ShulkerBox){
			ShulkerBox shulker = (ShulkerBox) im.getBlockState();
			shulker.getInventory().setContents(inventory.getContents());
			im.setBlockState(shulker);
			item.setItemMeta(im);
			return;
		}
	}
	return;
}
 
开发者ID:DamoclesProject,项目名称:Damocles,代码行数:14,代码来源:NBTHandler.java

示例2: toItemStack

import org.bukkit.inventory.meta.BlockStateMeta; //导入方法依赖的package包/类
public ItemStack toItemStack(ItemStack item) {
    if (item.getItemMeta() instanceof BlockStateMeta) {
        BlockStateMeta blockStateMeta = (BlockStateMeta) item.getItemMeta();
        if (blockStateMeta.getBlockState() instanceof Sign) {
            Sign sign = ((Sign) blockStateMeta.getBlockState());
            for (int i = 0; i < 4; i++) {
                sign.setLine(i, getLine(i));
            }
            blockStateMeta.setBlockState(sign);
        }
        item.setItemMeta(blockStateMeta);
    }
    return item;
}
 
开发者ID:NyaaCat,项目名称:NyaaUtils,代码行数:15,代码来源:SignContent.java

示例3: applyMeta

import org.bukkit.inventory.meta.BlockStateMeta; //导入方法依赖的package包/类
/**
 * Applies meta to a shield
 *
 * @param itemStack  shield item
 * @param bannerMeta banner meta
 * @return shield item
 */
public static ItemStack applyMeta(ItemStack itemStack, BannerMeta bannerMeta) {
	if(itemStack.getType() != Material.SHIELD && itemStack.getType() != Material.BANNER) {
		throw new IllegalArgumentException("Passed ItemStack is not a shield nor a banner");
	}

	ItemMeta meta = itemStack.getItemMeta();
	BlockStateMeta blockStateMeta = (BlockStateMeta) meta;
	Banner banner = (Banner) blockStateMeta.getBlockState();
	applyMeta(banner, bannerMeta);
	banner.update();
	blockStateMeta.setBlockState(banner);
	itemStack.setItemMeta(blockStateMeta);
	return itemStack;
}
 
开发者ID:MarcinWieczorek,项目名称:NovaGuilds,代码行数:22,代码来源:BannerUtils.java

示例4: build

import org.bukkit.inventory.meta.BlockStateMeta; //导入方法依赖的package包/类
@Override
public ItemStack build(ItemStack stack) {
  if(valid) {
    BlockStateMeta meta = (BlockStateMeta)stack.getItemMeta();
    ShulkerBox shulkerBox = (ShulkerBox)meta;
    items.forEach((slot, item)->shulkerBox.getInventory().setItem(slot, item.getStack()));
    meta.setBlockState(shulkerBox);
    stack.setItemMeta(meta);

  }
  return stack;
}
 
开发者ID:TheNewEconomy,项目名称:TNE-Bukkit,代码行数:13,代码来源:ShulkerData.java

示例5: getItemJsonStripped

import org.bukkit.inventory.meta.BlockStateMeta; //导入方法依赖的package包/类
private String getItemJsonStripped(ItemStack item) {
    ItemStack cloned = item.clone();
    if (cloned.hasItemMeta() && cloned.getItemMeta() instanceof BookMeta) {
        return ItemStackUtils.itemToJson(removeBookContent(cloned));
    }
    if (cloned.hasItemMeta() && cloned.getItemMeta() instanceof BlockStateMeta) {
        BlockStateMeta blockStateMeta = (BlockStateMeta) cloned.getItemMeta();
        if (blockStateMeta.hasBlockState() && blockStateMeta.getBlockState() instanceof InventoryHolder) {
            InventoryHolder inventoryHolder = (InventoryHolder) blockStateMeta.getBlockState();
            ArrayList<ItemStack> items = new ArrayList<>();
            for (int i = 0; i < inventoryHolder.getInventory().getSize(); i++) {
                ItemStack itemStack = inventoryHolder.getInventory().getItem(i);
                if (itemStack != null && itemStack.getType() != Material.AIR) {
                    if (items.size() < 5) {
                        if (itemStack.hasItemMeta()) {
                            if (itemStack.getItemMeta().hasLore()) {
                                ItemMeta meta = itemStack.getItemMeta();
                                meta.setLore(new ArrayList<String>());
                                itemStack.setItemMeta(meta);
                            }
                            if (itemStack.getItemMeta() instanceof BookMeta) {
                                itemStack = removeBookContent(itemStack);
                            }
                        }
                        items.add(itemStack);
                    } else {
                        items.add(new ItemStack(Material.STONE));
                    }
                }
            }
            inventoryHolder.getInventory().clear();
            for (int i = 0; i < items.size(); i++) {
                inventoryHolder.getInventory().setItem(i, items.get(i));
            }
            blockStateMeta.setBlockState((BlockState) inventoryHolder);
            cloned.setItemMeta(blockStateMeta);
            return ItemStackUtils.itemToJson(cloned);
        }
    }
    return ItemStackUtils.itemToJson(cloned);
}
 
开发者ID:NyaaCat,项目名称:NyaaCore,代码行数:42,代码来源:Message.java


注:本文中的org.bukkit.inventory.meta.BlockStateMeta.setBlockState方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。