Finalized biome rework

This commit is contained in:
Forstride 2020-11-04 15:34:55 -05:00
parent 27c59e07eb
commit 80d6bc0769
95 changed files with 296 additions and 372 deletions

View File

@ -7,7 +7,7 @@ mod_version=12.0.0
minecraft_version=1.16.3
minecraft_version_toml=16
forge_version=34.0.9
forge_version=34.1.33
forge_version_toml=34
forge_group=net.minecraftforge
mappings_version=2-1.16.2

View File

@ -30,8 +30,7 @@ public class BOPBiomes
public static RegistryKey<Biome> dry_boneyard = register("dry_boneyard");
public static RegistryKey<Biome> fir_clearing = register("fir_clearing");
public static RegistryKey<Biome> flower_meadow = register("flower_meadow");
public static RegistryKey<Biome> frozen_glacier = register("frozen_glacier");
public static RegistryKey<Biome> frozen_wonderland = register("frozen_wonderland");
public static RegistryKey<Biome> fungal_field = register("fungal_field");
public static RegistryKey<Biome> fungal_jungle = register("fungal_jungle");
public static RegistryKey<Biome> golden_prairie = register("golden_prairie");
public static RegistryKey<Biome> gravel_beach = register("gravel_beach");

View File

@ -1,38 +1,23 @@
package biomesoplenty.client.handler;
import biomesoplenty.common.world.BOPWorldTypeUtil;
import biomesoplenty.core.BiomesOPlenty;
import biomesoplenty.init.ModBiomes;
import biomesoplenty.init.ModConfig;
import com.mojang.datafixers.util.Function4;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.screen.*;
import net.minecraft.command.Commands;
import net.minecraft.resources.*;
import net.minecraft.util.datafix.codec.DatapackCodec;
import net.minecraft.util.registry.DynamicRegistries;
import net.minecraft.util.text.ITextComponent;
import net.minecraft.util.text.TranslationTextComponent;
import net.minecraft.world.gen.settings.DimensionGeneratorSettings;
import net.minecraft.world.storage.FolderName;
import net.minecraft.world.storage.IServerConfiguration;
import net.minecraft.world.storage.SaveFormat;
import net.minecraft.client.gui.screen.CreateWorldScreen;
import net.minecraft.client.gui.screen.Screen;
import net.minecraft.client.gui.screen.WorldOptionsScreen;
import net.minecraft.client.gui.screen.WorldSelectionScreen;
import net.minecraftforge.api.distmarker.Dist;
import net.minecraftforge.api.distmarker.OnlyIn;
import net.minecraftforge.client.event.GuiOpenEvent;
import net.minecraftforge.client.event.GuiScreenEvent;
import net.minecraftforge.eventbus.api.SubscribeEvent;
import net.minecraftforge.fml.common.Mod;
import java.util.Optional;
import java.util.function.Function;
@Mod.EventBusSubscriber(bus = Mod.EventBusSubscriber.Bus.FORGE)
public class GuiEventHandler
{
private static String levelId = null;
private static ConfirmBackupScreen confirmScreen = null;
@OnlyIn(Dist.CLIENT)
@SubscribeEvent
public static void onGuiOpened(GuiOpenEvent event)
@ -41,36 +26,6 @@ public class GuiEventHandler
Minecraft mc = Minecraft.getInstance();
Screen prevScreen = mc.screen;
// Retain the last level that was selected
if (isDataReadScreen(gui))
{
if (prevScreen instanceof WorldSelectionScreen)
{
WorldSelectionScreen worldSelectionScreen = (WorldSelectionScreen)prevScreen;
Optional<WorldSelectionList.Entry> entry = worldSelectionScreen.list.getSelectedOpt();
if (entry.isPresent())
{
levelId = entry.get().summary.getLevelId();
}
}
else
{
cleanupGuiTracking();
}
}
else if (gui instanceof ConfirmBackupScreen && levelId != null)
{
confirmScreen = (ConfirmBackupScreen)gui;
// Don't show the confirmation screen immediately
event.setCanceled(true);
}
else
{
cleanupGuiTracking();
}
// Default to the bop worldtype
if (ModConfig.ClientConfig.useWorldType.get() && gui instanceof CreateWorldScreen && prevScreen instanceof WorldSelectionScreen)
{
@ -79,81 +34,4 @@ public class GuiEventHandler
optionsScreen.settings = optionsScreen.preset.get().create(optionsScreen.registryHolder, optionsScreen.settings.seed(), optionsScreen.settings.generateFeatures(), optionsScreen.settings.generateBonusChest());
}
}
@OnlyIn(Dist.CLIENT)
@SubscribeEvent
public static void onGuiDraw(GuiScreenEvent.DrawScreenEvent event)
{
Screen gui = event.getGui();
Minecraft mc = Minecraft.getInstance();
// We need to check if the bop world type is being used after the save has been unlocked.
// It is still locked during GuiOpenEvent.
if (isDataReadScreen(gui) && levelId != null && confirmScreen != null)
{
// Skip the confirm screen if this is the bop world type
if (isBopWorldType(mc, levelId))
{
confirmScreen.listener.proceed(false, false);
}
else
{
// Otherwise show the confirm screen
mc.setScreen(confirmScreen);
}
event.setCanceled(true);
cleanupGuiTracking();
}
}
private static void cleanupGuiTracking()
{
levelId = null;
confirmScreen = null;
}
private static boolean isDataReadScreen(Screen gui)
{
// The data read screen is a dirt message screen.
if (!(gui instanceof DirtMessageScreen))
return false;
ITextComponent title = gui.getTitle();
// Ensure text component is set as expected
if (!(title instanceof TranslationTextComponent) || !((TranslationTextComponent)title).getKey().equals("selectWorld.data_read"))
{
return false;
}
return true;
}
private static boolean isBopWorldType(Minecraft mc, String levelId)
{
try
(
SaveFormat.LevelSave save = mc.getLevelSource().createAccess(levelId);
Minecraft.PackManager packManager = createPackManager(DynamicRegistries.builtin(), Minecraft::loadDataPacks, Minecraft::loadWorldData, save);
)
{
DimensionGeneratorSettings settings = packManager.worldData().worldGenSettings();
return BOPWorldTypeUtil.isUsingBopWorldType(settings);
}
catch (Exception exception)
{
BiomesOPlenty.logger.warn("Failed to load save.", (Throwable)exception);
return false;
}
}
private static Minecraft.PackManager createPackManager(DynamicRegistries.Impl registries, Function<SaveFormat.LevelSave, DatapackCodec> dataPackLoader, Function4<SaveFormat.LevelSave, DynamicRegistries.Impl, IResourceManager, DatapackCodec, IServerConfiguration> worldDataLoader, SaveFormat.LevelSave save)
{
DatapackCodec dataPackCodec = dataPackLoader.apply(save);
ResourcePackList resourcePackList = new ResourcePackList(ResourcePackInfo::new, new ServerPackFinder(), new FolderPackFinder(save.getLevelPath(FolderName.DATAPACK_DIR).toFile(), IPackNameDecorator.WORLD));
DataPackRegistries dataPackRegistries = new DataPackRegistries(Commands.EnvironmentType.INTEGRATED, 2);
IServerConfiguration serverConfiguration = worldDataLoader.apply(save, registries, dataPackRegistries.getResourceManager(), dataPackCodec);
return new Minecraft.PackManager(resourcePackList, dataPackRegistries, serverConfiguration);
}
}
}

View File

@ -384,7 +384,7 @@ public class BiomeRegistry
return;
}
biome.setRegistryName(name);
biome.setRegistryName(new ResourceLocation(BiomesOPlenty.MOD_ID, name));
ForgeRegistries.BIOMES.register(biome);
for (Map.Entry<BOPClimates, Integer> entry : data.getWeights().entrySet())

View File

@ -14,6 +14,7 @@ import net.minecraft.world.gen.carver.ConfiguredCarvers;
import net.minecraft.world.gen.feature.Features;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class CrystallineChasmBiome extends NetherBiomeTemplate
@ -34,7 +35,7 @@ public class CrystallineChasmBiome extends NetherBiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.NETHER, SurfaceBuilder.CONFIG_HELL));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.NETHER);
//Terrain
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_NETHER);

View File

@ -14,6 +14,7 @@ import net.minecraft.world.gen.carver.ConfiguredCarvers;
import net.minecraft.world.gen.feature.Features;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class UndergrowthBiome extends NetherBiomeTemplate
@ -34,7 +35,7 @@ public class UndergrowthBiome extends NetherBiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.NETHER, SurfaceBuilder.CONFIG_HELL));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.NETHER);
//Terrain
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_NETHER);

View File

@ -3,6 +3,7 @@ package biomesoplenty.common.biome.nether;
import biomesoplenty.api.enums.BOPClimates;
import biomesoplenty.common.biome.NetherBiomeTemplate;
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
import net.minecraft.client.audio.BackgroundMusicTracks;
import net.minecraft.entity.EntityClassification;
@ -35,7 +36,7 @@ public class VisceralHeapBiome extends NetherBiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.FLESH, SurfaceBuilder.CONFIG_HELL));
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.VISCERAL_HEAP);
//Terrain
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_NETHER);

