minecraft-src/net/minecraft/world/level/chunk/EmptyLevelChunk.java
2025-07-04 03:45:38 +03:00

87 lines
1.9 KiB
Java

package net.minecraft.world.level.chunk;
import net.minecraft.core.BlockPos;
import net.minecraft.core.Holder;
import net.minecraft.server.level.FullChunkStatus;
import net.minecraft.world.level.ChunkPos;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.biome.Biome;
import net.minecraft.world.level.block.Blocks;
import net.minecraft.world.level.block.entity.BlockEntity;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.material.FluidState;
import net.minecraft.world.level.material.Fluids;
import org.jetbrains.annotations.Nullable;
public class EmptyLevelChunk extends LevelChunk {
private final Holder<Biome> biome;
public EmptyLevelChunk(Level level, ChunkPos pos, Holder<Biome> biome) {
super(level, pos);
this.biome = biome;
}
@Override
public BlockState getBlockState(BlockPos pos) {
return Blocks.VOID_AIR.defaultBlockState();
}
@Nullable
@Override
public BlockState setBlockState(BlockPos pos, BlockState state, int flags) {
return null;
}
@Override
public FluidState getFluidState(BlockPos pos) {
return Fluids.EMPTY.defaultFluidState();
}
@Override
public int getLightEmission(BlockPos pos) {
return 0;
}
@Nullable
@Override
public BlockEntity getBlockEntity(BlockPos pos, LevelChunk.EntityCreationType creationType) {
return null;
}
@Override
public void addAndRegisterBlockEntity(BlockEntity blockEntity) {
}
@Override
public void setBlockEntity(BlockEntity blockEntity) {
}
@Override
public void removeBlockEntity(BlockPos pos) {
}
@Override
public boolean isEmpty() {
return true;
}
@Override
public boolean isYSpaceEmpty(int startY, int endY) {
return true;
}
@Override
public boolean isSectionEmpty(int y) {
return true;
}
@Override
public FullChunkStatus getFullStatus() {
return FullChunkStatus.FULL;
}
@Override
public Holder<Biome> getNoiseBiome(int i, int j, int k) {
return this.biome;
}
}