当前位置: 首页>>代码示例>>Java>>正文


Java Area.neighbour方法代码示例

本文整理汇总了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]);
}
 
开发者ID:RedTroop,项目名称:Cubes_2,代码行数:30,代码来源:LightWorldSection.java

示例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)]);
}
 
开发者ID:RedTroop,项目名称:Cubes_2,代码行数:11,代码来源:AmbientOcclusion.java

示例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]);
}
 
开发者ID:RedTroop,项目名称:Cubes,代码行数:28,代码来源:LightWorldSection.java

示例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)]);
}
 
开发者ID:RedTroop,项目名称:Cubes,代码行数:9,代码来源:AmbientOcclusion.java


注:本文中的ethanjones.cubes.world.storage.Area.neighbour方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。