View File

@ -3,6 +3,7 @@ package biomesoplenty.common.biome.nether;
import biomesoplenty.api.enums.BOPClimates;
import biomesoplenty.common.biome.NetherBiomeTemplate;
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
import net.minecraft.client.audio.BackgroundMusicTracks;
import net.minecraft.entity.EntityClassification;
@ -33,7 +34,7 @@ public class WitheredAbyssBiome extends NetherBiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.WITHERED_ABYSS, BOPSurfaceBuilders.BLACKSTONE_SURFACE));
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.WITHERED_ABYSS);
//Terrain
builder.addStructureStart(StructureFeatures.NETHER_BRIDGE);
@ -51,7 +52,6 @@ public class WitheredAbyssBiome extends NetherBiomeTemplate
{
//Entities
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 1, 4, 4));
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMITE, 1, 1, 1));
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITHER_SKELETON, 1, 1, 1));
}
}

View File

@ -9,6 +9,7 @@ package biomesoplenty.common.biome.overworld;
import biomesoplenty.api.enums.BOPClimates;
import biomesoplenty.common.biome.BiomeTemplate;
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
import net.minecraft.entity.EntityClassification;
import net.minecraft.entity.EntityType;
@ -36,7 +37,7 @@ public class AlpsBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.DEEP_TOP_LAYER, BOPSurfaceBuilders.SNOW_SNOW_GRAVEL_SURFACE));
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.DEEP_SNOW);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -9,6 +9,7 @@ package biomesoplenty.common.biome.overworld;
import biomesoplenty.common.biome.BiomeTemplate;
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
import net.minecraft.entity.EntityClassification;
import net.minecraft.entity.EntityType;
import net.minecraft.world.biome.*;
@ -36,7 +37,7 @@ public class AlpsFoothillsBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_STONE));
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.ALPS_FOOTHILLS);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -17,6 +17,7 @@ import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.Features;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class BambooGroveBiome extends BiomeTemplate
@ -36,7 +37,7 @@ public class BambooGroveBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -18,6 +18,7 @@ import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.*;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class BayouBiome extends BiomeTemplate
@ -39,7 +40,7 @@ public class BayouBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
@ -53,12 +54,14 @@ public class BayouBiome extends BiomeTemplate
DefaultBiomeFeatures.addDefaultOres(builder);
DefaultBiomeFeatures.addSwampClayDisk(builder);
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, BOPConfiguredFeatures.MUD_DISK);
////////////////////////////////////////////////////////////
// Vegetation
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BAYOU_TREES);
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.CATTAIL_12);
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.CATTAIL_6);
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FERN_GRASS_8);
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LARGE_FERN_7);
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LILY_PAD_10);

View File

@ -7,23 +7,19 @@
******************************************************************************/
package biomesoplenty.common.biome.overworld;
import biomesoplenty.api.biome.BOPBiomes;
import biomesoplenty.api.enums.BOPClimates;
import biomesoplenty.common.biome.BiomeTemplate;
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
import net.minecraft.entity.EntityClassification;
import net.minecraft.entity.EntityType;
import net.minecraft.world.biome.*;
import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.*;
import net.minecraft.world.gen.feature.Features;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class BayouMangrove extends BiomeTemplate
public class BayouMangroveBiome extends BiomeTemplate
{
public BayouMangrove()
public BayouMangroveBiome()
{
this.setBeachBiome(null);
}
@ -31,7 +27,7 @@ public class BayouMangrove extends BiomeTemplate
@Override
protected void configureBiome(Biome.Builder builder)
{
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.SWAMP).depth(-0.275F).scale(-0.025F).temperature(0.95F).downfall(0.9F);
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.SWAMP).depth(-0.175F).scale(-0.075F).temperature(0.95F).downfall(0.9F);
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(0x62AF84).waterFogColor(0x0C211C).fogColor(12638463).skyColor(calculateSkyColor(0.95F)).grassColorOverride(0x6FAA50).foliageColorOverride(0x8BDB67).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
}
@ -39,7 +35,7 @@ public class BayouMangrove extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.MANGROVE, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.MANGROVE);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
@ -48,21 +44,19 @@ public class BayouMangrove extends BiomeTemplate
// Underground
DefaultBiomeFeatures.addDefaultCarvers(builder);
DefaultBiomeFeatures.addDefaultLakes(builder);
builder.addFeature(GenerationStage.Decoration.LAKES, BOPConfiguredFeatures.WATER_LAKE_COMMON);
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
DefaultBiomeFeatures.addDefaultOres(builder);
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, BOPConfiguredFeatures.MUD_DISK);
////////////////////////////////////////////////////////////
// Vegetation
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BAYOU_MANGROVE_TREES);
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.MANGROVE_ROOTS);
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SPROUTS_75);
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_12);
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TALL_GRASS_12);
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.WATERGRASS_25);
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.SEAGRASS_RIVER);
////////////////////////////////////////////////////////////
@ -76,9 +70,9 @@ public class BayouMangrove extends BiomeTemplate
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
{
// Entities
builder.addSpawn(EntityClassification.WATER_AMBIENT, new MobSpawnInfo.Spawners(EntityType.COD, 15, 3, 6));
builder.addSpawn(EntityClassification.WATER_CREATURE, new MobSpawnInfo.Spawners(EntityType.SQUID, 10, 4, 4));
builder.addSpawn(EntityClassification.WATER_CREATURE, new MobSpawnInfo.Spawners(EntityType.DOLPHIN, 2, 1, 2));
builder.addSpawn(EntityClassification.WATER_AMBIENT, new MobSpawnInfo.Spawners(EntityType.COD, 10, 3, 6));
builder.addSpawn(EntityClassification.WATER_AMBIENT, new MobSpawnInfo.Spawners(EntityType.TROPICAL_FISH, 5, 8, 8));
builder.addSpawn(EntityClassification.WATER_CREATURE, new MobSpawnInfo.Spawners(EntityType.SQUID, 5, 4, 4));
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));

View File

@ -17,6 +17,7 @@ import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.*;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class CherryBlossomGroveBiome extends BiomeTemplate
@ -37,7 +38,7 @@ public class CherryBlossomGroveBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -19,6 +19,7 @@ import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.*;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class ConiferousForestBiome extends BiomeTemplate
@ -40,7 +41,7 @@ public class ConiferousForestBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -11,6 +11,7 @@ import biomesoplenty.api.biome.BOPBiomes;
import biomesoplenty.api.enums.BOPClimates;
import biomesoplenty.common.biome.BiomeTemplate;
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
import biomesoplenty.init.ModEntities;
import net.minecraft.entity.EntityClassification;
@ -40,7 +41,7 @@ public class ConiferousLakesBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.EXPOSED_STONE, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.EXPOSED_STONE);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -18,6 +18,7 @@ import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.*;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class DeadForestBiome extends BiomeTemplate
@ -39,7 +40,7 @@ public class DeadForestBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
builder.addStructureStart(StructureFeatures.WOODLAND_MANSION);

View File

@ -18,6 +18,7 @@ import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.*;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class DeadSwampBiome extends BiomeTemplate
@ -38,7 +39,7 @@ public class DeadSwampBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
builder.addStructureStart(StructureFeatures.SWAMP_HUT);

View File

@ -18,6 +18,7 @@ import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.Features;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class DeepBayouBiome extends BiomeTemplate
@ -38,7 +39,7 @@ public class DeepBayouBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -10,6 +10,7 @@ package biomesoplenty.common.biome.overworld;
import biomesoplenty.api.enums.BOPClimates;
import biomesoplenty.common.biome.BiomeTemplate;
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
import net.minecraft.entity.EntityClassification;
import net.minecraft.entity.EntityType;
@ -38,7 +39,7 @@ public class DryBoneyardBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.DRYLAND, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.DRYLAND);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -11,6 +11,7 @@ import biomesoplenty.api.biome.BOPBiomes;
import biomesoplenty.api.enums.BOPClimates;
import biomesoplenty.common.biome.BiomeTemplate;
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
import net.minecraft.entity.EntityClassification;
import net.minecraft.entity.EntityType;
@ -39,7 +40,7 @@ public class DrylandBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.DRYLAND, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.DRYLAND);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -18,6 +18,7 @@ import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.*;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class FirClearingBiome extends BiomeTemplate
@ -38,7 +39,7 @@ public class FirClearingBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -16,6 +16,7 @@ import net.minecraft.world.biome.*;
import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class FlowerMeadowBiome extends BiomeTemplate
@ -36,7 +37,7 @@ public class FlowerMeadowBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -1,65 +0,0 @@
/*******************************************************************************
* Copyright 2014-2019, the Biomes O' Plenty Team
*
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
*
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
******************************************************************************/
package biomesoplenty.common.biome.overworld;
import biomesoplenty.api.enums.BOPClimates;
import biomesoplenty.common.biome.BiomeTemplate;
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
import net.minecraft.entity.EntityClassification;
import net.minecraft.entity.EntityType;
import net.minecraft.world.biome.*;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
public class FrozenGlacierBiome extends BiomeTemplate
{
public FrozenGlacierBiome()
{
this.setBeachBiome(null);
this.setRiverBiome(null);
}
@Override
protected void configureBiome(Biome.Builder builder)
{
builder.precipitation(Biome.RainType.SNOW).biomeCategory(Biome.Category.ICY).depth(0.7F).scale(-0.11F).temperature(-0.25F).downfall(0.6F);
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(3750089).waterFogColor(329011).fogColor(0xE8FAFF).skyColor(0xFFFFFF).grassColorOverride(0xBFF1FF).foliageColorOverride(0xE8FAFF).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
}
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.DEEP_TOP_LAYER, BOPSurfaceBuilders.GLACIER_SURFACE));
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
// Underground
DefaultBiomeFeatures.addDefaultCarvers(builder);
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
DefaultBiomeFeatures.addDefaultOres(builder);
DefaultBiomeFeatures.addDefaultSoftDisks(builder);
// Other Features
DefaultBiomeFeatures.addDefaultSprings(builder);
DefaultBiomeFeatures.addSurfaceFreezing(builder);
}
@Override
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
{
// Entities
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.SNOW_GOLEM, 15, 1, 3));
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.STRAY, 80, 4, 4));
}
}

