本文整理汇总了Java中ethanjones.cubes.world.storage.Area.neighbour方法的典型用法代码示例。如果您正苦于以下问题:Java Area.neighbour方法的具体用法?Java Area.neighbour怎么用?Java Area.neighbour使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ethanjones.cubes.world.storage.Area
的用法示例。
在下文中一共展示了Area.neighbour方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: LightWorldSection
import ethanjones.cubes.world.storage.Area; //导入方法依赖的package包/类
public LightWorldSection(Area initial) {
initialAreaX = initial.areaX;
initialAreaZ = initial.areaZ;
initialMinBlockX = initial.minBlockX;
initialMinBlockZ = initial.minBlockZ;
initialMaxBlockX = initial.minBlockX + Area.SIZE_BLOCKS;
initialMaxBlockZ = initial.minBlockZ + Area.SIZE_BLOCKS;
this.initial = initial;
areas[0][0] = initial.neighbour(initialAreaX - 1, initialAreaZ - 1);
areas[0][1] = initial.neighbour(initialAreaX - 1, initialAreaZ);
areas[0][2] = initial.neighbour(initialAreaX - 1, initialAreaZ + 1);
areas[1][0] = initial.neighbour(initialAreaX, initialAreaZ - 1);
areas[1][1] = initial;
areas[1][2] = initial.neighbour(initialAreaX, initialAreaZ + 1);
areas[2][0] = initial.neighbour(initialAreaX + 1, initialAreaZ - 1);
areas[2][1] = initial.neighbour(initialAreaX + 1, initialAreaZ);
areas[2][2] = initial.neighbour(initialAreaX + 1, initialAreaZ + 1);
for (Area[] areaArr : areas) {
for (Area area : areaArr) {
if (area == null)
throw new AreaNotLoadedException();
}
}
Lock.waitToLockAll(true, areas[0][0], areas[0][1], areas[0][2], areas[1][0], areas[1][1], areas[1][2],
areas[2][0], areas[2][1], areas[2][2]);
}
示例2: exists
import ethanjones.cubes.world.storage.Area; //导入方法依赖的package包/类
private static boolean exists(Area base, int xE, int yE, int zE) {
Area a = base.neighbour(CoordinateConverter.area(xE), CoordinateConverter.area(zE));
if (a == null || a.blocks == null)
return false; // TODO fix
if (yE > a.maxY || yE < 0)
return false;
xE -= a.minBlockX;
zE -= a.minBlockZ;
return !TransparencyManager.isTransparent(a.blocks[Area.getRef(xE, yE, zE)]);
}
示例3: LightWorldSection
import ethanjones.cubes.world.storage.Area; //导入方法依赖的package包/类
public LightWorldSection(Area initial) {
initialAreaX = initial.areaX;
initialAreaZ = initial.areaZ;
initialMinBlockX = initial.minBlockX;
initialMinBlockZ = initial.minBlockZ;
initialMaxBlockX = initial.minBlockX + Area.SIZE_BLOCKS;
initialMaxBlockZ = initial.minBlockZ + Area.SIZE_BLOCKS;
this.initial = initial;
areas[0][0] = initial.neighbour(initialAreaX - 1, initialAreaZ - 1);
areas[0][1] = initial.neighbour(initialAreaX - 1, initialAreaZ);
areas[0][2] = initial.neighbour(initialAreaX - 1, initialAreaZ + 1);
areas[1][0] = initial.neighbour(initialAreaX, initialAreaZ - 1);
areas[1][1] = initial;
areas[1][2] = initial.neighbour(initialAreaX, initialAreaZ + 1);
areas[2][0] = initial.neighbour(initialAreaX + 1, initialAreaZ - 1);
areas[2][1] = initial.neighbour(initialAreaX + 1, initialAreaZ);
areas[2][2] = initial.neighbour(initialAreaX + 1, initialAreaZ + 1);
for (Area[] areaArr : areas) {
for (Area area : areaArr) {
if (area == null) throw new AreaNotLoadedException();
}
}
Lock.waitToLockAll(true, areas[0][0], areas[0][1], areas[0][2], areas[1][0], areas[1][1], areas[1][2], areas[2][0], areas[2][1], areas[2][2]);
}
示例4: exists
import ethanjones.cubes.world.storage.Area; //导入方法依赖的package包/类
private static boolean exists(Area base, int x, int y, int z) {
Area a = base.neighbour(CoordinateConverter.area(x), CoordinateConverter.area(z));
if (a == null || a.blocks == null) return false; //TODO fix
if (y > a.maxY || y < 0) return false;
x -= a.minBlockX;
z -= a.minBlockZ;
return !TransparencyManager.isTransparent(a.blocks[Area.getRef(x, y, z)]);
}