本文整理汇总了Java中cn.nukkit.block.Block.AIR属性的典型用法代码示例。如果您正苦于以下问题:Java Block.AIR属性的具体用法?Java Block.AIR怎么用?Java Block.AIR使用的例子?那么, 这里精选的属性代码示例或许可以为您提供帮助。您也可以进一步了解该属性所在类cn.nukkit.block.Block
的用法示例。
在下文中一共展示了Block.AIR属性的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: growLeavesLayer
/**
* grow leaves in a circle
*/
protected void growLeavesLayer(ChunkManager worldIn, Vector3 layerCenter, int width) {
int i = width * width;
for (int j = -width; j <= width; ++j) {
for (int k = -width; k <= width; ++k) {
if (j * j + k * k <= i) {
Vector3 blockpos = layerCenter.add(j, 0, k);
int id = worldIn.getBlockIdAt((int) blockpos.x, (int) blockpos.y, (int) blockpos.z);
if (id == Block.AIR || id == Block.LEAVES) {
this.setBlockAndNotifyAdequately(worldIn, blockpos, this.leavesMetadata);
}
}
}
}
}
示例2: getHighestWorkableBlock
private int getHighestWorkableBlock(FullChunk chunk, int x, int z) {
int y;
for (y = 127; y >= 0; y--) {
int b = chunk.getBlockId(x, y, z);
if (b == Block.AIR) {
break;
}
}
return y == 0 ? -1 : y;
}
示例3: getHighestWorkableBlock
private int getHighestWorkableBlock(int x, int z) {
int y;
for (y = 127; y >= 0; --y) {
int b = this.level.getBlockIdAt(x, y, z);
if (b != Block.AIR && b != Block.LEAVES && b != Block.LEAVES2 && b != Block.SNOW_LAYER) {
break;
}
}
return y == 0 ? -1 : ++y;
}
示例4: getHighestWorkableBlock
private int getHighestWorkableBlock(int x, int z) {
int y;
for (y = 127; y > 0; --y) {
int b = this.level.getBlockIdAt(x, y, z);
if (b == Block.DIRT || b == Block.GRASS) {
break;
} else if (b != Block.AIR && b != Block.SNOW_LAYER) {
return -1;
}
}
return ++y;
}
示例5: placeLeafAt
private void placeLeafAt(ChunkManager worldIn, int x, int y, int z) {
Vector3 blockpos = new Vector3(x, y, z);
int material = worldIn.getBlockIdAt(blockpos.getFloorX(), blockpos.getFloorY(), blockpos.getFloorZ());
if (material == Block.AIR) {
this.setBlockAndNotifyAdequately(worldIn, blockpos, DARK_OAK_LEAVES);
}
}
示例6: flowIntoBlock
private void flowIntoBlock(int x, int y, int z, int newFlowDecay) {
if (this.level.getBlockIdAt(x, y, z) == Block.AIR) {
this.level.setBlockIdAt(x, y, z, Block.LAVA);
this.level.setBlockDataAt(x, y, z, newFlowDecay);
this.lavaSpread(x, y, z);
}
}
示例7: addHangingVine
private void addHangingVine(ChunkManager worldIn, BlockVector3 pos, int meta) {
this.addVine(worldIn, pos, meta);
int i = 4;
for (pos = pos.down(); i > 0 && worldIn.getBlockIdAt(pos.x, pos.y, pos.z) == Block.AIR; --i) {
this.addVine(worldIn, pos, meta);
pos = pos.down();
}
}
示例8: canSugarcaneStay
private boolean canSugarcaneStay(int x, int y, int z) {
int b = this.level.getBlockIdAt(x, y, z);
return (b == Block.AIR) && this.level.getBlockDataAt(x, y - 1, z) == Block.SUGARCANE_BLOCK;
}
示例9: canFlowerStay
private boolean canFlowerStay(int x, int y, int z) {
int b = this.level.getBlockIdAt(x, y, z);
return (b == Block.AIR || b == Block.SNOW_LAYER) && this.level.getBlockIdAt(x, y - 1, z) == Block.GRASS;
}
示例10: canTallGrassStay
private boolean canTallGrassStay(int x, int y, int z) {
int b = this.level.getBlockIdAt(x, y, z);
return (b == Block.AIR || b == Block.SNOW_LAYER) && this.level.getBlockIdAt(x, y - 1, z) == Block.GRASS && this.level.getBlockIdAt(x, y + 1, z) == Block.AIR;
}