View File

@ -10,50 +10,57 @@ package biomesoplenty.common.biome.overworld;
import biomesoplenty.api.enums.BOPClimates;
import biomesoplenty.common.biome.BiomeTemplate;
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
import net.minecraft.entity.EntityClassification;
import net.minecraft.entity.EntityType;
import net.minecraft.world.biome.*;
import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.feature.Features;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
public class FrozenWonderlandBiome extends BiomeTemplate
public class FungalFieldBiome extends BiomeTemplate
{
public FrozenWonderlandBiome()
public FungalFieldBiome()
{
this.addWeight(BOPClimates.ICE_CAP, 1);
this.setBeachBiome(null);
this.setRiverBiome(null);
this.setGrassColorFunction(this::getGrassColor);
}
@Override
protected void configureBiome(Biome.Builder builder)
{
builder.precipitation(Biome.RainType.SNOW).biomeCategory(Biome.Category.ICY).depth(0.0F).scale(0.0F).temperature(-0.25F).downfall(0.6F);
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.JUNGLE).depth(0.1F).scale(0.0F).temperature(0.9F).downfall(0.9F);
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(3750089).waterFogColor(329011).fogColor(0xE8FAFF).skyColor(0xFFFFFF).grassColorOverride(0xBFF1FF).foliageColorOverride(0xE8FAFF).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4445678).waterFogColor(270131).fogColor(12638463).skyColor(calculateSkyColor(0.9F)).grassColorOverride(0x4AA2F9).foliageColorOverride(0x4ADCF9).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
}
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.DEEP_TOP_LAYER, BOPSurfaceBuilders.SNOW_SNOW_GRAVEL_SURFACE));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
builder.addStructureStart(StructureFeatures.IGLOO);
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
// Underground
DefaultBiomeFeatures.addDefaultCarvers(builder);
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
DefaultBiomeFeatures.addDefaultOres(builder);
DefaultBiomeFeatures.addDefaultSoftDisks(builder);
////////////////////////////////////////////////////////////
// Vegetation
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FERN_GRASS_16);
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.GLOWSHROOM_UNCOMMON);
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LARGE_FERN_14);
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SMALL_GLOWSHROOM_UNCOMMON);
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TALL_GRASS_64);
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL);
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.RED_MUSHROOM_NORMAL);
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.SEAGRASS_SWAMP);
////////////////////////////////////////////////////////////
// Other Features
DefaultBiomeFeatures.addDefaultSprings(builder);
@ -64,11 +71,21 @@ public class FrozenWonderlandBiome extends BiomeTemplate
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
{
// Entities
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.SNOW_GOLEM, 15, 1, 3));
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.MOOSHROOM, 8, 4, 8));
builder.addSpawn(EntityClassification.AMBIENT, new MobSpawnInfo.Spawners(EntityType.BAT, 10, 8, 8));
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SPIDER, 100, 4, 4));
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE, 95, 4, 4));
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ZOMBIE_VILLAGER, 5, 1, 1));
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SKELETON, 100, 4, 4));
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CREEPER, 100, 4, 4));
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.ENDERMAN, 10, 1, 4));
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.STRAY, 80, 4, 4));
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.WITCH, 5, 1, 1));
}
public int getGrassColor(double x, double z)
{
double d0 = Biome.BIOME_INFO_NOISE.getValue(x * 0.0225D, z * 0.0225D, false);
return d0 < -0.1D ? 0x4AA2F9 : 0x4DD6CA;
}
}

View File

@ -17,6 +17,7 @@ import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.*;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class FungalJungleBiome extends BiomeTemplate
@ -39,7 +40,7 @@ public class FungalJungleBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -15,6 +15,7 @@ import net.minecraft.world.biome.*;
import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class GoldenPrairieBiome extends BiomeTemplate
@ -32,7 +33,7 @@ public class GoldenPrairieBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -8,6 +8,7 @@
package biomesoplenty.common.biome.overworld;
import biomesoplenty.common.biome.BiomeTemplate;
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
import net.minecraft.entity.EntityClassification;
import net.minecraft.entity.EntityType;
import net.minecraft.world.biome.*;
@ -33,7 +34,7 @@ public class GravelBeachBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRAVEL));
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.GRAVEL_FULL);
// Structures
builder.addStructureStart(StructureFeatures.MINESHAFT);

View File

@ -10,6 +10,7 @@ package biomesoplenty.common.biome.overworld;
import biomesoplenty.api.enums.BOPClimates;
import biomesoplenty.common.biome.BiomeTemplate;
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
import net.minecraft.entity.EntityClassification;
import net.minecraft.entity.EntityType;
@ -39,7 +40,7 @@ public class GroveBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.PODZOL, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.PODZOL_MIXED);
// Structures
builder.addStructureStart(StructureFeatures.VILLAGE_PLAINS);

View File

@ -18,6 +18,7 @@ import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.Features;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class GroveClearingBiome extends BiomeTemplate
@ -38,7 +39,7 @@ public class GroveClearingBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
builder.addStructureStart(StructureFeatures.VILLAGE_PLAINS);

View File

@ -10,6 +10,7 @@ package biomesoplenty.common.biome.overworld;
import biomesoplenty.api.enums.BOPClimates;
import biomesoplenty.common.biome.BiomeTemplate;
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
import net.minecraft.entity.EntityClassification;
import net.minecraft.entity.EntityType;
@ -38,7 +39,7 @@ public class GroveLakesBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, BOPSurfaceBuilders.DIORITE_SURFACE));
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.GROVE_LAKES);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -16,6 +16,7 @@ import net.minecraft.world.biome.*;
import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class HighlandBiome extends BiomeTemplate
@ -37,7 +38,7 @@ public class HighlandBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -10,6 +10,7 @@ package biomesoplenty.common.biome.overworld;
import biomesoplenty.api.enums.BOPClimates;
import biomesoplenty.common.biome.BiomeTemplate;
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
import net.minecraft.entity.EntityClassification;
import net.minecraft.entity.EntityType;
@ -37,7 +38,7 @@ public class HighlandCragBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.HIGHLAND_CRAG, SurfaceBuilder.CONFIG_STONE));
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.HIGHLAND_CRAG);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -16,6 +16,7 @@ import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.*;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class HighlandMoorBiome extends BiomeTemplate
@ -36,7 +37,7 @@ public class HighlandMoorBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -10,6 +10,7 @@ package biomesoplenty.common.biome.overworld;
import biomesoplenty.api.enums.BOPClimates;
import biomesoplenty.common.biome.BiomeTemplate;
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
import net.minecraft.entity.EntityClassification;
import net.minecraft.entity.EntityType;
@ -39,7 +40,7 @@ public class JadeCliffsBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.DEEP_TOP_LAYER, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.DEEP_GRASS);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -10,6 +10,7 @@ package biomesoplenty.common.biome.overworld;
import biomesoplenty.api.enums.BOPClimates;
import biomesoplenty.common.biome.BiomeTemplate;
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
import net.minecraft.entity.EntityClassification;
import net.minecraft.entity.EntityType;
@ -38,7 +39,7 @@ public class JadeGrasslandBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.DEEP_TOP_LAYER, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.DEEP_GRASS);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -17,6 +17,7 @@ import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.*;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class LavenderFieldBiome extends BiomeTemplate
@ -37,7 +38,7 @@ public class LavenderFieldBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -17,6 +17,7 @@ import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.Features;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class LavenderForestBiome extends BiomeTemplate
@ -36,7 +37,7 @@ public class LavenderForestBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -11,6 +11,7 @@ import biomesoplenty.api.biome.BOPBiomes;
import biomesoplenty.api.enums.BOPClimates;
import biomesoplenty.common.biome.BiomeTemplate;
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
import net.minecraft.entity.EntityClassification;
import net.minecraft.entity.EntityType;
@ -40,7 +41,7 @@ public class LushDesertBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.LUSH_DESERT, BOPSurfaceBuilders.ORANGE_SAND_SURFACE));
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.LUSH_DESERT);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -10,6 +10,7 @@ package biomesoplenty.common.biome.overworld;
import biomesoplenty.api.enums.BOPClimates;
import biomesoplenty.common.biome.BiomeTemplate;
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
import net.minecraft.entity.EntityClassification;
import net.minecraft.entity.EntityType;
@ -38,7 +39,7 @@ public class LushSavannaBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.LUSH_SAVANNA, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.LUSH_SAVANNA);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -18,6 +18,7 @@ import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.*;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class MeadowBiome extends BiomeTemplate
@ -39,7 +40,7 @@ public class MeadowBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
builder.addStructureStart(StructureFeatures.VILLAGE_TAIGA);

