java类net.minecraft.world.EnumSkyBlock的实例源码

BlockSnowBlock.java 文件源码 项目:DecompiledMinecraft 阅读 14 收藏 0 点赞 0 评论 0
public void updateTick(World worldIn, BlockPos pos, IBlockState state, Random rand)
{
    if (worldIn.getLightFor(EnumSkyBlock.BLOCK, pos) > 11)
    {
        this.dropBlockAsItem(worldIn, pos, worldIn.getBlockState(pos), 0);
        worldIn.setBlockToAir(pos);
    }
}
BlockSnow.java 文件源码 项目:DecompiledMinecraft 阅读 22 收藏 0 点赞 0 评论 0
public void updateTick(World worldIn, BlockPos pos, IBlockState state, Random rand)
{
    if (worldIn.getLightFor(EnumSkyBlock.BLOCK, pos) > 11)
    {
        this.dropBlockAsItem(worldIn, pos, worldIn.getBlockState(pos), 0);
        worldIn.setBlockToAir(pos);
    }
}
Chunk.java 文件源码 项目:DecompiledMinecraft 阅读 24 收藏 0 点赞 0 评论 0
private void updateSkylightNeighborHeight(int x, int z, int startY, int endY)
{
    if (endY > startY && this.worldObj.isAreaLoaded(new BlockPos(x, 0, z), 16))
    {
        for (int i = startY; i < endY; ++i)
        {
            this.worldObj.checkLightFor(EnumSkyBlock.SKY, new BlockPos(x, i, z));
        }

        this.isModified = true;
    }
}
Chunk.java 文件源码 项目:DecompiledMinecraft 阅读 22 收藏 0 点赞 0 评论 0
public int getLightFor(EnumSkyBlock p_177413_1_, BlockPos pos)
{
    int i = pos.getX() & 15;
    int j = pos.getY();
    int k = pos.getZ() & 15;
    ExtendedBlockStorage extendedblockstorage = this.storageArrays[j >> 4];
    return extendedblockstorage == null ? (this.canSeeSky(pos) ? p_177413_1_.defaultLightValue : 0) : (p_177413_1_ == EnumSkyBlock.SKY ? (this.worldObj.provider.getHasNoSky() ? 0 : extendedblockstorage.getExtSkylightValue(i, j & 15, k)) : (p_177413_1_ == EnumSkyBlock.BLOCK ? extendedblockstorage.getExtBlocklightValue(i, j & 15, k) : p_177413_1_.defaultLightValue));
}
Chunk.java 文件源码 项目:DecompiledMinecraft 阅读 23 收藏 0 点赞 0 评论 0
public void setLightFor(EnumSkyBlock p_177431_1_, BlockPos pos, int value)
{
    int i = pos.getX() & 15;
    int j = pos.getY();
    int k = pos.getZ() & 15;
    ExtendedBlockStorage extendedblockstorage = this.storageArrays[j >> 4];

    if (extendedblockstorage == null)
    {
        extendedblockstorage = this.storageArrays[j >> 4] = new ExtendedBlockStorage(j >> 4 << 4, !this.worldObj.provider.getHasNoSky());
        this.generateSkylightMap();
    }

    this.isModified = true;

    if (p_177431_1_ == EnumSkyBlock.SKY)
    {
        if (!this.worldObj.provider.getHasNoSky())
        {
            extendedblockstorage.setExtSkylightValue(i, j & 15, k, value);
        }
    }
    else if (p_177431_1_ == EnumSkyBlock.BLOCK)
    {
        extendedblockstorage.setExtBlocklightValue(i, j & 15, k, value);
    }
}
BlockIce.java 文件源码 项目:DecompiledMinecraft 阅读 21 收藏 0 点赞 0 评论 0
public void updateTick(World worldIn, BlockPos pos, IBlockState state, Random rand)
{
    if (worldIn.getLightFor(EnumSkyBlock.BLOCK, pos) > 11 - this.getLightOpacity())
    {
        if (worldIn.provider.doesWaterVaporize())
        {
            worldIn.setBlockToAir(pos);
        }
        else
        {
            this.dropBlockAsItem(worldIn, pos, worldIn.getBlockState(pos), 0);
            worldIn.setBlockState(pos, Blocks.water.getDefaultState());
        }
    }
}
BlockSnowBlock.java 文件源码 项目:DecompiledMinecraft 阅读 17 收藏 0 点赞 0 评论 0
public void updateTick(World worldIn, BlockPos pos, IBlockState state, Random rand)
{
    if (worldIn.getLightFor(EnumSkyBlock.BLOCK, pos) > 11)
    {
        this.dropBlockAsItem(worldIn, pos, worldIn.getBlockState(pos), 0);
        worldIn.setBlockToAir(pos);
    }
}
BlockSnow.java 文件源码 项目:DecompiledMinecraft 阅读 22 收藏 0 点赞 0 评论 0
public void updateTick(World worldIn, BlockPos pos, IBlockState state, Random rand)
{
    if (worldIn.getLightFor(EnumSkyBlock.BLOCK, pos) > 11)
    {
        this.dropBlockAsItem(worldIn, pos, worldIn.getBlockState(pos), 0);
        worldIn.setBlockToAir(pos);
    }
}
Chunk.java 文件源码 项目:BaseClient 阅读 25 收藏 0 点赞 0 评论 0
private void updateSkylightNeighborHeight(int x, int z, int startY, int endY)
{
    if (endY > startY && this.worldObj.isAreaLoaded(new BlockPos(x, 0, z), 16))
    {
        for (int i = startY; i < endY; ++i)
        {
            this.worldObj.checkLightFor(EnumSkyBlock.SKY, new BlockPos(x, i, z));
        }

        this.isModified = true;
    }
}
Chunk.java 文件源码 项目:BaseClient 阅读 21 收藏 0 点赞 0 评论 0
public int getLightFor(EnumSkyBlock p_177413_1_, BlockPos pos)
{
    int i = pos.getX() & 15;
    int j = pos.getY();
    int k = pos.getZ() & 15;
    ExtendedBlockStorage extendedblockstorage = this.storageArrays[j >> 4];
    return extendedblockstorage == null ? (this.canSeeSky(pos) ? p_177413_1_.defaultLightValue : 0) : (p_177413_1_ == EnumSkyBlock.SKY ? (this.worldObj.provider.getHasNoSky() ? 0 : extendedblockstorage.getExtSkylightValue(i, j & 15, k)) : (p_177413_1_ == EnumSkyBlock.BLOCK ? extendedblockstorage.getExtBlocklightValue(i, j & 15, k) : p_177413_1_.defaultLightValue));
}


问题


面经


文章

微信
公众号

扫码关注公众号