17 lines
645 B
Java
17 lines
645 B
Java
package net.minecraft.world.level.levelgen.placement;
|
|
|
|
import com.mojang.serialization.Codec;
|
|
import java.util.stream.Stream;
|
|
import net.minecraft.core.BlockPos;
|
|
import net.minecraft.core.registries.BuiltInRegistries;
|
|
import net.minecraft.util.RandomSource;
|
|
|
|
public abstract class PlacementModifier {
|
|
public static final Codec<PlacementModifier> CODEC = BuiltInRegistries.PLACEMENT_MODIFIER_TYPE
|
|
.byNameCodec()
|
|
.dispatch(PlacementModifier::type, PlacementModifierType::codec);
|
|
|
|
public abstract Stream<BlockPos> getPositions(PlacementContext context, RandomSource random, BlockPos pos);
|
|
|
|
public abstract PlacementModifierType<?> type();
|
|
}
|