View File

@ -18,6 +18,7 @@ import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.Features;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class MeadowForestBiome extends BiomeTemplate
@ -38,7 +39,7 @@ public class MeadowForestBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
builder.addStructureStart(StructureFeatures.VILLAGE_TAIGA);

View File

@ -17,6 +17,7 @@ import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.*;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class MysticGroveBiome extends BiomeTemplate
@ -39,7 +40,7 @@ public class MysticGroveBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -17,6 +17,7 @@ import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.Features;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class MysticPlainsBiome extends BiomeTemplate
@ -38,7 +39,7 @@ public class MysticPlainsBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -10,6 +10,7 @@ package biomesoplenty.common.biome.overworld;
import biomesoplenty.api.enums.BOPClimates;
import biomesoplenty.common.biome.BiomeTemplate;
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
import net.minecraft.entity.EntityClassification;
import net.minecraft.entity.EntityType;
@ -39,7 +40,7 @@ public class OminousMireBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.MARSH, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.MARSH);
// Structures
builder.addStructureStart(StructureFeatures.SWAMP_HUT);
@ -55,7 +56,6 @@ public class OminousMireBiome extends BiomeTemplate
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
DefaultBiomeFeatures.addDefaultOres(builder);
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, BOPConfiguredFeatures.MUD_DISK);
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, BOPConfiguredFeatures.BLACK_SAND_DISK);
////////////////////////////////////////////////////////////

View File

@ -17,6 +17,7 @@ import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.*;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class OminousWoodsBiome extends BiomeTemplate
@ -39,7 +40,7 @@ public class OminousWoodsBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
builder.addStructureStart(StructureFeatures.WOODLAND_MANSION);

View File

@ -16,6 +16,7 @@ import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.*;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class OrchardBiome extends BiomeTemplate
@ -33,7 +34,7 @@ public class OrchardBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -12,6 +12,7 @@ import biomesoplenty.common.world.gen.carver.BOPConfiguredCarvers;
import biomesoplenty.common.world.gen.carver.BOPWorldCarvers;
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
import biomesoplenty.common.world.gen.feature.BOPFeatures;
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
import net.minecraft.entity.EntityClassification;
import net.minecraft.entity.EntityType;
@ -39,7 +40,7 @@ public class OriginValleyBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.ORIGIN_VALLEY, BOPSurfaceBuilders.ORIGIN_GRASS_SURFACE));
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.ORIGIN_VALLEY);
// Underground
builder.addCarver(GenerationStage.Carving.AIR, BOPConfiguredCarvers.ORIGIN_CAVE);

View File

@ -17,6 +17,7 @@ import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.Features;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class OvergrownFungalJungleBiome extends BiomeTemplate
@ -38,7 +39,7 @@ public class OvergrownFungalJungleBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
@ -59,6 +60,7 @@ public class OvergrownFungalJungleBiome extends BiomeTemplate
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.GLOWSHROOM_EXTRA);
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.HUGE_GLOWSHROOM_EXTRA);
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LARGE_FERN_14);
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.MYCELIUM_SPLATTER);
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SMALL_GLOWSHROOM_EXTRA);
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TALL_GRASS_24);
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL);

View File

@ -16,6 +16,7 @@ import net.minecraft.world.biome.*;
import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class PrairieBiome extends BiomeTemplate
@ -36,7 +37,7 @@ public class PrairieBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
builder.addStructureStart(StructureFeatures.VILLAGE_PLAINS);

View File

@ -16,6 +16,7 @@ import net.minecraft.world.biome.*;
import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.*;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class RainbowHillsBiome extends BiomeTemplate
@ -37,7 +38,7 @@ public class RainbowHillsBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -18,6 +18,7 @@ import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.*;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class RainforestBiome extends BiomeTemplate
@ -39,7 +40,7 @@ public class RainforestBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
builder.addStructureStart(StructureFeatures.JUNGLE_TEMPLE);

View File

@ -10,6 +10,7 @@ package biomesoplenty.common.biome.overworld;
import biomesoplenty.api.enums.BOPClimates;
import biomesoplenty.common.biome.BiomeTemplate;
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
import net.minecraft.entity.EntityClassification;
import net.minecraft.entity.EntityType;
@ -38,7 +39,7 @@ public class RainforestCliffsBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.TERRACOTTA, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.RAINFOREST_CLIFFS);
// Structures
builder.addStructureStart(StructureFeatures.JUNGLE_TEMPLE);

View File

@ -17,6 +17,7 @@ import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.*;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class RainforestFloodplainBiome extends BiomeTemplate
@ -37,7 +38,7 @@ public class RainforestFloodplainBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.SWAMP, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.SWAMP);
// Structures
builder.addStructureStart(StructureFeatures.JUNGLE_TEMPLE);

View File

@ -10,6 +10,7 @@ package biomesoplenty.common.biome.overworld;
import biomesoplenty.api.enums.BOPClimates;
import biomesoplenty.common.biome.BiomeTemplate;
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
import net.minecraft.entity.EntityClassification;
import net.minecraft.entity.EntityType;
import net.minecraft.world.biome.*;
@ -37,7 +38,7 @@ public class RedwoodForestBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_PODZOL));
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.PODZOL_FULL);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -9,6 +9,7 @@ package biomesoplenty.common.biome.overworld;
import biomesoplenty.common.biome.BiomeTemplate;
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
import net.minecraft.entity.EntityClassification;
import net.minecraft.entity.EntityType;
@ -34,7 +35,7 @@ public class RedwoodForestEdgeBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.PODZOL, SurfaceBuilder.CONFIG_PODZOL));
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.PODZOL_MIXED);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -10,6 +10,7 @@ package biomesoplenty.common.biome.overworld;
import biomesoplenty.api.enums.BOPClimates;
import biomesoplenty.common.biome.BiomeTemplate;
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
import net.minecraft.entity.EntityClassification;
import net.minecraft.entity.EntityType;
import net.minecraft.world.biome.*;
@ -36,7 +37,7 @@ public class RedwoodHillsBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_PODZOL));
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.PODZOL_FULL);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -16,6 +16,7 @@ import net.minecraft.world.biome.*;
import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class ScrublandBiome extends BiomeTemplate
@ -36,7 +37,7 @@ public class ScrublandBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
builder.addStructureStart(StructureFeatures.VILLAGE_SAVANNA);

View File

@ -19,6 +19,7 @@ import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.*;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class SeasonalForestBiome extends BiomeTemplate
@ -40,7 +41,7 @@ public class SeasonalForestBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
builder.addStructureStart(StructureFeatures.WOODLAND_MANSION);

View File

@ -18,6 +18,7 @@ import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.Features;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class SeasonalOrchardBiome extends BiomeTemplate
@ -38,7 +39,7 @@ public class SeasonalOrchardBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
builder.addStructureStart(StructureFeatures.WOODLAND_MANSION);

View File

@ -17,6 +17,7 @@ import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.*;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class SeasonalPumpkinPatchBiome extends BiomeTemplate
@ -37,7 +38,7 @@ public class SeasonalPumpkinPatchBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -17,6 +17,7 @@ import net.minecraft.world.biome.*;
import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class ShrublandBiome extends BiomeTemplate
@ -38,7 +39,7 @@ public class ShrublandBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
builder.addStructureStart(StructureFeatures.VILLAGE_PLAINS);

View File

@ -11,6 +11,7 @@ import biomesoplenty.api.biome.BOPBiomes;
import biomesoplenty.api.enums.BOPClimates;
import biomesoplenty.common.biome.BiomeTemplate;
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
import net.minecraft.entity.EntityClassification;
import net.minecraft.entity.EntityType;
@ -38,7 +39,7 @@ public class ShrublandHillsBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.EXPOSED_STONE, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.EXPOSED_STONE);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -17,6 +17,7 @@ import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.*;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class SilkgladeBiome extends BiomeTemplate
@ -40,7 +41,7 @@ public class SilkgladeBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
builder.addStructureStart(StructureFeatures.SWAMP_HUT);

View File

@ -17,6 +17,7 @@ import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.Features;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class SilkgladeNestBiome extends BiomeTemplate
@ -39,7 +40,7 @@ public class SilkgladeNestBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
builder.addStructureStart(StructureFeatures.SWAMP_HUT);

View File

@ -18,6 +18,7 @@ import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.*;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class SnowyConiferousForestBiome extends BiomeTemplate
@ -38,7 +39,7 @@ public class SnowyConiferousForestBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
builder.addStructureStart(StructureFeatures.IGLOO);

View File

