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


Java Chest类代码示例

本文整理汇总了Java中org.bukkit.material.Chest的典型用法代码示例。如果您正苦于以下问题:Java Chest类的具体用法?Java Chest怎么用?Java Chest使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


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

示例1: findContainerNeighbors

import org.bukkit.material.Chest; //导入依赖的package包/类
@Override
public List<Block> findContainerNeighbors(Block block) {
    // Currently only chests share an inventory
    // Minecraft connects two chests next to each other that have the same
    // direction. We simply check for that condition, taking both normal
    // and trapped chests into account
    if (!(BlockData.get(block) instanceof Chest)) {
        return Collections.singletonList(block);
    }

    Material chestMaterial = block.getType(); // CHEST or TRAPPED_CHEST
    BlockFace chestFacing = ((Directional) BlockData.get(block)).getFacing();

    for (BlockFace face : CARDINAL_FACES) {
        Block atPosition = block.getRelative(face);
        if (atPosition.getType() != chestMaterial) {
            continue;
        }

        MaterialData materialData = BlockData.get(atPosition);
        if (!(materialData instanceof Directional)) {
            continue;
        }

        BlockFace facing = ((Directional) materialData).getFacing();
        if (!facing.equals(chestFacing)) {
            if (!facing.equals(chestFacing.getOppositeFace())) {
                // ^ If the chest was carried over from older Minecraft
                // versions, block data can be a bit weird. So opposite
                // face is allowed too for chest connections
                continue;
            }
        }

        return ImmutableList.of(block, atPosition);
    }

    return Collections.singletonList(block);
}
 
开发者ID:rutgerkok,项目名称:BlockLocker,代码行数:40,代码来源:SeparateContainersBlockFinder.java

示例2: Chest

import org.bukkit.material.Chest; //导入依赖的package包/类
public Chest() {
       super(Material.CHEST);
}
 
开发者ID:deathcap,项目名称:BedrockAPI,代码行数:4,代码来源:Chest.java

示例3: clone

import org.bukkit.material.Chest; //导入依赖的package包/类
public Chest clone() {
	return null;
}
 
开发者ID:deathcap,项目名称:BedrockAPI,代码行数:4,代码来源:Chest.java

示例4: get

import org.bukkit.material.Chest; //导入依赖的package包/类
/**
 * Fast alternative for the slow {@code block.getState().getData()} call.
 * This method skips the part where unnecessary BlockStates are created. For
 * chests this is quite slow, as all items need to be copied.
 *
 * <p>
 * Some materials, like Trapped Chest, don't return the appropriate material
 * data in Bukkit. This method fixes those bugs. For example,
 * {@link Material#TRAPPED_CHEST} returns a {@link MaterialData} of
 * {@link Chest}.
 * 
 * @param block
 *            The block.
 * @return The material data of the block.
 */
@SuppressWarnings("deprecation")
public static MaterialData get(Block block) {
    Material material = block.getType();
    byte data = block.getData();

    // Special-case trapped chest, it should have a Chest MaterialData, but
    // hasn't for some reason
    if (material == Material.TRAPPED_CHEST) {
        return new Chest(Material.TRAPPED_CHEST, data);
    }

    return material.getNewData(data);
}
 
开发者ID:rutgerkok,项目名称:BlockLocker,代码行数:29,代码来源:BlockData.java


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