Java源码示例:net.minecraft.block.BlockFenceGate
示例1
private boolean canConnectTo(IBlockAccess worldIn, BlockPos pos, EnumFacing p_176253_3_)
{
IBlockState iblockstate = worldIn.getBlockState(pos);
Block block = iblockstate.getBlock();
BlockFaceShape blockfaceshape = iblockstate.getBlockFaceShape(worldIn, pos, p_176253_3_);
boolean flag = blockfaceshape == BlockFaceShape.MIDDLE_POLE_THICK || blockfaceshape == BlockFaceShape.MIDDLE_POLE && block instanceof net.minecraft.block.BlockFenceGate;
return !isExcepBlockForAttachWithPiston(block) && blockfaceshape == BlockFaceShape.SOLID || flag;
}
示例2
@Override
public boolean canBeConnectedTo(IBlockAccess world, BlockPos pos, EnumFacing facing)
{
Block connector = world.getBlockState(pos.offset(facing)).getBlock();
return connector instanceof net.minecraft.block.BlockWall ||
connector instanceof BlockWall ||
connector instanceof BlockFenceGate ||
connector instanceof cubex2.cs4.plugins.vanilla.block.BlockFenceGate;
}
示例3
public boolean canConnectTo(IBlockAccess worldIn, BlockPos pos)
{
IBlockState iblockstate = worldIn.getBlockState(pos);
Block block = iblockstate.getBlock();
return block == Blocks.BARRIER ? false : ((!(block instanceof BlockBeaconPost) || block.getMaterial(iblockstate) != this.blockMaterial) && !(block instanceof BlockFenceGate) ? (block.getMaterial(iblockstate).isOpaque() && iblockstate.isFullCube() ? block.getMaterial(iblockstate) != Material.GOURD : false) : true);
}
示例4
public static void upgradeOreDict() {
ReflectionHelper.forEachValueIn(Blocks.class, BlockFence.class, fence -> OreDictionary.registerOre("fenceWood", fence));
ReflectionHelper.forEachValueIn(Blocks.class, BlockFenceGate.class, gate -> OreDictionary.registerOre("fenceGateWood", gate));
}