@ -17,6 +17,7 @@ import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.*;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class SnowyFirClearingBiome extends BiomeTemplate
@ -34,7 +35,7 @@ public class SnowyFirClearingBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
builder.addStructureStart(StructureFeatures.IGLOO);

View File

@ -18,6 +18,7 @@ import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.Features;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class SnowyMapleForestBiome extends BiomeTemplate
@ -37,7 +38,7 @@ public class SnowyMapleForestBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
builder.addStructureStart(StructureFeatures.IGLOO);

View File

@ -9,6 +9,7 @@ package biomesoplenty.common.biome.overworld;
import biomesoplenty.common.biome.BiomeTemplate;
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
import net.minecraft.entity.EntityClassification;
import net.minecraft.entity.EntityType;
@ -37,7 +38,7 @@ public class TropicBeachBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.TROPICS, BOPSurfaceBuilders.WHITE_SAND_SURFACE));
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.TROPIC_BEACH);
// Structures

View File

@ -11,6 +11,7 @@ import biomesoplenty.api.biome.BOPBiomes;
import biomesoplenty.api.enums.BOPClimates;
import biomesoplenty.common.biome.BiomeTemplate;
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
import net.minecraft.entity.EntityClassification;
import net.minecraft.entity.EntityType;
@ -39,7 +40,7 @@ public class TundraBasinBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRAVEL));
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.GRAVEL_FULL);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -17,6 +17,7 @@ import net.minecraft.world.biome.*;
import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class TundraBiome extends BiomeTemplate
@ -38,7 +39,7 @@ public class TundraBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS)) ;
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
builder.addStructureStart(StructureFeatures.VILLAGE_TAIGA);

View File

@ -17,6 +17,7 @@ import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.*;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class TundraBogBiome extends BiomeTemplate
@ -37,7 +38,7 @@ public class TundraBogBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -9,6 +9,7 @@ package biomesoplenty.common.biome.overworld;
import biomesoplenty.common.biome.BiomeTemplate;
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
import net.minecraft.entity.EntityClassification;
import net.minecraft.entity.EntityType;
@ -37,7 +38,7 @@ public class VolcanicPlainsBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.BLACK_SAND, BOPSurfaceBuilders.BLACK_SAND_SURFACE));
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.VOLCANIC_PLAINS);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -10,6 +10,7 @@ package biomesoplenty.common.biome.overworld;
import biomesoplenty.api.biome.BOPBiomes;
import biomesoplenty.common.biome.BiomeTemplate;
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
import net.minecraft.entity.EntityClassification;
import net.minecraft.entity.EntityType;
@ -38,7 +39,7 @@ public class VolcanoBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.VOLCANO, BOPSurfaceBuilders.BASALT_SURFACE));
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.VOLCANO);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -10,6 +10,7 @@ package biomesoplenty.common.biome.overworld;
import biomesoplenty.api.enums.BOPClimates;
import biomesoplenty.common.biome.BiomeTemplate;
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
import net.minecraft.entity.EntityClassification;
import net.minecraft.entity.EntityType;
@ -39,7 +40,7 @@ public class WastelandBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, BOPSurfaceBuilders.DRIED_SALT_SURFACE));
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.WASTELAND);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -17,6 +17,7 @@ import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.*;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class WetlandBiome extends BiomeTemplate
@ -38,7 +39,7 @@ public class WetlandBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
builder.addStructureStart(StructureFeatures.SWAMP_HUT);

View File

@ -10,6 +10,7 @@ package biomesoplenty.common.biome.overworld;
import biomesoplenty.api.enums.BOPClimates;
import biomesoplenty.common.biome.BiomeTemplate;
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
import net.minecraft.entity.EntityClassification;
import net.minecraft.entity.EntityType;
@ -38,7 +39,7 @@ public class WetlandMarshBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.MARSH, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.MARSH);
// Structures
builder.addStructureStart(StructureFeatures.SWAMP_HUT);

View File

@ -17,6 +17,7 @@ import net.minecraft.world.gen.GenerationStage;
import net.minecraft.world.gen.feature.Features;
import net.minecraft.world.gen.feature.structure.StructureFeatures;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilders;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
public class WoodedScrublandBiome extends BiomeTemplate
@ -36,7 +37,7 @@ public class WoodedScrublandBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
builder.surfaceBuilder(ConfiguredSurfaceBuilders.GRASS);
// Structures
builder.addStructureStart(StructureFeatures.VILLAGE_SAVANNA);

View File

@ -10,6 +10,7 @@ package biomesoplenty.common.biome.overworld;
import biomesoplenty.api.enums.BOPClimates;
import biomesoplenty.common.biome.BiomeTemplate;
import biomesoplenty.common.world.gen.feature.BOPConfiguredFeatures;
import biomesoplenty.common.world.gen.surfacebuilders.BOPConfiguredSurfaceBuilders;
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
import net.minecraft.entity.EntityClassification;
import net.minecraft.entity.EntityType;
@ -39,7 +40,7 @@ public class WoodedWastelandBiome extends BiomeTemplate
@Override
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
{
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, BOPSurfaceBuilders.DRIED_SALT_SURFACE));
builder.surfaceBuilder(BOPConfiguredSurfaceBuilders.WASTELAND);
// Structures
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);

View File

@ -43,7 +43,7 @@ public class BOPNetherBiomeProvider extends BiomeProvider
public BOPNetherBiomeProvider(long seed, Registry<Biome> biomes)
{
super(Stream.concat(VANILLA_POSSIBLE_BIOMES.stream(), BOPClimates.NETHER.getLandBiomes().stream().map((entry) -> entry.biome)).map(BiomeUtil::getBiome).collect(Collectors.toList()));
super(Stream.concat(VANILLA_POSSIBLE_BIOMES.stream(), BOPClimates.NETHER.getLandBiomes().stream().map((entry) -> entry.biome)).map(biomes::get).collect(Collectors.toList()));
this.seed = seed;
this.noiseBiomeLayer = BOPNetherLayerUtil.createGenLayers(seed);
this.biomes = biomes;

View File

@ -95,11 +95,19 @@ public class BOPWorldTypeUtil
if (server.getWorldData() instanceof ServerWorldInfo)
{
ServerWorldInfo worldInfo = (ServerWorldInfo)server.getWorldData();
worldInfo.worldGenSettings = createDimensionGeneratorSettings(server.registryAccess(), worldInfo.worldGenSettings.seed(), worldInfo.worldGenSettings.generateFeatures(), worldInfo.worldGenSettings.generateBonusChest());
ServerWorldInfo worldInfo = (ServerWorldInfo) server.getWorldData();
// Only replace the worldGenSettings if it doesn't appear to already be the bop world type
if (!isUsingBopWorldType(worldInfo.worldGenSettings))
{
worldInfo.worldGenSettings = createDimensionGeneratorSettings(server.registryAccess(), worldInfo.worldGenSettings.seed(), worldInfo.worldGenSettings.generateFeatures(), worldInfo.worldGenSettings.generateBonusChest());
}
}
// Replace the world gen settings in server.properties
properties.worldGenSettings = createDimensionGeneratorSettings(server.registryAccess(), properties.worldGenSettings.seed(), properties.worldGenSettings.generateFeatures(), properties.worldGenSettings.generateBonusChest());
if (!isUsingBopWorldType(properties.worldGenSettings))
{
properties.worldGenSettings = createDimensionGeneratorSettings(server.registryAccess(), properties.worldGenSettings.seed(), properties.worldGenSettings.generateFeatures(), properties.worldGenSettings.generateBonusChest());
}
}
}

View File

@ -13,6 +13,7 @@ import net.minecraft.util.registry.Registry;
import net.minecraft.world.gen.carver.ICarverConfig;
import net.minecraft.world.gen.carver.WorldCarver;
import net.minecraft.world.gen.feature.ProbabilityConfig;
import net.minecraftforge.registries.ForgeRegistries;
public class BOPWorldCarvers
{
@ -21,6 +22,8 @@ public class BOPWorldCarvers
private static <C extends ICarverConfig, F extends WorldCarver<C>> F register(String key, F carver)
{
return Registry.register(Registry.CARVER, new ResourceLocation(BiomesOPlenty.MOD_ID, key), carver);
carver.setRegistryName(new ResourceLocation(BiomesOPlenty.MOD_ID, key));
ForgeRegistries.WORLD_CARVERS.register(carver);
return carver;
}
}

View File

@ -110,7 +110,6 @@ public class BOPConfiguredFeatures
public static final ConfiguredFeature<?, ?> ALPS_FOOTHILLS_TREES = register("alps_foothills_trees", ALPS_SPRUCE_TREE.decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(2, 0.1F, 1))));
public static final ConfiguredFeature<?, ?> BAMBOO_GROVE_TREES = register("bamboo_grove_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(WHITE_CHERRY_TREE_BEES.weighted(0.05F), PINK_CHERRY_TREE_BEES.weighted(0.05F), BIG_WHITE_CHERRY_TREE.weighted(0.05F), BIG_PINK_CHERRY_TREE.weighted(0.05F), BIG_FLOWERING_OAK_TREE.weighted(0.1F), FLOWERING_BUSH.weighted(0.3F)), FLOWERING_OAK_TREE_BEES)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(7, 0.3F, 1))));
public static final ConfiguredFeature<?, ?> BAYOU_TREES = register("bayou_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(CYPRESS_TREE_MEDIUM.weighted(0.3F)), CYPRESS_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(2, 0.6F, 1))));
public static final ConfiguredFeature<?, ?> BAYOU_MANGROVE_TREES = register("bayou_mangrove_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(CYPRESS_TREE_MEDIUM.weighted(0.05F)), BUSH)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(15, 0.6F, 1))));
public static final ConfiguredFeature<?, ?> CHERRY_BLOSSOM_GROVE_TREES = register("cherry_blossom_grove_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(WHITE_CHERRY_TREE_BEES.weighted(0.1F), PINK_CHERRY_TREE_BEES.weighted(0.2F), BIG_WHITE_CHERRY_TREE.weighted(0.3F), FLOWERING_OAK_TREE_BEES.weighted(0.15F), FLOWERING_BUSH.weighted(0.3F)), BIG_PINK_CHERRY_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(5, 0.3F, 1))));
public static final ConfiguredFeature<?, ?> CONIFEROUS_FOREST_TREES = register("coniferous_forest_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(FIR_TREE.weighted(0.33333334F)), FIR_TREE_LARGE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(10, 0.1F, 1))));
public static final ConfiguredFeature<?, ?> CONIFEROUS_LAKES_TREES = register("coniferous_lakes_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(FIR_TREE.weighted(0.1F)), FIR_TREE_SMALL)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(5, 0.1F, 1))));
@ -246,6 +245,7 @@ public class BOPConfiguredFeatures
public static final ConfiguredFeature<?, ?> TOADSTOOL_NORMAL = register("toadstool_normal", Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(BOPBlocks.toadstool.defaultBlockState())).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(1)));
public static final ConfiguredFeature<?, ?> TOADSTOOL_EXTRA = register("toadstool_extra", Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(BOPBlocks.toadstool.defaultBlockState())).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(3)));
public static final ConfiguredFeature<?, ?> GLOWSHROOM_UNCOMMON = register("glowshroom_uncommon", Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(BOPBlocks.glowshroom.defaultBlockState())).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(7)));
public static final ConfiguredFeature<?, ?> GLOWSHROOM_NORMAL = register("glowshroom_normal", Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(BOPBlocks.glowshroom.defaultBlockState())).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(20)));
public static final ConfiguredFeature<?, ?> GLOWSHROOM_EXTRA = register("glowshroom_extra", Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(BOPBlocks.glowshroom.defaultBlockState())).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(50)));
public static final ConfiguredFeature<?, ?> BARLEY = register("barley", Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(BOPBlocks.barley.defaultBlockState())).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE).decorated(FeatureUtil.denseCount(500)));
@ -306,7 +306,6 @@ public class BOPConfiguredFeatures
public static final ConfiguredFeature<?, ?> LARGE_CRYSTAL = register("large_crystal", BOPFeatures.LARGE_CRYSTAL.configured(IFeatureConfig.NONE).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE).decorated(FeatureUtil.denseCount(200)));
public static final ConfiguredFeature<?, ?> LAVA_LAKE_COMMON = register("lava_lake_common", Feature.LAKE.configured(new BlockStateFeatureConfig(Blocks.LAVA.defaultBlockState())).decorated(Placement.LAVA_LAKE.configured(new ChanceConfig(10))));
public static final ConfiguredFeature<?, ?> MUD_DISK = register("mud_disk", Feature.DISK.configured(new SphereReplaceConfig(BOPBlocks.mud.defaultBlockState(), FeatureSpread.of(4, 2), 1, ImmutableList.of(Blocks.DIRT.defaultBlockState(), Blocks.GRASS_BLOCK.defaultBlockState()))).decorated(Features.Placements.TOP_SOLID_HEIGHTMAP_SQUARE).count(5));
public static final ConfiguredFeature<?, ?> MUD_LAKE = register("mud_lake", Feature.LAKE.configured(new BlockStateFeatureConfig(BOPBlocks.mud.defaultBlockState())).decorated(Placement.WATER_LAKE.configured(new ChanceConfig(3))));
public static final ConfiguredFeature<?, ?> MYCELIUM_SPLATTER = register("mycelium_splatter", BOPFeatures.MYCELIUM_SPLATTER.configured(IFeatureConfig.NONE).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(14)));
public static final ConfiguredFeature<?, ?> NETHER_BRAMBLE = register("nether_bramble", BOPFeatures.BRAMBLE.configured(IFeatureConfig.NONE).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(50)));
public static final ConfiguredFeature<?, ?> NETHER_VINES = register("nether_vines", BOPFeatures.NETHER_VINES.configured(IFeatureConfig.NONE).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE).decorated(FeatureUtil.denseCount(150)));
@ -322,6 +321,7 @@ public class BOPConfiguredFeatures
public static final ConfiguredFeature<?, ?> SHORT_BAMBOO_5 = register("short_bamboo_5", BOPFeatures.SHORT_BAMBOO.configured(IFeatureConfig.NONE).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(5)));
public static final ConfiguredFeature<?, ?> SMALL_BROWN_MUSHROOM = register("small_brown_mushroom", BOPFeatures.SMALL_BROWN_MUSHROOM.configured(IFeatureConfig.NONE).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(3)));
public static final ConfiguredFeature<?, ?> SMALL_CRYSTAL = register("small_crystal", BOPFeatures.SMALL_CRYSTAL.configured(IFeatureConfig.NONE).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(40)));
public static final ConfiguredFeature<?, ?> SMALL_GLOWSHROOM_UNCOMMON = register("small_glowshroom_uncommon", BOPFeatures.SMALL_GLOWSHROOM.configured(IFeatureConfig.NONE).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(1)));
public static final ConfiguredFeature<?, ?> SMALL_GLOWSHROOM = register("small_glowshroom", BOPFeatures.SMALL_GLOWSHROOM.configured(IFeatureConfig.NONE).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(3)));
public static final ConfiguredFeature<?, ?> SMALL_GLOWSHROOM_EXTRA = register("small_glowshroom_extra", BOPFeatures.SMALL_GLOWSHROOM.configured(IFeatureConfig.NONE).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(12)));
public static final ConfiguredFeature<?, ?> SMALL_RED_MUSHROOM = register("small_red_mushroom", BOPFeatures.SMALL_RED_MUSHROOM.configured(IFeatureConfig.NONE).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(1)));

View File

@ -19,6 +19,7 @@ import net.minecraft.util.Direction;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.registry.Registry;
import net.minecraft.world.gen.feature.*;
import net.minecraftforge.registries.ForgeRegistries;
public class BOPFeatures
{
@ -173,6 +174,8 @@ public class BOPFeatures
private static <C extends IFeatureConfig, F extends Feature<C>> F register(String key, F value)
{
return Registry.register(Registry.FEATURE, new ResourceLocation(BiomesOPlenty.MOD_ID, key), value);
value.setRegistryName(new ResourceLocation(BiomesOPlenty.MOD_ID, key));
ForgeRegistries.FEATURES.register(value);
return value;
}
}

View File

