net.minecraft.world.World.getLightFromNeighborsFor()方法的使用及代码示例

x33g5p2x  于2022-02-02 转载在 其他  
字(3.1k)|赞(0)|评价(0)|浏览(81)

本文整理了Java中net.minecraft.world.World.getLightFromNeighborsFor()方法的一些代码示例,展示了World.getLightFromNeighborsFor()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。World.getLightFromNeighborsFor()方法的具体详情如下:
包路径:net.minecraft.world.World
类名称:World
方法名:getLightFromNeighborsFor

World.getLightFromNeighborsFor介绍

暂无

代码示例

代码示例来源:origin: SleepyTrousers/EnderIO

@Override
public int getLightFromNeighborsFor(@Nonnull EnumSkyBlock type, @Nonnull BlockPos pos) {
 return wrapped.getLightFromNeighborsFor(type, pos);
}

代码示例来源:origin: amadornes/MCMultiPart

@Override
public int getLightFromNeighborsFor(EnumSkyBlock type, BlockPos pos) {
  return getActualWorld().getLightFromNeighborsFor(type, pos);
}

代码示例来源:origin: SleepyTrousers/EnderCore

public static float claculateTotalBrightnessForLocation(@Nonnull World worldObj, @Nonnull BlockPos pos) {
 int i = worldObj.getLightFromNeighborsFor(EnumSkyBlock.SKY, pos);
 int j = i % 65536;
 int k = i / 65536;
 // 0.2 - 1
 float sunBrightness = worldObj.getSunBrightness(1);
 float percentRecievedFromSun = k / 255f;
 // Highest value received from a light
 float fromLights = j / 255f;
 // 0 - 1 for sun only, 0 - 0.6 for light only
 // float recievedPercent = worldObj.getLightBrightness(new BlockPos(xCoord,
 // yCoord, zCoord));
 float highestValue = Math.max(fromLights, percentRecievedFromSun * sunBrightness);
 return Math.max(0.2f, highestValue);
}

代码示例来源:origin: SleepyTrousers/EnderIO

maxSky = Math.max(maxSky, world.getLightFromNeighborsFor(EnumSkyBlock.SKY, pos.offset(face)));
maxBlk = Math.max(maxBlk, world.getLightFromNeighborsFor(EnumSkyBlock.BLOCK, pos.offset(face)));
maxSky = Math.max(maxSky, world.getLightFromNeighborsFor(EnumSkyBlock.SKY, pos.offset(face).up()));
maxBlk = Math.max(maxBlk, world.getLightFromNeighborsFor(EnumSkyBlock.BLOCK, pos.offset(face).up()));
maxSky = Math.max(maxSky, world.getLightFromNeighborsFor(EnumSkyBlock.SKY, pos.offset(face).down()));
maxBlk = Math.max(maxBlk, world.getLightFromNeighborsFor(EnumSkyBlock.BLOCK, pos.offset(face).down()));
maxSky = Math.max(maxSky, world.getLightFromNeighborsFor(EnumSkyBlock.SKY, pos.offset(face).up().offset(face.rotateY())));
maxBlk = Math.max(maxBlk, world.getLightFromNeighborsFor(EnumSkyBlock.BLOCK, pos.offset(face).up().offset(face.rotateY())));
maxSky = Math.max(maxSky, world.getLightFromNeighborsFor(EnumSkyBlock.SKY, pos.offset(face).down().offset(face.rotateY())));
maxBlk = Math.max(maxBlk, world.getLightFromNeighborsFor(EnumSkyBlock.BLOCK, pos.offset(face).down().offset(face.rotateY())));
maxSky = Math.max(maxSky, world.getLightFromNeighborsFor(EnumSkyBlock.SKY, pos.offset(face).offset(face.rotateY())));
maxBlk = Math.max(maxBlk, world.getLightFromNeighborsFor(EnumSkyBlock.BLOCK, pos.offset(face).offset(face.rotateY())));

代码示例来源:origin: AlgorithmX2/Chisels-and-Bits

@Override
protected void tesrUpdate(
    final IBlockAccess access,
    final VoxelNeighborRenderTracker vns )
{
  if ( renderChunk == null )
  {
    renderChunk = findRenderChunk( access );
    renderChunk.register( this );
  }
  renderChunk.update( null, 1 );
  final int old = previousLightLevel;
  previousLightLevel = worldObj.getLightFromNeighborsFor( EnumSkyBlock.BLOCK, getPos() );
  if ( previousLightLevel != old )
  {
    vns.triggerUpdate();
  }
  if ( vns.isShouldUpdate() )
  {
    renderChunk.rebuild( false );
  }
}

相关文章

微信公众号

最新文章

更多

World类方法