minecraft-src/net/minecraft/world/level/NoiseColumn.java
2025-07-04 01:41:11 +03:00

31 lines
839 B
Java

package net.minecraft.world.level;
import net.minecraft.world.level.block.Blocks;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.chunk.BlockColumn;
public final class NoiseColumn implements BlockColumn {
private final int minY;
private final BlockState[] column;
public NoiseColumn(int minY, BlockState[] column) {
this.minY = minY;
this.column = column;
}
@Override
public BlockState getBlock(int pos) {
int i = pos - this.minY;
return i >= 0 && i < this.column.length ? this.column[i] : Blocks.AIR.defaultBlockState();
}
@Override
public void setBlock(int pos, BlockState state) {
int i = pos - this.minY;
if (i >= 0 && i < this.column.length) {
this.column[i] = state;
} else {
throw new IllegalArgumentException("Outside of column height: " + pos);
}
}
}