@ -35,39 +35,42 @@ public class MangroveFeature extends Feature<NoFeatureConfig> {
world.setBlock(blockpos, blockstate, 2);
((DoublePlantBlock)blockstate.getBlock()).placeAt(world, blockpos, 2);
BlockPos leaves1 = blockpos.above().above();
BlockPos leaves2 = leaves1.north();
BlockPos leaves3 = leaves1.south();
BlockPos leaves4 = leaves1.east();
BlockPos leaves5 = leaves1.west();
BlockPos leaves6 = leaves1.above();
if (world.getBlockState(leaves1).canBeReplacedByLeaves(world, leaves1))
if (rand.nextInt(5) != 0)
{
world.setBlock(leaves1, Blocks.OAK_LEAVES.defaultBlockState().setValue(LeavesBlock.PERSISTENT, true), 2);
}
BlockPos leaves1 = blockpos.above().above();
BlockPos leaves2 = leaves1.north();
BlockPos leaves3 = leaves1.south();
BlockPos leaves4 = leaves1.east();
BlockPos leaves5 = leaves1.west();
BlockPos leaves6 = leaves1.above();
if (rand.nextInt(2) == 0)
{
if (world.getBlockState(leaves2).canBeReplacedByLeaves(world, leaves2))
if (world.getBlockState(leaves1).canBeReplacedByLeaves(world, leaves1))
{
world.setBlock(leaves2, Blocks.OAK_LEAVES.defaultBlockState().setValue(LeavesBlock.PERSISTENT, true), 2);
world.setBlock(leaves1, Blocks.OAK_LEAVES.defaultBlockState().setValue(LeavesBlock.PERSISTENT, true), 2);
}
if (world.getBlockState(leaves3).canBeReplacedByLeaves(world, leaves3))
if (rand.nextInt(2) == 0)
{
world.setBlock(leaves3, Blocks.OAK_LEAVES.defaultBlockState().setValue(LeavesBlock.PERSISTENT, true), 2);
}
if (world.getBlockState(leaves4).canBeReplacedByLeaves(world, leaves4))
{
world.setBlock(leaves4, Blocks.OAK_LEAVES.defaultBlockState().setValue(LeavesBlock.PERSISTENT, true), 2);
}
if (world.getBlockState(leaves5).canBeReplacedByLeaves(world, leaves5))
{
world.setBlock(leaves5, Blocks.OAK_LEAVES.defaultBlockState().setValue(LeavesBlock.PERSISTENT, true), 2);
}
if (world.getBlockState(leaves6).canBeReplacedByLeaves(world, leaves6))
{
world.setBlock(leaves6, Blocks.OAK_LEAVES.defaultBlockState().setValue(LeavesBlock.PERSISTENT, true), 2);
if (world.getBlockState(leaves2).canBeReplacedByLeaves(world, leaves2))
{
world.setBlock(leaves2, Blocks.OAK_LEAVES.defaultBlockState().setValue(LeavesBlock.PERSISTENT, true), 2);
}
if (world.getBlockState(leaves3).canBeReplacedByLeaves(world, leaves3))
{
world.setBlock(leaves3, Blocks.OAK_LEAVES.defaultBlockState().setValue(LeavesBlock.PERSISTENT, true), 2);
}
if (world.getBlockState(leaves4).canBeReplacedByLeaves(world, leaves4))
{
world.setBlock(leaves4, Blocks.OAK_LEAVES.defaultBlockState().setValue(LeavesBlock.PERSISTENT, true), 2);
}
if (world.getBlockState(leaves5).canBeReplacedByLeaves(world, leaves5))
{
world.setBlock(leaves5, Blocks.OAK_LEAVES.defaultBlockState().setValue(LeavesBlock.PERSISTENT, true), 2);
}
if (world.getBlockState(leaves6).canBeReplacedByLeaves(world, leaves6))
{
world.setBlock(leaves6, Blocks.OAK_LEAVES.defaultBlockState().setValue(LeavesBlock.PERSISTENT, true), 2);
}
}
}
++i;

View File

@ -14,6 +14,7 @@ import net.minecraft.util.ResourceLocation;
import net.minecraft.util.registry.Registry;
import net.minecraft.world.gen.feature.FeatureSpreadConfig;
import net.minecraft.world.gen.placement.*;
import net.minecraftforge.registries.ForgeRegistries;
public class BOPPlacements
{
@ -22,6 +23,8 @@ public class BOPPlacements
private static <T extends IPlacementConfig, G extends Placement<T>> G register(String key, G placement)
{
return Registry.register(Registry.DECORATOR, new ResourceLocation(BiomesOPlenty.MOD_ID, key), placement);
placement.setRegistryName(new ResourceLocation(BiomesOPlenty.MOD_ID, key));
ForgeRegistries.DECORATORS.register(placement);
return placement;
}
}

View File

@ -18,7 +18,29 @@ import net.minecraft.world.gen.surfacebuilders.SurfaceBuilderConfig;
public class BOPConfiguredSurfaceBuilders
{
public static final ConfiguredSurfaceBuilder<SurfaceBuilderConfig> DEEP_SNOW = register("deep_snow", new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.DEEP_TOP_LAYER, BOPSurfaceBuilders.SNOW_SNOW_GRAVEL_SURFACE));
public static final ConfiguredSurfaceBuilder<SurfaceBuilderConfig> ALPS_FOOTHILLS = register("alps_foothills", new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_STONE));
public static final ConfiguredSurfaceBuilder<SurfaceBuilderConfig> GRAVEL_FULL = register("gravel_full", new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRAVEL));
public static final ConfiguredSurfaceBuilder<SurfaceBuilderConfig> EXPOSED_STONE = register("exposed_stone", new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.EXPOSED_STONE, SurfaceBuilder.CONFIG_GRASS));
public static final ConfiguredSurfaceBuilder<SurfaceBuilderConfig> DRYLAND = register("dryland", new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.DRYLAND, SurfaceBuilder.CONFIG_GRASS));
public static final ConfiguredSurfaceBuilder<SurfaceBuilderConfig> MANGROVE = register("mangrove", new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.MANGROVE, BOPSurfaceBuilders.MUD_SURFACE));
public static final ConfiguredSurfaceBuilder<SurfaceBuilderConfig> PODZOL_MIXED = register("podzol_mixed", new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.PODZOL, SurfaceBuilder.CONFIG_GRASS));
public static final ConfiguredSurfaceBuilder<SurfaceBuilderConfig> PODZOL_FULL = register("podzol_full", new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_PODZOL));
public static final ConfiguredSurfaceBuilder<SurfaceBuilderConfig> LUSH_DESERT = register("lush_desert", new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.LUSH_DESERT, BOPSurfaceBuilders.ORANGE_SAND_SURFACE));
public static final ConfiguredSurfaceBuilder<SurfaceBuilderConfig> LUSH_SAVANNA = register("lush_savanna", new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.LUSH_SAVANNA, SurfaceBuilder.CONFIG_GRASS));
public static final ConfiguredSurfaceBuilder<SurfaceBuilderConfig> HIGHLAND_CRAG = register("highland_crag", new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.HIGHLAND_CRAG, SurfaceBuilder.CONFIG_STONE));
public static final ConfiguredSurfaceBuilder<SurfaceBuilderConfig> MARSH = register("marsh", new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.MARSH, SurfaceBuilder.CONFIG_GRASS));
public static final ConfiguredSurfaceBuilder<SurfaceBuilderConfig> VOLCANO = register("volcano", new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.VOLCANO, BOPSurfaceBuilders.BASALT_SURFACE));
public static final ConfiguredSurfaceBuilder<SurfaceBuilderConfig> VOLCANIC_PLAINS = register("volcanic_plains", new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.BLACK_SAND, BOPSurfaceBuilders.BLACK_SAND_SURFACE));
public static final ConfiguredSurfaceBuilder<SurfaceBuilderConfig> GROVE_LAKES = register("grove_lakes", new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, BOPSurfaceBuilders.DIORITE_SURFACE));
public static final ConfiguredSurfaceBuilder<SurfaceBuilderConfig> DEEP_GRASS = register("deep_grass", new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.DEEP_TOP_LAYER, SurfaceBuilder.CONFIG_GRASS));
public static final ConfiguredSurfaceBuilder<SurfaceBuilderConfig> RAINFOREST_CLIFFS = register("rainforest_cliffs", new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.TERRACOTTA, SurfaceBuilder.CONFIG_GRASS));
public static final ConfiguredSurfaceBuilder<SurfaceBuilderConfig> ORIGIN_VALLEY = register("origin_valley", new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.ORIGIN_VALLEY, BOPSurfaceBuilders.ORIGIN_GRASS_SURFACE));
public static final ConfiguredSurfaceBuilder<SurfaceBuilderConfig> TROPIC_BEACH = register("tropic_beach", new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.TROPICS, BOPSurfaceBuilders.WHITE_SAND_SURFACE));
public static final ConfiguredSurfaceBuilder<SurfaceBuilderConfig> TROPICS = register("tropics", new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.TROPICS, SurfaceBuilder.CONFIG_GRASS));
public static final ConfiguredSurfaceBuilder<SurfaceBuilderConfig> VISCERAL_HEAP = register("visceral_heap", new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.FLESH, SurfaceBuilder.CONFIG_HELL));
public static final ConfiguredSurfaceBuilder<SurfaceBuilderConfig> WASTELAND = register("wasteland", new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, BOPSurfaceBuilders.DRIED_SALT_SURFACE));
public static final ConfiguredSurfaceBuilder<SurfaceBuilderConfig> WITHERED_ABYSS = register("withered_abyss", new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.WITHERED_ABYSS, BOPSurfaceBuilders.BLACKSTONE_SURFACE));
private static <C extends ISurfaceBuilderConfig, F extends ConfiguredSurfaceBuilder<C>> F register(String key, F builder)
{

View File

@ -15,6 +15,7 @@ import net.minecraft.util.registry.Registry;
import net.minecraft.world.gen.surfacebuilders.ISurfaceBuilderConfig;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilderConfig;
import net.minecraftforge.registries.ForgeRegistries;
public class BOPSurfaceBuilders
{
@ -24,13 +25,13 @@ public class BOPSurfaceBuilders
public static final SurfaceBuilderConfig DIORITE_SURFACE = new SurfaceBuilderConfig(Blocks.DIORITE.defaultBlockState(), Blocks.DIORITE.defaultBlockState(), Blocks.DIORITE.defaultBlockState());
public static final SurfaceBuilderConfig MAGMA_SURFACE = new SurfaceBuilderConfig(Blocks.MAGMA_BLOCK.defaultBlockState(), Blocks.MAGMA_BLOCK.defaultBlockState(), Blocks.BASALT.defaultBlockState());
public static final SurfaceBuilderConfig SNOW_SNOW_GRAVEL_SURFACE = new SurfaceBuilderConfig(Blocks.SNOW_BLOCK.defaultBlockState(), Blocks.SNOW_BLOCK.defaultBlockState(), Blocks.GRAVEL.defaultBlockState());
public static final SurfaceBuilderConfig MUD_SURFACE = new SurfaceBuilderConfig(BOPBlocks.mud.defaultBlockState(), BOPBlocks.mud.defaultBlockState(), BOPBlocks.mud.defaultBlockState());
public static final SurfaceBuilderConfig WHITE_SAND_SURFACE = new SurfaceBuilderConfig(BOPBlocks.white_sand.defaultBlockState(), BOPBlocks.white_sand.defaultBlockState(), BOPBlocks.white_sand.defaultBlockState());
public static final SurfaceBuilderConfig ORANGE_SAND_SURFACE = new SurfaceBuilderConfig(BOPBlocks.orange_sand.defaultBlockState(), BOPBlocks.orange_sand.defaultBlockState(), BOPBlocks.orange_sand.defaultBlockState());
public static final SurfaceBuilderConfig ORANGE_SANDSTONE_SURFACE = new SurfaceBuilderConfig(BOPBlocks.orange_sandstone.defaultBlockState(), BOPBlocks.orange_sandstone.defaultBlockState(), BOPBlocks.orange_sandstone.defaultBlockState());
public static final SurfaceBuilderConfig BLACK_SAND_SURFACE = new SurfaceBuilderConfig(BOPBlocks.black_sand.defaultBlockState(), BOPBlocks.black_sand.defaultBlockState(), BOPBlocks.black_sand.defaultBlockState());
public static final SurfaceBuilderConfig DRIED_SALT_SURFACE = new SurfaceBuilderConfig(BOPBlocks.dried_salt.defaultBlockState(), BOPBlocks.dried_salt.defaultBlockState(), BOPBlocks.dried_salt.defaultBlockState());
public static final SurfaceBuilderConfig ORIGIN_GRASS_SURFACE = new SurfaceBuilderConfig(BOPBlocks.origin_grass_block.defaultBlockState(), Blocks.DIRT.defaultBlockState(), Blocks.GRAVEL.defaultBlockState());
public static final SurfaceBuilderConfig GLACIER_SURFACE = new SurfaceBuilderConfig(Blocks.ICE.defaultBlockState(), Blocks.PACKED_ICE.defaultBlockState(), Blocks.PACKED_ICE.defaultBlockState());
public static final SurfaceBuilder<SurfaceBuilderConfig> DRYLAND = register("dryland", new DrylandSurfaceBuilder(SurfaceBuilderConfig.CODEC.stable()));
public static final SurfaceBuilder<SurfaceBuilderConfig> HIGHLAND_CRAG = register("highland_crag", new HighlandCragSurfaceBuilder(SurfaceBuilderConfig.CODEC.stable()));
@ -52,6 +53,8 @@ public class BOPSurfaceBuilders
private static <C extends ISurfaceBuilderConfig, F extends SurfaceBuilder<C>> F register(String key, F builder)
{
return Registry.register(Registry.SURFACE_BUILDER, new ResourceLocation(BiomesOPlenty.MOD_ID, key), builder);
builder.setRegistryName(new ResourceLocation(BiomesOPlenty.MOD_ID, key));
ForgeRegistries.SURFACE_BUILDERS.register(builder);
return builder;
}
}

View File

@ -61,7 +61,7 @@ public enum BOPShoreLayer implements ICastleTransformer
return MUSHROOM_FIELD_SHORE;
}
}
else if (biome != null && biome.getBiomeCategory() == Biome.Category.JUNGLE && biomeId != getBiomeIdIfPresent(BOPBiomes.rainforest, biomeId) && biomeId != getBiomeIdIfPresent(BOPBiomes.rainforest_floodplain, biomeId) && biomeId != getBiomeIdIfPresent(BOPBiomes.rainforest_cliffs, biomeId) && biomeId != getBiomeIdIfPresent(BOPBiomes.fungal_jungle, biomeId) && biomeId != getBiomeIdIfPresent(BOPBiomes.overgrown_fungal_jungle, biomeId))
else if (biome != null && biome.getBiomeCategory() == Biome.Category.JUNGLE && biomeId != getBiomeIdIfPresent(BOPBiomes.rainforest, biomeId) && biomeId != getBiomeIdIfPresent(BOPBiomes.rainforest_floodplain, biomeId) && biomeId != getBiomeIdIfPresent(BOPBiomes.rainforest_cliffs, biomeId) && biomeId != getBiomeIdIfPresent(BOPBiomes.fungal_jungle, biomeId) && biomeId != getBiomeIdIfPresent(BOPBiomes.fungal_field, biomeId) && biomeId != getBiomeIdIfPresent(BOPBiomes.overgrown_fungal_jungle, biomeId))
{
if (!isJungleCompatible(northBiomeId) || !isJungleCompatible(eastBiomeId) || !isJungleCompatible(southBiomeId) || !isJungleCompatible(westBiomeId))
{

View File

@ -123,7 +123,7 @@ public class ModBiomes
BiomeRegistry.finalizeRegistrations(BiomeRegistry.RegistrationType.TECHNICAL_BIOME);
// Both a standard biome and a technical biome
registerBiome(new BayouMangrove(), "bayou_mangrove");
registerBiome(new BayouMangroveBiome(), "bayou_mangrove");
//Overworld Biomes
registerBiome(new AlpsBiome(), "alps");
@ -139,8 +139,7 @@ public class ModBiomes
registerBiome(new DryBoneyardBiome(), "dry_boneyard");
registerBiome(new FirClearingBiome(), "fir_clearing");
registerBiome(new FlowerMeadowBiome(), "flower_meadow");
registerBiome(new FrozenGlacierBiome(), "frozen_glacier");
registerBiome(new FrozenWonderlandBiome(), "frozen_wonderland");
registerBiome(new FungalFieldBiome(), "fungal_field");
registerBiome(new FungalJungleBiome(), "fungal_jungle");
registerBiome(new GoldenPrairieBiome(), "golden_prairie");
registerBiome(new GroveBiome(), "grove");
@ -214,8 +213,7 @@ public class ModBiomes
registerSubBiome(dryland, dry_boneyard, 0.75F, 100);
registerSubBiome(frozen_wonderland, frozen_glacier, 0.55F, 100);
registerSubBiome(fungal_jungle, fungal_field, 0.9F, 100);
registerSubBiome(fungal_jungle, overgrown_fungal_jungle, 0.65F, 100);
registerSubBiome(grove, grove_clearing, 1.0F, 100);
@ -333,8 +331,7 @@ public class ModBiomes
registerVillagerType(dry_boneyard, VillagerType.PLAINS);
registerVillagerType(fir_clearing, VillagerType.TAIGA);
registerVillagerType(flower_meadow, VillagerType.TAIGA);
registerVillagerType(frozen_glacier, VillagerType.SNOW);
registerVillagerType(frozen_wonderland, VillagerType.SNOW);
registerVillagerType(fungal_field, VillagerType.JUNGLE);
registerVillagerType(fungal_jungle, VillagerType.JUNGLE);
registerVillagerType(golden_prairie, VillagerType.PLAINS);
registerVillagerType(gravel_beach, VillagerType.PLAINS);

View File

@ -17,6 +17,6 @@ logoFile="bop_logo.png"
[[dependencies.biomesoplenty]]
modId="forge"
mandatory=true
versionRange="[32.0.61,)"
versionRange="[34.1.33,)"
ordering="NONE"
side="BOTH"

View File

@ -24,8 +24,7 @@
"biome.biomesoplenty.dry_boneyard": "Dry Boneyard",
"biome.biomesoplenty.fir_clearing": "Fir Clearing",
"biome.biomesoplenty.flower_meadow": "Flower Meadow",
"biome.biomesoplenty.frozen_glacier": "Frozen Glacier",
"biome.biomesoplenty.frozen_wonderland": "Frozen Wonderland",
"biome.biomesoplenty.fungal_field": "Fungal Field",
"biome.biomesoplenty.fungal_jungle": "Fungal Jungle",
"biome.biomesoplenty.golden_prairie": "Golden Prairie",
"biome.biomesoplenty.gravel_beach": "Gravel Beach",

Binary file not shown.

Before

Width:  |  Height:  |  Size: 388 B

After

Width:  |  Height:  |  Size: 536 B

View File

@ -111,16 +111,10 @@
"biome": "biomesoplenty:flower_meadow"
}
},
"frozen_glacier": {
"fungal_field": {
"trigger": "minecraft:location",
"conditions": {
"biome": "biomesoplenty:frozen_glacier"
}
},
"frozen_wonderland": {
"trigger": "minecraft:location",
"conditions": {
"biome": "biomesoplenty:frozen_wonderland"
"biome": "biomesoplenty:fungal_field"
}
},
"fungal_jungle": {

View File

@ -110,16 +110,10 @@
"biome": "biomesoplenty:flower_meadow"
}
},
"frozen_glacier": {
"fungal_field": {
"trigger": "minecraft:location",
"conditions": {
"biome": "biomesoplenty:frozen_glacier"
}
},
"frozen_wonderland": {
"trigger": "minecraft:location",
"conditions": {
"biome": "biomesoplenty:frozen_wonderland"
"biome": "biomesoplenty:fungal_field"
}
},
"fungal_jungle": {
@ -489,8 +483,7 @@
"dry_boneyard",
"fir_clearing",
"flower_meadow",
"frozen_glacier",
"frozen_wonderland",
"fungal_field",
"fungal_jungle",
"golden_prairie",
"gravel_beach",