本文整理汇总了Java中net.minecraft.block.Block.getCollisionBoundingBox方法的典型用法代码示例。如果您正苦于以下问题:Java Block.getCollisionBoundingBox方法的具体用法?Java Block.getCollisionBoundingBox怎么用?Java Block.getCollisionBoundingBox使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类net.minecraft.block.Block
的用法示例。
在下文中一共展示了Block.getCollisionBoundingBox方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: addCollisionBoxToList
import net.minecraft.block.Block; //导入方法依赖的package包/类
/**
* @reason the overwritten method is only one line, we need to overwrite to mutate the AABB and pass params into the event constructor
* @author Brady
*/
@Overwrite
@Deprecated
public void addCollisionBoxToList(IBlockState state, World worldIn, BlockPos pos, AxisAlignedBB entityBox, List<AxisAlignedBB> collidingBoxes, @Nullable Entity entityIn, boolean p_185477_7_) {
Block block = (Block) (Object) (this);
AxisAlignedBB axisalignedbb = block.getCollisionBoundingBox(state, worldIn, pos);
BoundingBoxEvent event = new BoundingBoxEvent(block, pos, axisalignedbb, collidingBoxes, entityIn);
ClientAPI.EVENT_BUS.post(event);
if (event.isCancelled())
return;
axisalignedbb = event.getBoundingBox();
addCollisionBoxToList(pos, entityBox, collidingBoxes, axisalignedbb);
}
示例2: canBlockBePlaced
import net.minecraft.block.Block; //导入方法依赖的package包/类
public boolean canBlockBePlaced(Block blockIn, BlockPos pos, boolean p_175716_3_, EnumFacing side, Entity entityIn, ItemStack itemStackIn)
{
Block block = this.getBlockState(pos).getBlock();
AxisAlignedBB axisalignedbb = p_175716_3_ ? null : blockIn.getCollisionBoundingBox(this, pos, blockIn.getDefaultState());
return axisalignedbb != null && !this.checkNoEntityCollision(axisalignedbb, entityIn) ? false : (block.getMaterial() == Material.circuits && blockIn == Blocks.anvil ? true : block.getMaterial().isReplaceable() && blockIn.canReplace(this, pos, side, itemStackIn));
}