org.bukkit.util.BlockVector#getBlockX ( )源码实例Demo

下面列出了org.bukkit.util.BlockVector#getBlockX ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: CardinalPGM   文件: RegionSave.java
public RegionSave(RegionModule region) {
    BlockVector min = blockAlign(region.getMin());
    BlockVector max = blockAlign(region.getMax());
    BlockVector size = max.minus(min).toBlockVector();

    this.min = min;
    this.size = size;

    List<Pair<Material,Byte>> blocks = new ArrayList<>();
    for (int z = min.getBlockZ(); z < max.getBlockZ(); z++) {
        for (int y = min.getBlockY(); y < max.getBlockY(); y++) {
            for (int x = min.getBlockX(); x < max.getBlockX(); x++) {
                Block block = new Location(GameHandler.getGameHandler().getMatchWorld(), x, y, z).getBlock();
                blocks.add(new ImmutablePair<>(block.getType(), block.getData()));
            }
        }
    }
    this.blocks = blocks;
}
 
源代码2 项目: PGM   文件: Bounds.java
public boolean containsBlock(BlockVector v) {
  BlockVector min = this.getBlockMin();
  BlockVector max = this.getBlockMaxInside();
  return min.getBlockX() <= v.getBlockX()
      && v.getBlockX() <= max.getBlockX()
      && min.getBlockY() <= v.getBlockY()
      && v.getBlockY() <= max.getBlockY()
      && min.getBlockZ() <= v.getBlockZ()
      && v.getBlockZ() <= max.getBlockZ();
}
 
源代码3 项目: PGM   文件: BlockImage.java
private int offset(BlockVector pos) {
  if (!this.bounds.containsBlock(pos)) {
    throw new IndexOutOfBoundsException("Block is not inside this BlockImage");
  }

  return (pos.getBlockZ() - this.origin.getBlockZ())
          * this.size.getBlockX()
          * this.size.getBlockY()
      + (pos.getBlockY() - this.origin.getBlockY()) * this.size.getBlockX()
      + (pos.getBlockX() - this.origin.getBlockX());
}
 
源代码4 项目: Kettle   文件: CraftStructureBlock.java
@Override
public void setRelativePosition(BlockVector vector) {
    Validate.isTrue(isBetween(vector.getBlockX(), -MAX_SIZE, MAX_SIZE), "Structure Size (X) must be between -" + MAX_SIZE + " and " + MAX_SIZE);
    Validate.isTrue(isBetween(vector.getBlockY(), -MAX_SIZE, MAX_SIZE), "Structure Size (Y) must be between -" + MAX_SIZE + " and " + MAX_SIZE);
    Validate.isTrue(isBetween(vector.getBlockZ(), -MAX_SIZE, MAX_SIZE), "Structure Size (Z) must be between -" + MAX_SIZE + " and " + MAX_SIZE);
    getSnapshot().position = new BlockPos(vector.getBlockX(), vector.getBlockY(), vector.getBlockZ()); // PAIL: rename relativePosition
}
 
源代码5 项目: Kettle   文件: CraftStructureBlock.java
@Override
public void setStructureSize(BlockVector vector) {
    Validate.isTrue(isBetween(vector.getBlockX(), 0, MAX_SIZE), "Structure Size (X) must be between 0 and " + MAX_SIZE);
    Validate.isTrue(isBetween(vector.getBlockY(), 0, MAX_SIZE), "Structure Size (Y) must be between 0 and " + MAX_SIZE);
    Validate.isTrue(isBetween(vector.getBlockZ(), 0, MAX_SIZE), "Structure Size (Z) must be between 0 and " + MAX_SIZE);
    getSnapshot().size = new BlockPos(vector.getBlockX(), vector.getBlockY(), vector.getBlockZ()); // PAIL: rename size
}
 
源代码6 项目: PGM   文件: BlockFaces.java
static BlockVector getRelative(BlockVector pos, BlockFace face) {
  return new BlockVector(
      pos.getBlockX() + face.getModX(),
      pos.getBlockY() + face.getModY(),
      pos.getBlockZ() + face.getModZ());
}
 
源代码7 项目: ProjectAres   文件: BlockFaces.java
public static BlockVector getRelative(BlockVector pos, BlockFace face) {
    return new BlockVector(pos.getBlockX() + face.getModX(),
                           pos.getBlockY() + face.getModY(),
                           pos.getBlockZ() + face.getModZ());
}
 
源代码8 项目: CardinalPGM   文件: RegionSave.java
public Pair<Material,Byte> getBlockAt(BlockVector loc) {
    int x = loc.getBlockX() - min.getBlockX();
    int y = (loc.getBlockY() - this.min.getBlockY()) * this.size.getBlockX();
    int z = (loc.getBlockZ() - this.min.getBlockZ()) * this.size.getBlockX() * this.size.getBlockY();
    return blocks.get(x + y + z);
}