Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class OreGeneration {
- public static final List<ConfiguredFeature<OreConfiguration, OreFeature>> OVERWORLD_ORES = new ArrayList<>();
- public static final List<ConfiguredFeature<OreConfiguration, OreFeature>> END_ORES = new ArrayList<>();
- public static final List<ConfiguredFeature<OreConfiguration, OreFeature>> NETHER_ORES = new ArrayList<>();
- @SuppressWarnings("unchecked")
- public static void registerOres() {
- final ConfiguredFeature<?, ?> acacia = Feature.ORE
- .configured(new OreConfiguration(List.of(OreConfiguration.target(
- OreConfiguration.Predicates.STONE_ORE_REPLACEABLES, Blocks.GLOWSTONE.defaultBlockState())), 11))
- .rangeUniform(VerticalAnchor.bottom(), VerticalAnchor.aboveBottom(32)).squared().count(100);
- register("acacia_ore", acacia);
- OVERWORLD_ORES.add((ConfiguredFeature<OreConfiguration, OreFeature>) acacia);
- }
- private static <Config extends FeatureConfiguration> ConfiguredFeature<Config, ?> register(String name,
- ConfiguredFeature<Config, ?> configuredFeature) {
- return Registry.register(BuiltinRegistries.CONFIGURED_FEATURE, new ResourceLocation(TestMod.MODID, name),
- configuredFeature);
- }
- @Mod.EventBusSubscriber(modid = TestMod.MODID, bus = Bus.FORGE)
- public static class ForgeBusSubscriber {
- @SubscribeEvent
- public static void biomeLoading(BiomeLoadingEvent event) {
- final List<Supplier<ConfiguredFeature<?, ?>>> features = event.getGeneration()
- .getFeatures(Decoration.UNDERGROUND_ORES);
- switch (event.getCategory()) {
- case NETHER -> OreGeneration.NETHER_ORES.forEach(ore -> features.add(() -> ore));
- case THEEND -> OreGeneration.END_ORES.forEach(ore -> features.add(() -> ore));
- default -> OreGeneration.OVERWORLD_ORES.forEach(ore -> features.add(() -> ore));
- }
- }
- }
- @Mod.EventBusSubscriber(modid = TestMod.MODID, bus = Bus.MOD)
- public static class ModBusSubscriber {
- @SubscribeEvent
- public static void commonSetup(FMLCommonSetupEvent event) {
- event.enqueueWork(OreGeneration::registerOres);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement