Even more biome rework stuff
This commit is contained in:
parent
49469a9618
commit
91c81c38f1
21 changed files with 475 additions and 150 deletions
|
@ -24,7 +24,8 @@ public class BOPBiomes
|
|||
public static RegistryKey<Biome> coniferous_forest = register("coniferous_forest");
|
||||
public static RegistryKey<Biome> coniferous_lakes = register("coniferous_lakes");
|
||||
public static RegistryKey<Biome> dead_forest = register("dead_forest");
|
||||
public static RegistryKey<Biome> dense_bayou = register("dense_bayou");
|
||||
public static RegistryKey<Biome> dead_swamp = register("dead_swamp");
|
||||
public static RegistryKey<Biome> deep_bayou = register("deep_bayou");
|
||||
public static RegistryKey<Biome> dryland = register("dryland");
|
||||
public static RegistryKey<Biome> dry_steppe = register("dry_steppe");
|
||||
public static RegistryKey<Biome> fir_clearing = register("fir_clearing");
|
||||
|
@ -33,17 +34,18 @@ public class BOPBiomes
|
|||
public static RegistryKey<Biome> golden_prairie = register("golden_prairie");
|
||||
public static RegistryKey<Biome> gravel_beach = register("gravel_beach");
|
||||
public static RegistryKey<Biome> grove = register("grove");
|
||||
public static RegistryKey<Biome> grove_lakes = register("grove_lakes");
|
||||
public static RegistryKey<Biome> highland = register("highland");
|
||||
public static RegistryKey<Biome> highland_crag = register("highland_crag");
|
||||
public static RegistryKey<Biome> highland_moor = register("highland_moor");
|
||||
public static RegistryKey<Biome> jade_cliffs = register("jade_cliffs");
|
||||
public static RegistryKey<Biome> jade_grassland = register("jade_grassland");
|
||||
public static RegistryKey<Biome> lavender_field = register("lavender_field");
|
||||
public static RegistryKey<Biome> lavender_forest = register("lavender_forest");
|
||||
public static RegistryKey<Biome> lush_desert = register("lush_desert");
|
||||
public static RegistryKey<Biome> lush_savanna = register("lush_savanna");
|
||||
public static RegistryKey<Biome> meadow = register("meadow");
|
||||
public static RegistryKey<Biome> meadow_forest = register("meadow_forest");
|
||||
public static RegistryKey<Biome> muskeg = register("muskeg");
|
||||
public static RegistryKey<Biome> mystic_grove = register("mystic_grove");
|
||||
public static RegistryKey<Biome> mystic_plains = register("mystic_plains");
|
||||
public static RegistryKey<Biome> ominous_woods = register("ominous_woods");
|
||||
|
@ -60,8 +62,8 @@ public class BOPBiomes
|
|||
public static RegistryKey<Biome> redwood_forest_edge = register("redwood_forest_edge");
|
||||
public static RegistryKey<Biome> redwood_hills = register("redwood_hills");
|
||||
public static RegistryKey<Biome> seasonal_forest = register("seasonal_forest");
|
||||
public static RegistryKey<Biome> seasonal_orchard = register("seasonal_orchard");
|
||||
public static RegistryKey<Biome> seasonal_pumpkin_patch = register("seasonal_pumpkin_patch");
|
||||
public static RegistryKey<Biome> shroomy_wetland = register("shroomy_wetland");
|
||||
public static RegistryKey<Biome> shrubland = register("shrubland");
|
||||
public static RegistryKey<Biome> shrubland_hills = register("shrubland_hills");
|
||||
public static RegistryKey<Biome> silkglade = register("silkglade");
|
||||
|
@ -79,6 +81,7 @@ public class BOPBiomes
|
|||
public static RegistryKey<Biome> wasteland = register("wasteland");
|
||||
public static RegistryKey<Biome> wetland = register("wetland");
|
||||
public static RegistryKey<Biome> wetland_marsh = register("wetland_marsh");
|
||||
public static RegistryKey<Biome> wooded_wasteland = register("wooded_wasteland");
|
||||
|
||||
public static RegistryKey<Biome> crystalline_chasm = register("crystalline_chasm");
|
||||
public static RegistryKey<Biome> undergrowth = register("undergrowth");
|
||||
|
|
|
@ -20,9 +20,9 @@ import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
|||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class ShroomyWetlandBiome extends BiomeTemplate
|
||||
public class DeadSwampBiome extends BiomeTemplate
|
||||
{
|
||||
public ShroomyWetlandBiome()
|
||||
public DeadSwampBiome()
|
||||
{
|
||||
this.setBeachBiome(null);
|
||||
}
|
||||
|
@ -30,15 +30,15 @@ public class ShroomyWetlandBiome extends BiomeTemplate
|
|||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.SWAMP).depth(-0.125F).scale(-0.05F).temperature(0.6F).downfall(0.7F);
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.SWAMP).depth(-0.125F).scale(-0.05F).temperature(0.3F).downfall(0.3F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(0x272179).waterFogColor(0x0C031B).fogColor(12638463).skyColor(calculateSkyColor(0.6F)).grassColorOverride(0x5A935F).foliageColorOverride(0x4F9657).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.3F)).grassColorOverride(0xBAAD64).foliageColorOverride(0xB7B763).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.MUD, SurfaceBuilder.CONFIG_GRASS));
|
||||
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
|
||||
|
||||
// Structures
|
||||
builder.addStructureStart(StructureFeatures.SWAMP_HUT);
|
||||
|
@ -49,32 +49,30 @@ public class ShroomyWetlandBiome extends BiomeTemplate
|
|||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.LAKES, BOPConfiguredFeatures.MUD_LAKE);
|
||||
builder.addFeature(GenerationStage.Decoration.LAKES, BOPConfiguredFeatures.WATER_LAKE_UNCOMMON);
|
||||
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, BOPConfiguredFeatures.MUD_DISK);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, Features.DISK_CLAY);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, Features.DISK_GRAVEL);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SHROOMY_WETLAND_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DEAD_SWAMP_TREES);
|
||||
|
||||
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.STANDARD_GRASS_6);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.HUGE_BROWN_MUSHROOM_EXTRA);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LILY_PAD_5);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.PODZOL_SPLATTER);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.REED_5);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SCRUB_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SMALL_BROWN_MUSHROOM);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TOADSTOOL_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_PUMPKIN);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_SUGAR_CANE);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.RED_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.SEAGRASS_SWAMP);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
|
@ -20,9 +20,9 @@ import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
|||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class DenseBayouBiome extends BiomeTemplate
|
||||
public class DeepBayouBiome extends BiomeTemplate
|
||||
{
|
||||
public DenseBayouBiome()
|
||||
public DeepBayouBiome()
|
||||
{
|
||||
this.setBeachBiome(BOPBiomes.bayou_mangrove);
|
||||
}
|
||||
|
@ -55,7 +55,7 @@ public class DenseBayouBiome extends BiomeTemplate
|
|||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DENSE_BAYOU_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DEEP_BAYOU_TREES);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.CATTAIL_24);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DENSE_BAYOU_VINES);
|
|
@ -33,7 +33,7 @@ public class GroveBiome extends BiomeTemplate
|
|||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.FOREST).depth(0.5F).scale(0.3F).temperature(0.8F).downfall(0.275F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.8F)).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4566514).waterFogColor(267827).fogColor(12638463).skyColor(calculateSkyColor(0.8F)).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -0,0 +1,86 @@
|
|||
/*******************************************************************************
|
||||
* 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.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.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 GroveLakesBiome extends BiomeTemplate
|
||||
{
|
||||
public GroveLakesBiome()
|
||||
{
|
||||
this.setBeachBiome(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.FOREST).depth(-0.5F).scale(0.0F).temperature(0.8F).downfall(0.275F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4566514).waterFogColor(267827).fogColor(12638463).skyColor(calculateSkyColor(0.8F)).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, BOPSurfaceBuilders.DIORITE_SURFACE));
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_OCEAN);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, Features.ORE_DIORITE);
|
||||
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, BOPConfiguredFeatures.DIORITE_DISK);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BUSH_15);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_3);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_PUMPKIN);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
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.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -0,0 +1,86 @@
|
|||
/*******************************************************************************
|
||||
* 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.feature.BOPConfiguredFeatures;
|
||||
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.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 LavenderForestBiome extends BiomeTemplate
|
||||
{
|
||||
public LavenderForestBiome()
|
||||
{
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.PLAINS).depth(0.1F).scale(0.1F).temperature(0.8F).downfall(0.7F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.8F)).grassColorOverride(0xA1C36D).foliageColorOverride(0xA1C36D).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LAVENDER_FOREST_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LAVENDER_FLOWERS);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_24);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_SUGAR_CANE);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.SHEEP, 12, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.PIG, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.CHICKEN, 10, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.COW, 8, 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));
|
||||
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.WITCH, 5, 1, 1));
|
||||
}
|
||||
}
|
|
@ -62,7 +62,7 @@ public class RainforestBiome extends BiomeTemplate
|
|||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.RAINFOREST_FLOWERS);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FERN_GRASS_16);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LARGE_FERN_14);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LARGE_FERN_25);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LILY_PAD_10);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SPROUTS_5);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TALL_GRASS_12);
|
||||
|
|
|
@ -58,8 +58,8 @@ public class RedwoodForestBiome extends BiomeTemplate
|
|||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.REDWOOD_FOREST_TREES);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FERN_GRASS_16);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LARGE_FERN_14);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FERN_24);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LARGE_FERN_25);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.RED_MUSHROOM_NORMAL);
|
||||
|
||||
|
|
|
@ -58,8 +58,8 @@ public class RedwoodHillsBiome extends BiomeTemplate
|
|||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.REDWOOD_HILLS_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.FLOWER_DEFAULT);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FERN_GRASS_16);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LARGE_FERN_14);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.FERN_24);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.LARGE_FERN_25);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.RED_MUSHROOM_NORMAL);
|
||||
|
||||
|
|
|
@ -7,67 +7,64 @@
|
|||
******************************************************************************/
|
||||
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 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 MuskegBiome extends BiomeTemplate
|
||||
public class SeasonalOrchardBiome extends BiomeTemplate
|
||||
{
|
||||
public MuskegBiome()
|
||||
public SeasonalOrchardBiome()
|
||||
{
|
||||
this.addWeight(BOPClimates.TUNDRA, 3);
|
||||
this.setBeachBiome(null);
|
||||
this.setBeachBiome(BOPBiomes.gravel_beach);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.SNOW).biomeCategory(Biome.Category.ICY).depth(-0.175F).scale(-0.05F).temperature(-0.25F).downfall(0.6F);
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.FOREST).depth(0.0F).scale(0.0F).temperature(0.4F).downfall(0.8F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(-0.25F)).grassColorOverride(0x94966E).foliageColorOverride(0x8D9B6B).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.4F)).grassColorOverride(0xB5B952).foliageColorOverride(0xA3A627).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(BOPSurfaceBuilders.PODZOL, SurfaceBuilder.CONFIG_GRASS));
|
||||
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
|
||||
|
||||
// Structures
|
||||
builder.addStructureStart(StructureFeatures.WOODLAND_MANSION);
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_SWAMP);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.LAKES, BOPConfiguredFeatures.WATER_LAKE_UNCOMMON);
|
||||
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, Features.DISK_CLAY);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, Features.DISK_GRAVEL);
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, BOPConfiguredFeatures.MUD_DISK);
|
||||
DefaultBiomeFeatures.addDefaultSoftDisks(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.MUSKEG_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SEASONAL_ORCHARD_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.ORCHARD_FLOWERS);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.REED_10);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SCRUB_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_3);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.WATERGRASS_5);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_6);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TOADSTOOL_EXTRA);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.BROWN_MUSHROOM_NORMAL);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_PUMPKIN);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.RED_MUSHROOM_NORMAL);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
|
@ -80,7 +77,8 @@ public class MuskegBiome extends BiomeTemplate
|
|||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.RABBIT, 4, 2, 3));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.WOLF, 5, 4, 4));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.FOX, 8, 2, 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));
|
||||
|
@ -90,6 +88,5 @@ public class MuskegBiome extends BiomeTemplate
|
|||
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.WITCH, 5, 1, 1));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.STRAY, 20, 4, 4));
|
||||
}
|
||||
}
|
|
@ -47,7 +47,6 @@ public class WastelandBiome extends BiomeTemplate
|
|||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
@ -55,9 +54,6 @@ public class WastelandBiome extends BiomeTemplate
|
|||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.WASTELAND_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.WASTELAND_FLOWERS);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.WASTELAND_GRASS_2);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
|
|
@ -0,0 +1,79 @@
|
|||
/*******************************************************************************
|
||||
* 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.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.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class WoodedWastelandBiome extends BiomeTemplate
|
||||
{
|
||||
public WoodedWastelandBiome()
|
||||
{
|
||||
this.addWeight(BOPClimates.HOT_DESERT, 1);
|
||||
this.setBeachBiome(null);
|
||||
this.setRiverBiome(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.NONE).biomeCategory(Biome.Category.DESERT).depth(0.0F).scale(-0.1F).temperature(2.0F).downfall(0.0F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(0x433721).waterFogColor(0x0C0C03).fogColor(0xDBDDC1).skyColor(0x70ADEF).grassColorOverride(0xAD9364).foliageColorOverride(0xB5A76C).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, BOPSurfaceBuilders.DRIED_SALT_SURFACE));
|
||||
|
||||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_JUNGLE);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.WASTELAND_TREES);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.WASTELAND_FLOWERS);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.WASTELAND_GRASS_2);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.HUSK, 80, 4, 4));
|
||||
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));
|
||||
}
|
||||
}
|
|
@ -113,18 +113,19 @@ public class BOPConfiguredFeatures
|
|||
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))));
|
||||
public static final ConfiguredFeature<?, ?> DEAD_FOREST_TREES = register("dead_forest_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(DYING_TREE.weighted(0.2F), DEAD_TREE.weighted(0.1F), TALL_SPRUCE_TREE.weighted(0.3F), SMALL_DEAD_TREE.weighted(0.3F)), Features.OAK)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(2, 0.5F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> DENSE_BAYOU_TREES = register("dense_bayou_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(CYPRESS_TREE.weighted(0.2F), CYPRESS_TREE_MEDIUM.weighted(0.5F)), BUSH)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(20, 0.6F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> DRYLAND_TREES = register("dryland_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(TWIGLET_TREE.weighted(0.4F), DYING_TREE.weighted(0.1F), SPARSE_OAK_TREE.weighted(0.2F)), ACACIA_TWIGLET_SMALL)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(2, 0.4F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> DEAD_SWAMP_TREES = register("dead_swamp_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(DARK_OAK_TWIGLET_TREE.weighted(0.4F), DEAD_TREE.weighted(0.3F), DYING_TREE.weighted(0.075F), DEAD_TWIGLET_TREE_TALL.weighted(0.1F)), DEAD_TWIGLET_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(2, 0.3F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> DEEP_BAYOU_TREES = register("deep_bayou_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(CYPRESS_TREE.weighted(0.2F), CYPRESS_TREE_MEDIUM.weighted(0.5F)), BUSH)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(20, 0.6F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> DRYLAND_TREES = register("dryland_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(TWIGLET_TREE.weighted(0.4F), DYING_TREE.weighted(0.1F), SPARSE_OAK_TREE.weighted(0.2F)), ACACIA_TWIGLET_SMALL)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(3, 0.5F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> FIR_CLEARING_TREES = register("fir_clearing_trees", FIR_TREE_SMALL.decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(1, 0.1F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> FLOWER_MEADOW_TREES = register("flower_meadow_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(TALL_SPRUCE_TREE_BEES.weighted(0.1F)), BUSH)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(2, 0.3F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> FUNGAL_JUNGLE_TREES = register("fungal_jungle_trees", BUSH.decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(2, 0.1F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> GROVE_TREES = register("grove_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(SPARSE_OAK_TREE.weighted(0.05F), DARK_OAK_POPLAR.weighted(0.2F), SPRUCE_POPLAR.weighted(0.4F), FLOWERING_BUSH.weighted(0.1F)), BUSH)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(3, 0.5F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> JADE_CLIFFS_TREES = register("jade_cliffs_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(TALL_SPRUCE_TREE.weighted(0.075F), Features.PINE.weighted(0.025F)), SPRUCE_BUSH)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(35, 0.1F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> LAVENDER_FIELD_TREES = register("lavender_field_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(FLOWERING_OAK_TREE_BEES.weighted(0.2F), BIG_FLOWERING_OAK_TREE.weighted(0.1F), BIG_JACARANDA_TREE.weighted(0.1F)), JACARANDA_TREE_BEES)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(1, 0.2F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> LAVENDER_FIELD_TREES = register("lavender_field_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(FLOWERING_OAK_TREE_BEES.weighted(0.2F), BIG_FLOWERING_OAK_TREE.weighted(0.1F), BIG_JACARANDA_TREE.weighted(0.1F)), JACARANDA_TREE_BEES)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig((int)0.85F, 0.2F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> LAVENDER_FOREST_TREES = register("lavender_forest_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(FLOWERING_OAK_TREE_BEES.weighted(0.1F), BIG_FLOWERING_OAK_TREE.weighted(0.05F), BIG_JACARANDA_TREE.weighted(0.1F)), JACARANDA_TREE_BEES)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(7, 0.3F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> LUSH_DESERT_TREES = register("lush_desert_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(ACACIA_BUSH.weighted(0.4F), SPARSE_ACACIA_TREE.weighted(0.2F)), ACACIA_TWIGLET_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(5, 0.4F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> MEADOW_TREES = register("meadow_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(TALL_SPRUCE_TREE_BEES.weighted(0.1F)), BUSH)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(4, 0.1F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> MEADOW_FOREST_TREES = register("meadow_forest_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BUSH.weighted(0.25F)), TALL_SPRUCE_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(8, 0.1F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> MUSKEG_TREES = register("muskeg_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(DARK_OAK_TWIGLET_TREE.weighted(0.4F), DEAD_TREE.weighted(0.3F), DYING_TREE.weighted(0.075F), DEAD_TWIGLET_TREE_TALL.weighted(0.1F)), DEAD_TWIGLET_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(1, 0.2F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> MYSTIC_GROVE_TREES = register("mystic_grove_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BIG_FLOWERING_OAK_TREE.weighted(0.15F), JACARANDA_TREE.weighted(0.25F), BIG_MAGIC_TREE.weighted(0.3F)), MAGIC_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(10, 0.5F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> MYSTIC_PLAINS_TREES = register("mystic_plains_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(FLOWERING_OAK_TREE.weighted(0.1F), JACARANDA_TREE.weighted(0.25F)), MAGIC_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(1, 0.2F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> OMINOUS_WOODS_TREES = register("ominous_woods_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(DEAD_TREE.weighted(0.05F), DYING_TREE.weighted(0.15F), TALL_UMBRAN_TREE.weighted(0.7F)), UMBRAN_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(7, 0.5F, 1))));
|
||||
|
@ -141,12 +142,12 @@ public class BOPConfiguredFeatures
|
|||
public static final ConfiguredFeature<?, ?> REDWOOD_FOREST_TREES = register("redwood_forest_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BUSH.weighted(0.1F), REDWOOD_TREE.weighted(0.3F), REDWOOD_TREE_LARGE.weighted(0.5F)), REDWOOD_TREE_MEDIUM)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(18, 0.2F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> REDWOOD_HILLS_TREES = register("redwood_hills_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BUSH.weighted(0.1F), REDWOOD_TREE_MEDIUM.weighted(0.3F)), REDWOOD_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(24, 0.2F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> SEASONAL_FOREST_TREES = register("seasonal_forest_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(Features.OAK.weighted(0.05F), BIG_OAK_TREE.weighted(0.025F), MAPLE_TREE.weighted(0.2F), YELLOW_AUTUMN_TREE.weighted(0.3F), BIG_MAPLE_TREE.weighted(0.1F), BIG_YELLOW_AUTUMN_TREE.weighted(0.1F), BIG_ORANGE_AUTUMN_TREE.weighted(0.1F)), ORANGE_AUTUMN_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(10, 0.3F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> SEASONAL_PUMPKIN_PATCH_TREES = register("seasonal_pumpkin_patch_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BUSH.weighted(0.2F), YELLOW_AUTUMN_TREE.weighted(0.1F), BIG_YELLOW_AUTUMN_TREE.weighted(0.05F)), TWIGLET_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(6, 0.5F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> SHROOMY_WETLAND_TREES = register("shroomy_wetland_trees", DARK_OAK_TWIGLET_TREE.decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(3, 0.1F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> SEASONAL_ORCHARD_TREES = register("seasonal_orchard_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BIG_YELLOW_AUTUMN_TREE.weighted(0.05F)), YELLOW_AUTUMN_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(3, 0.5F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> SEASONAL_PUMPKIN_PATCH_TREES = register("seasonal_pumpkin_patch_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(BUSH.weighted(0.2F), ORANGE_AUTUMN_TREE.weighted(0.1F), BIG_ORANGE_AUTUMN_TREE.weighted(0.05F)), TWIGLET_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(6, 0.5F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> SHRUBLAND_TREES = register("shrubland_trees", BUSH.decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(1, 0.05F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> SHRUBLAND_HILLS_TREES = register("shrubland_hills_trees", BUSH.decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(10, 0.05F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> SILKGLADE_TREES = register("silkglade_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(Features.SWAMP_TREE.weighted(0.05F), BIRCH_POPLAR.weighted(0.15F), COBWEB_BUSH.weighted(0.2F), SMALL_DEAD_TREE.weighted(0.5F), SILK_TREE.weighted(0.2F), FULL_COBWEB_BUSH.weighted(0.05F), FULL_SILK_TREE.weighted(0.05F)), BUSH)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(5, 0.4F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> SILKGLADE_NEST_TREES = register("silkglade_nest_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(COBWEB_BUSH.weighted(0.3F), SMALL_DEAD_TREE.weighted(0.1F), SILK_TREE.weighted(0.3F), FULL_COBWEB_BUSH.weighted(0.2F), FULL_SILK_TREE.weighted(0.2F)), BUSH)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(25, 0.5F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> SILKGLADE_NEST_TREES = register("silkglade_nest_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(SMALL_DEAD_TREE.weighted(0.1F), SILK_TREE.weighted(0.1F), FULL_COBWEB_BUSH.weighted(0.4F), FULL_SILK_TREE.weighted(0.3F)), COBWEB_BUSH)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(25, 0.5F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> SNOWY_CONIFEROUS_FOREST_TREES = register("snowy_coniferous_forest_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(FIR_TREE.weighted(0.4F), MAPLE_TREE.weighted(0.1F)), FIR_TREE_LARGE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(6, 0.1F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> SNOWY_MAPLE_FOREST_TREES = register("snowy_maple_forest_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(FIR_TREE.weighted(0.025F), FIR_TREE_SMALL.weighted(0.1F), BIG_MAPLE_TREE.weighted(0.3F)), MAPLE_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(10, 0.1F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> TROPICS_TREES = register("tropics_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(JUNGLE_TWIGLET_TREE.weighted(0.3F), FLOWERING_BUSH.weighted(0.1F)), PALM_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(11, 0.2F, 1))));
|
||||
|
@ -154,7 +155,7 @@ public class BOPConfiguredFeatures
|
|||
public static final ConfiguredFeature<?, ?> TUNDRA_BOG_TREES = register("tundra_bog_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(SPRUCE_TWIGLET_TREE.weighted(0.4F), MAPLE_TWIGLET_TREE.weighted(0.6F)), TWIGLET_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(16, 0.4F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> UNDERGROWTH_TREES = register("undergrowth_trees", HELLBARK_TREE.decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(35)));
|
||||
public static final ConfiguredFeature<?, ?> VOLCANIC_PLAINS_TREES = register("volcanic_plains_trees", TWIGLET_TREE_VOLCANO.decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(1, 0.1F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> WASTELAND_TREES = register("wasteland_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(DEAD_TREE_WASTELAND.weighted(0.2F)), DYING_TREE_WASTELAND)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig((int)0.75F, 0.1F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> WASTELAND_TREES = register("wasteland_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(DEAD_TREE_WASTELAND.weighted(0.2F)), DYING_TREE_WASTELAND)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig((int)0.8F, 0.2F, 1))));
|
||||
public static final ConfiguredFeature<?, ?> WETLAND_TREES = register("wetland_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(TALL_SPRUCE_TREE.weighted(0.5F)), WILLOW_TREE)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(5, 0.1F, 1))));
|
||||
|
||||
// Biome Flower Listings
|
||||
|
@ -195,6 +196,8 @@ public class BOPConfiguredFeatures
|
|||
public static final ConfiguredFeature<?, ?> FERN_GRASS_8 = register("fern_grass_8", BOPFeatures.FERN_GRASS.configured(IFeatureConfig.NONE).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(8)));
|
||||
public static final ConfiguredFeature<?, ?> FERN_GRASS_16 = register("fern_grass_16", BOPFeatures.FERN_GRASS.configured(IFeatureConfig.NONE).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(16)));
|
||||
|
||||
public static final ConfiguredFeature<?, ?> FERN_24 = register("fern_24", BOPFeatures.FERN.configured(IFeatureConfig.NONE).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(24)));
|
||||
|
||||
public static final ConfiguredFeature<?, ?> WASTELAND_GRASS_2 = register("wasteland_grass_2", BOPFeatures.WASTELAND_GRASS.configured(IFeatureConfig.NONE).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(2)));
|
||||
|
||||
public static final ConfiguredFeature<?, ?> BUSH_10 = register("bush_10", Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(BOPBlocks.bush.defaultBlockState())).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(10)));
|
||||
|
@ -226,6 +229,7 @@ public class BOPConfiguredFeatures
|
|||
|
||||
public static final ConfiguredFeature<?, ?> LARGE_FERN_7 = register("large_fern_7", Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.LARGE_FERN.defaultBlockState())).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(7)));
|
||||
public static final ConfiguredFeature<?, ?> LARGE_FERN_14 = register("large_fern_14", Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.LARGE_FERN.defaultBlockState())).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(14)));
|
||||
public static final ConfiguredFeature<?, ?> LARGE_FERN_25 = register("large_fern_25", Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(Blocks.LARGE_FERN.defaultBlockState())).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(25)));
|
||||
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
@ -286,9 +290,10 @@ public class BOPConfiguredFeatures
|
|||
public static final ConfiguredFeature<?, ?> BRAMBLE_EXTRA = register("bramble_extra", BOPFeatures.BRAMBLE.configured(IFeatureConfig.NONE).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(10)));
|
||||
public static final ConfiguredFeature<?, ?> CRAG_SPLATTER = register("crag_splatter", BOPFeatures.CRAG_SPLATTER.configured(IFeatureConfig.NONE).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(128)));
|
||||
public static final ConfiguredFeature<?, ?> DENSE_BAYOU_VINES = register("dense_bayou_vines", BOPFeatures.DENSE_BAYOU_VINES.configured(IFeatureConfig.NONE).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE).count(128));
|
||||
public static final ConfiguredFeature<?, ?> DIORITE_DISK = register("diorite_disk", Feature.DISK.configured(new SphereReplaceConfig(Blocks.DIORITE.defaultBlockState(), FeatureSpread.of(3, 4), 2, ImmutableList.of(Blocks.DIRT.defaultBlockState(), Blocks.GRASS_BLOCK.defaultBlockState(), Blocks.PODZOL.defaultBlockState(), Blocks.SAND.defaultBlockState(), Blocks.GRAVEL.defaultBlockState(), Blocks.GRANITE.defaultBlockState(), Blocks.ANDESITE.defaultBlockState(), Blocks.DIORITE.defaultBlockState(), Blocks.COAL_ORE.defaultBlockState(), Blocks.IRON_ORE.defaultBlockState(), Blocks.STONE.defaultBlockState()))).decorated(Features.Placements.TOP_SOLID_HEIGHTMAP_SQUARE).count(14));
|
||||
public static final ConfiguredFeature<?, ?> FLESH_TENDON = register("flesh_tendon", BOPFeatures.FLESH_TENDON.configured(IFeatureConfig.NONE).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(65)));
|
||||
public static final ConfiguredFeature<?, ?> GRAVEL_DISK_EXTRA = register("gravel_disk_extra", Feature.DISK.configured(new SphereReplaceConfig(Blocks.GRAVEL.defaultBlockState(), FeatureSpread.of(4, 2), 1, ImmutableList.of(Blocks.DIRT.defaultBlockState(), Blocks.GRASS_BLOCK.defaultBlockState()))).decorated(Features.Placements.TOP_SOLID_HEIGHTMAP_SQUARE).count(6));
|
||||
public static final ConfiguredFeature<?, ?> HUGE_BROWN_MUSHROOM_EXTRA = register("huge_brown_mushroom_extra", Features.HUGE_BROWN_MUSHROOM.decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(19)));
|
||||
public static final ConfiguredFeature<?, ?> HUGE_BROWN_MUSHROOM_EXTRA = register("huge_brown_mushroom_extra", Features.HUGE_BROWN_MUSHROOM.decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(21)));
|
||||
public static final ConfiguredFeature<?, ?> HUGE_GLOWSHROOM = register("huge_glowshroom", BOPFeatures.HUGE_GLOWSHROOM.configured(IFeatureConfig.NONE).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(6)));
|
||||
public static final ConfiguredFeature<?, ?> HUGE_GLOWSHROOM_EXTRA = register("huge_glowshroom_extra", BOPFeatures.HUGE_GLOWSHROOM.configured(IFeatureConfig.NONE).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(18)));
|
||||
public static final ConfiguredFeature<?, ?> HUGE_RED_MUSHROOM_EXTRA = register("huge_red_mushroom_extra", Features.HUGE_RED_MUSHROOM.decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(6)));
|
||||
|
@ -302,15 +307,15 @@ public class BOPConfiguredFeatures
|
|||
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)));
|
||||
public static final ConfiguredFeature<?, ?> OBSIDIAN_SPLATTER = register("obsidian_splatter", BOPFeatures.OBSIDIAN_SPLATTER.configured(IFeatureConfig.NONE).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(12)));
|
||||
public static final ConfiguredFeature<?, ?> ORANGE_SAND_DISK = register("orange_sand_disk", Feature.DISK.configured(new SphereReplaceConfig(BOPBlocks.orange_sand.defaultBlockState(), FeatureSpread.of(2, 4), 2, ImmutableList.of(Blocks.DIRT.defaultBlockState(), Blocks.GRASS_BLOCK.defaultBlockState()))).decorated(Features.Placements.TOP_SOLID_HEIGHTMAP_SQUARE).count(3));
|
||||
public static final ConfiguredFeature<?, ?> PODZOL_SPLATTER = register("podzol_splatter", BOPFeatures.PODZOL_SPLATTER.configured(IFeatureConfig.NONE).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(16)));
|
||||
public static final ConfiguredFeature<?, ?> PODZOL_SPLATTER = register("podzol_splatter", BOPFeatures.PODZOL_SPLATTER.configured(IFeatureConfig.NONE).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(22)));
|
||||
public static final ConfiguredFeature<?, ?> PUMPKIN_PATCH = register("pumpkin_patch", BOPFeatures.PUMPKIN_PATCH.configured(IFeatureConfig.NONE).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(35)));
|
||||
public static final ConfiguredFeature<?, ?> RAINFOREST_CLIFFS_VINES = register("overgrown_cliffs_vines", BOPFeatures.RAINFOREST_CLIFFS_VINES.configured(IFeatureConfig.NONE).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE).count(128));
|
||||
public static final ConfiguredFeature<?, ?> SCATTERED_ROCKS = register("scattered_rocks", BOPFeatures.SCATTERED_ROCKS.configured(IFeatureConfig.NONE).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(3)));
|
||||
public static final ConfiguredFeature<?, ?> SCRUB_EXTRA = register("scrub_extra", BOPFeatures.SCRUB.configured(IFeatureConfig.NONE).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(35)));
|
||||
public static final ConfiguredFeature<?, ?> SCRUB_NORMAL = register("scrub_normal", BOPFeatures.SCRUB.configured(IFeatureConfig.NONE).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(10)));
|
||||
public static final ConfiguredFeature<?, ?> SCRUB_NORMAL = register("scrub_normal", BOPFeatures.SCRUB.configured(IFeatureConfig.NONE).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(5)));
|
||||
public static final ConfiguredFeature<?, ?> SHORT_BAMBOO_10 = register("short_bamboo_10", BOPFeatures.SHORT_BAMBOO.configured(IFeatureConfig.NONE).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(10)));
|
||||
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(2)));
|
||||
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 = 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)));
|
||||
|
|
|
@ -118,6 +118,7 @@ public class BOPFeatures
|
|||
public static final Feature<NoFeatureConfig> BRAMBLE = register("bramble", new BrambleFeature(NoFeatureConfig.CODEC));
|
||||
public static final Feature<NoFeatureConfig> CRAG_SPLATTER = register("crag_splatter", new CragSplatterFeature(NoFeatureConfig.CODEC));
|
||||
public static final Feature<NoFeatureConfig> DENSE_BAYOU_VINES = register("dense_bayou_vines", new DenseBayouVinesFeature(NoFeatureConfig.CODEC));
|
||||
public static final Feature<NoFeatureConfig> FERN = register("fern", new FernFeature(NoFeatureConfig.CODEC));
|
||||
public static final Feature<NoFeatureConfig> FERN_GRASS = register("fern_grass", new FernGrassFeature(NoFeatureConfig.CODEC));
|
||||
public static final Feature<NoFeatureConfig> FLESH_TENDON = register("flesh_tendon", new FleshTendonFeature(NoFeatureConfig.CODEC));
|
||||
public static final Feature<NoFeatureConfig> GRASS_SPLATTER = register("grass_splatter", new GrassSplatterFeature(NoFeatureConfig.CODEC));
|
||||
|
|
|
@ -0,0 +1,58 @@
|
|||
/*******************************************************************************
|
||||
* 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.world.gen.feature;
|
||||
|
||||
import com.mojang.serialization.Codec;
|
||||
import net.minecraft.block.BlockState;
|
||||
import net.minecraft.block.Blocks;
|
||||
import net.minecraft.tags.BlockTags;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.world.ISeedReader;
|
||||
import net.minecraft.world.gen.ChunkGenerator;
|
||||
import net.minecraft.world.gen.feature.Feature;
|
||||
import net.minecraft.world.gen.feature.NoFeatureConfig;
|
||||
|
||||
import java.util.Random;
|
||||
|
||||
public class FernFeature extends Feature<NoFeatureConfig>
|
||||
{
|
||||
public FernFeature(Codec<NoFeatureConfig> deserializer)
|
||||
{
|
||||
super(deserializer);
|
||||
}
|
||||
|
||||
public BlockState chooseGrassState(Random rand)
|
||||
{
|
||||
return Blocks.FERN.defaultBlockState();
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean place(ISeedReader world, ChunkGenerator chunkGenerator, Random rand, BlockPos pos, NoFeatureConfig config)
|
||||
{
|
||||
BlockState BlockState = this.chooseGrassState(rand);
|
||||
|
||||
for (BlockState BlockState1 = world.getBlockState(pos); (BlockState1.isAir(world, pos) || BlockState1.is(BlockTags.LEAVES)) && pos.getY() > 0; BlockState1 = world.getBlockState(pos))
|
||||
{
|
||||
pos = pos.below();
|
||||
}
|
||||
|
||||
int i = 0;
|
||||
|
||||
for (int j = 0; j < 128; ++j)
|
||||
{
|
||||
BlockPos blockpos = pos.offset(rand.nextInt(8) - rand.nextInt(8), rand.nextInt(4) - rand.nextInt(4), rand.nextInt(8) - rand.nextInt(8));
|
||||
if (world.isEmptyBlock(blockpos) && BlockState.canSurvive(world, blockpos))
|
||||
{
|
||||
world.setBlock(blockpos, BlockState, 2);
|
||||
++i;
|
||||
}
|
||||
}
|
||||
|
||||
return i > 0;
|
||||
}
|
||||
}
|
|
@ -21,8 +21,8 @@ public class BOPSurfaceBuilders
|
|||
public static final SurfaceBuilderConfig BLACKSTONE_SURFACE = new SurfaceBuilderConfig(Blocks.BLACKSTONE.defaultBlockState(), Blocks.BLACKSTONE.defaultBlockState(), Blocks.BLACKSTONE.defaultBlockState());
|
||||
public static final SurfaceBuilderConfig BASALT_SURFACE = new SurfaceBuilderConfig(Blocks.BASALT.defaultBlockState(), Blocks.BASALT.defaultBlockState(), Blocks.GRAVEL.defaultBlockState());
|
||||
public static final SurfaceBuilderConfig TERRACOTTA_SURFACE = new SurfaceBuilderConfig(Blocks.TERRACOTTA.defaultBlockState(), Blocks.TERRACOTTA.defaultBlockState(), Blocks.GRAVEL.defaultBlockState());
|
||||
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 MUD_SURFACE = new SurfaceBuilderConfig(BOPBlocks.mud.defaultBlockState(), BOPBlocks.mud.defaultBlockState(), BOPBlocks.mud.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 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());
|
||||
|
@ -36,7 +36,6 @@ public class BOPSurfaceBuilders
|
|||
public static final SurfaceBuilder<SurfaceBuilderConfig> TERRACOTTA = register("terracotta", new TerracottaSurfaceBuilder(SurfaceBuilderConfig.CODEC));
|
||||
public static final SurfaceBuilder<SurfaceBuilderConfig> MARSH = register("marsh", new MarshSurfaceBuilder(SurfaceBuilderConfig.CODEC));
|
||||
public static final SurfaceBuilder<SurfaceBuilderConfig> MANGROVE = register("mangrove", new MangroveSurfaceBuilder(SurfaceBuilderConfig.CODEC));
|
||||
public static final SurfaceBuilder<SurfaceBuilderConfig> MUD = register("mud", new MudSurfaceBuilder(SurfaceBuilderConfig.CODEC));
|
||||
public static final SurfaceBuilder<SurfaceBuilderConfig> PODZOL = register("podzol", new PodzolSurfaceBuilder(SurfaceBuilderConfig.CODEC));
|
||||
public static final SurfaceBuilder<SurfaceBuilderConfig> VOLCANO = register("volcano", new VolcanoSurfaceBuilder(SurfaceBuilderConfig.CODEC));
|
||||
public static final SurfaceBuilder<SurfaceBuilderConfig> DEEP_TOP_LAYER = register("deep_top_layer", new DeepTopLayerSurfaceBuilder(SurfaceBuilderConfig.CODEC));
|
||||
|
|
|
@ -1,39 +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.world.gen.surfacebuilders;
|
||||
|
||||
import biomesoplenty.common.world.gen.surfacebuilders.BOPSurfaceBuilders;
|
||||
import com.mojang.serialization.Codec;
|
||||
import net.minecraft.block.BlockState;
|
||||
import net.minecraft.world.biome.Biome;
|
||||
import net.minecraft.world.chunk.IChunk;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilderConfig;
|
||||
|
||||
import java.util.Random;
|
||||
|
||||
public class MudSurfaceBuilder extends SurfaceBuilder<SurfaceBuilderConfig>
|
||||
{
|
||||
public MudSurfaceBuilder(Codec<SurfaceBuilderConfig> deserializer)
|
||||
{
|
||||
super(deserializer);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void apply(Random random, IChunk chunkIn, Biome biomeIn, int x, int z, int startHeight, double noise, BlockState defaultBlock, BlockState defaultFluid, int seaLevel, long seed, SurfaceBuilderConfig config) {
|
||||
if (noise > 1.7D)
|
||||
{
|
||||
SurfaceBuilder.DEFAULT.apply(random, chunkIn, biomeIn, x, z, startHeight, noise, defaultBlock, defaultFluid, seaLevel, seed, BOPSurfaceBuilders.MUD_SURFACE);
|
||||
}
|
||||
else
|
||||
{
|
||||
SurfaceBuilder.DEFAULT.apply(random, chunkIn, biomeIn, x, z, startHeight, noise, defaultBlock, defaultFluid, seaLevel, seed, SurfaceBuilder.CONFIG_GRASS);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
|
@ -133,7 +133,8 @@ public class ModBiomes
|
|||
registerBiome(new ConiferousForestBiome(), "coniferous_forest");
|
||||
registerBiome(new ConiferousLakesBiome(), "coniferous_lakes");
|
||||
registerBiome(new DeadForestBiome(), "dead_forest");
|
||||
registerBiome(new DenseBayouBiome(), "dense_bayou");
|
||||
registerBiome(new DeadSwampBiome(), "dead_swamp");
|
||||
registerBiome(new DeepBayouBiome(), "deep_bayou");
|
||||
registerBiome(new DrylandBiome(), "dryland");
|
||||
registerBiome(new DrySteppeBiome(), "dry_steppe");
|
||||
registerBiome(new FirClearingBiome(), "fir_clearing");
|
||||
|
@ -141,17 +142,18 @@ public class ModBiomes
|
|||
registerBiome(new FungalJungleBiome(), "fungal_jungle");
|
||||
registerBiome(new GoldenPrairieBiome(), "golden_prairie");
|
||||
registerBiome(new GroveBiome(), "grove");
|
||||
registerBiome(new GroveLakesBiome(), "grove_lakes");
|
||||
registerBiome(new HighlandBiome(), "highland");
|
||||
registerBiome(new HighlandCragBiome(), "highland_crag");
|
||||
registerBiome(new HighlandMoorBiome(), "highland_moor");
|
||||
registerBiome(new JadeCliffsBiome(), "jade_cliffs");
|
||||
registerBiome(new JadeGrasslandBiome(), "jade_grassland");
|
||||
registerBiome(new LavenderFieldBiome(), "lavender_field");
|
||||
registerBiome(new LavenderForestBiome(), "lavender_forest");
|
||||
registerBiome(new LushDesertBiome(), "lush_desert");
|
||||
registerBiome(new LushSavannaBiome(), "lush_savanna");
|
||||
registerBiome(new MeadowBiome(), "meadow");
|
||||
registerBiome(new MeadowForestBiome(), "meadow_forest");
|
||||
registerBiome(new MuskegBiome(), "muskeg");
|
||||
registerBiome(new MysticGroveBiome(), "mystic_grove");
|
||||
registerBiome(new MysticPlainsBiome(), "mystic_plains");
|
||||
registerBiome(new OminousWoodsBiome(), "ominous_woods");
|
||||
|
@ -166,8 +168,8 @@ public class ModBiomes
|
|||
registerBiome(new RedwoodForestBiome(), "redwood_forest");
|
||||
registerBiome(new RedwoodHillsBiome(), "redwood_hills");
|
||||
registerBiome(new SeasonalForestBiome(), "seasonal_forest");
|
||||
registerBiome(new SeasonalOrchardBiome(), "seasonal_orchard");
|
||||
registerBiome(new SeasonalPumpkinPatchBiome(), "seasonal_pumpkin_patch");
|
||||
registerBiome(new ShroomyWetlandBiome(), "shroomy_wetland");
|
||||
registerBiome(new ShrublandBiome(), "shrubland");
|
||||
registerBiome(new ShrublandHillsBiome(), "shrubland_hills");
|
||||
registerBiome(new SilkgladeBiome(), "silkglade");
|
||||
|
@ -183,6 +185,7 @@ public class ModBiomes
|
|||
registerBiome(new WastelandBiome(), "wasteland");
|
||||
registerBiome(new WetlandBiome(), "wetland");
|
||||
registerBiome(new WetlandMarshBiome(), "wetland_marsh");
|
||||
registerBiome(new WoodedWastelandBiome(), "wooded_wasteland");
|
||||
|
||||
//Nether Biomes
|
||||
registerBiome(new CrystallineChasmBiome(), "crystalline_chasm");
|
||||
|
@ -194,7 +197,7 @@ public class ModBiomes
|
|||
BiomeRegistry.finalizeRegistrations(BiomeRegistry.RegistrationType.STANDARD_BIOME);
|
||||
|
||||
//Sub/Island Biomes (Note: Rarity supports two decimal places)
|
||||
registerSubBiome(bayou, dense_bayou, 1.0F, 100);
|
||||
registerSubBiome(bayou, deep_bayou, 1.0F, 100);
|
||||
registerSubBiome(bayou, bayou_mangrove, 1.0F, 100);
|
||||
|
||||
registerSubBiome(cherry_blossom_grove, bamboo_grove, 0.8F, 100);
|
||||
|
@ -202,15 +205,21 @@ public class ModBiomes
|
|||
registerSubBiome(coniferous_forest, fir_clearing, 0.75F, 100);
|
||||
registerSubBiome(coniferous_forest, coniferous_lakes, 1.0F, 100);
|
||||
|
||||
registerSubBiome(dead_forest, dead_swamp, 0.75F, 100);
|
||||
|
||||
registerSubBiome(dryland, dry_steppe, 1.0F, 100);
|
||||
|
||||
registerSubBiome(fungal_jungle, overgrown_fungal_jungle, 0.8F, 100);
|
||||
|
||||
registerSubBiome(grove, grove_lakes, 0.75F, 100);
|
||||
|
||||
registerSubBiome(highland, highland_crag, 1.25F, 100);
|
||||
registerSubBiome(highland, highland_moor, 0.75F, 100);
|
||||
|
||||
registerSubBiome(jade_cliffs, jade_grassland, 0.85F, 100);
|
||||
|
||||
registerSubBiome(lavender_field, lavender_forest, 0.6F, 100);
|
||||
|
||||
registerSubBiome(lush_desert, lush_savanna, 0.65F, 100);
|
||||
|
||||
registerSubBiome(meadow, flower_meadow, 1.0F, 100);
|
||||
|
@ -227,7 +236,8 @@ public class ModBiomes
|
|||
|
||||
registerSubBiome(redwood_forest, redwood_hills, 0.75F, 100);
|
||||
|
||||
registerSubBiome(seasonal_forest, seasonal_pumpkin_patch, 0.45F, 100);
|
||||
registerSubBiome(seasonal_forest, seasonal_orchard, 0.75F, 100);
|
||||
registerSubBiome(seasonal_forest, seasonal_pumpkin_patch, 0.75F, 100);
|
||||
|
||||
registerSubBiome(shrubland, shrubland_hills, 0.75F, 100);
|
||||
|
||||
|
@ -239,8 +249,9 @@ public class ModBiomes
|
|||
registerSubBiome(tundra, tundra_basin, 1.5F, 100);
|
||||
registerSubBiome(tundra, tundra_bog, 2.0F, 100);
|
||||
|
||||
registerSubBiome(wetland, wetland_marsh, 1.25F, 100);
|
||||
registerSubBiome(wetland, shroomy_wetland, 1.0F, 100);
|
||||
registerSubBiome(wasteland, wooded_wasteland, 0.85F, 100);
|
||||
|
||||
registerSubBiome(wetland, wetland_marsh, 1.0F, 100);
|
||||
|
||||
BiomeRegistry.configureSubBiomes();
|
||||
BiomeRegistry.finalizeRegistrations(BiomeRegistry.RegistrationType.SUB_BIOME);
|
||||
|
@ -306,7 +317,8 @@ public class ModBiomes
|
|||
registerVillagerType(coniferous_forest, VillagerType.TAIGA);
|
||||
registerVillagerType(coniferous_lakes, VillagerType.TAIGA);
|
||||
registerVillagerType(dead_forest, VillagerType.TAIGA);
|
||||
registerVillagerType(dense_bayou, VillagerType.SWAMP);
|
||||
registerVillagerType(dead_swamp, VillagerType.TAIGA);
|
||||
registerVillagerType(deep_bayou, VillagerType.SWAMP);
|
||||
registerVillagerType(dryland, VillagerType.SAVANNA);
|
||||
registerVillagerType(dry_steppe, VillagerType.SAVANNA);
|
||||
registerVillagerType(fir_clearing, VillagerType.TAIGA);
|
||||
|
@ -315,16 +327,17 @@ public class ModBiomes
|
|||
registerVillagerType(golden_prairie, VillagerType.PLAINS);
|
||||
registerVillagerType(gravel_beach, VillagerType.PLAINS);
|
||||
registerVillagerType(grove, VillagerType.PLAINS);
|
||||
registerVillagerType(grove_lakes, VillagerType.PLAINS);
|
||||
registerVillagerType(highland, VillagerType.PLAINS);
|
||||
registerVillagerType(highland_crag, VillagerType.PLAINS);
|
||||
registerVillagerType(highland_moor, VillagerType.PLAINS);
|
||||
registerVillagerType(jade_cliffs, VillagerType.PLAINS);
|
||||
registerVillagerType(lavender_field, VillagerType.PLAINS);
|
||||
registerVillagerType(lavender_forest, VillagerType.PLAINS);
|
||||
registerVillagerType(lush_desert, VillagerType.SAVANNA);
|
||||
registerVillagerType(lush_savanna, VillagerType.SAVANNA);
|
||||
registerVillagerType(meadow, VillagerType.TAIGA);
|
||||
registerVillagerType(meadow_forest, VillagerType.TAIGA);
|
||||
registerVillagerType(muskeg, VillagerType.SNOW);
|
||||
registerVillagerType(mystic_grove, VillagerType.PLAINS);
|
||||
registerVillagerType(mystic_plains, VillagerType.PLAINS);
|
||||
registerVillagerType(ominous_woods, VillagerType.SWAMP);
|
||||
|
@ -341,8 +354,8 @@ public class ModBiomes
|
|||
registerVillagerType(redwood_forest_edge, VillagerType.PLAINS);
|
||||
registerVillagerType(redwood_hills, VillagerType.PLAINS);
|
||||
registerVillagerType(seasonal_forest, VillagerType.PLAINS);
|
||||
registerVillagerType(seasonal_orchard, VillagerType.PLAINS);
|
||||
registerVillagerType(seasonal_pumpkin_patch, VillagerType.PLAINS);
|
||||
registerVillagerType(shroomy_wetland, VillagerType.SWAMP);
|
||||
registerVillagerType(shrubland, VillagerType.PLAINS);
|
||||
registerVillagerType(shrubland_hills, VillagerType.PLAINS);
|
||||
registerVillagerType(silkglade, VillagerType.SWAMP);
|
||||
|
@ -360,6 +373,7 @@ public class ModBiomes
|
|||
registerVillagerType(wasteland, VillagerType.DESERT);
|
||||
registerVillagerType(wetland, VillagerType.SWAMP);
|
||||
registerVillagerType(wetland_marsh, VillagerType.SWAMP);
|
||||
registerVillagerType(wooded_wasteland, VillagerType.DESERT);
|
||||
}
|
||||
|
||||
private static void registerVillagerType(RegistryKey<Biome> key, VillagerType type)
|
||||
|
|
|
@ -18,7 +18,8 @@
|
|||
"biome.biomesoplenty.coniferous_lakes": "Coniferous Lakes",
|
||||
"biome.biomesoplenty.crystalline_chasm": "Crystalline Chasm",
|
||||
"biome.biomesoplenty.dead_forest": "Dead Forest",
|
||||
"biome.biomesoplenty.dense_bayou": "Dense Bayou",
|
||||
"biome.biomesoplenty.dead_swamp": "Dead Swamp",
|
||||
"biome.biomesoplenty.deep_bayou": "Deep Bayou",
|
||||
"biome.biomesoplenty.dryland": "Dryland",
|
||||
"biome.biomesoplenty.dry_steppe": "Dry Steppe",
|
||||
"biome.biomesoplenty.fir_clearing": "Fir Clearing",
|
||||
|
@ -27,17 +28,18 @@
|
|||
"biome.biomesoplenty.golden_prairie": "Golden Prairie",
|
||||
"biome.biomesoplenty.gravel_beach": "Gravel Beach",
|
||||
"biome.biomesoplenty.grove": "Grove",
|
||||
"biome.biomesoplenty.grove_lakes": "Grove Lakes",
|
||||
"biome.biomesoplenty.highland": "Highland",
|
||||
"biome.biomesoplenty.highland_crag": "Highland Crag",
|
||||
"biome.biomesoplenty.highland_moor": "Highland Moor",
|
||||
"biome.biomesoplenty.jade_cliffs": "Jade Cliffs",
|
||||
"biome.biomesoplenty.jade_grassland": "Jade Grassland",
|
||||
"biome.biomesoplenty.lavender_field": "Lavender Field",
|
||||
"biome.biomesoplenty.lavender_forest": "Lavender Forest",
|
||||
"biome.biomesoplenty.lush_desert": "Lush Desert",
|
||||
"biome.biomesoplenty.lush_savanna": "Lush Savanna",
|
||||
"biome.biomesoplenty.meadow": "Meadow",
|
||||
"biome.biomesoplenty.meadow_forest": "Meadow Forest",
|
||||
"biome.biomesoplenty.muskeg": "Muskeg",
|
||||
"biome.biomesoplenty.mystic_grove": "Mystic Grove",
|
||||
"biome.biomesoplenty.mystic_plains": "Mystic Plains",
|
||||
"biome.biomesoplenty.ominous_mire": "Ominous Mire",
|
||||
|
@ -54,8 +56,8 @@
|
|||
"biome.biomesoplenty.redwood_forest_edge": "Redwood Forest Edge",
|
||||
"biome.biomesoplenty.redwood_hills": "Redwood Hills",
|
||||
"biome.biomesoplenty.seasonal_forest": "Seasonal Forest",
|
||||
"biome.biomesoplenty.seasonal_orchard": "Seasonal Orchard",
|
||||
"biome.biomesoplenty.seasonal_pumpkin_patch": "Seasonal Pumpkin Patch",
|
||||
"biome.biomesoplenty.shroomy_wetland": "Shroomy Wetland",
|
||||
"biome.biomesoplenty.shrubland": "Shrubland",
|
||||
"biome.biomesoplenty.shrubland_hills": "Shrubland Hills",
|
||||
"biome.biomesoplenty.silkglade": "Silkglade",
|
||||
|
@ -76,6 +78,7 @@
|
|||
"biome.biomesoplenty.wetland": "Wetland",
|
||||
"biome.biomesoplenty.wetland_marsh": "Wetland Marsh",
|
||||
"biome.biomesoplenty.withered_abyss": "Withered Abyss",
|
||||
"biome.biomesoplenty.wooded_wasteland": "Wooded Wasteland",
|
||||
|
||||
"item.biomesoplenty.bop_icon": "BOP Icon",
|
||||
"item.biomesoplenty.cherry_boat": "Cherry Boat",
|
||||
|
|
|
@ -75,10 +75,16 @@
|
|||
"biome": "biomesoplenty:dead_forest"
|
||||
}
|
||||
},
|
||||
"dense_bayou": {
|
||||
"dead_swamp": {
|
||||
"trigger": "minecraft:location",
|
||||
"conditions": {
|
||||
"biome": "biomesoplenty:dense_bayou"
|
||||
"biome": "biomesoplenty:dead_swamp"
|
||||
}
|
||||
},
|
||||
"deep_bayou": {
|
||||
"trigger": "minecraft:location",
|
||||
"conditions": {
|
||||
"biome": "biomesoplenty:deep_bayou"
|
||||
}
|
||||
},
|
||||
"dryland": {
|
||||
|
@ -128,6 +134,12 @@
|
|||
"conditions": {
|
||||
"biome": "biomesoplenty:grove"
|
||||
}
|
||||
},
|
||||
"grove_lakes": {
|
||||
"trigger": "minecraft:location",
|
||||
"conditions": {
|
||||
"biome": "biomesoplenty:grove_lakes"
|
||||
}
|
||||
},
|
||||
"highland": {
|
||||
"trigger": "minecraft:location",
|
||||
|
@ -164,6 +176,12 @@
|
|||
"conditions": {
|
||||
"biome": "biomesoplenty:lavender_field"
|
||||
}
|
||||
},
|
||||
"lavender_forest": {
|
||||
"trigger": "minecraft:location",
|
||||
"conditions": {
|
||||
"biome": "biomesoplenty:lavender_forest"
|
||||
}
|
||||
},
|
||||
"lush_desert": {
|
||||
"trigger": "minecraft:location",
|
||||
|
@ -188,12 +206,6 @@
|
|||
"conditions": {
|
||||
"biome": "biomesoplenty:meadow_forest"
|
||||
}
|
||||
},
|
||||
"muskeg": {
|
||||
"trigger": "minecraft:location",
|
||||
"conditions": {
|
||||
"biome": "biomesoplenty:muskeg"
|
||||
}
|
||||
},
|
||||
"mystic_grove": {
|
||||
"trigger": "minecraft:location",
|
||||
|
@ -290,18 +302,18 @@
|
|||
"conditions": {
|
||||
"biome": "biomesoplenty:seasonal_forest"
|
||||
}
|
||||
},
|
||||
"seasonal_orchard": {
|
||||
"trigger": "minecraft:location",
|
||||
"conditions": {
|
||||
"biome": "biomesoplenty:seasonal_orchard"
|
||||
}
|
||||
},
|
||||
"seasonal_pumpkin_patch": {
|
||||
"trigger": "minecraft:location",
|
||||
"conditions": {
|
||||
"biome": "biomesoplenty:seasonal_pumpkin_patch"
|
||||
}
|
||||
},
|
||||
"shroomy_wetland": {
|
||||
"trigger": "minecraft:location",
|
||||
"conditions": {
|
||||
"biome": "biomesoplenty:shroomy_wetland"
|
||||
}
|
||||
},
|
||||
"shrubland": {
|
||||
"trigger": "minecraft:location",
|
||||
|
@ -422,6 +434,12 @@
|
|||
"conditions": {
|
||||
"biome": "biomesoplenty:withered_abyss"
|
||||
}
|
||||
},
|
||||
"wooded_wasteland": {
|
||||
"trigger": "minecraft:location",
|
||||
"conditions": {
|
||||
"biome": "biomesoplenty:wooded_wasteland"
|
||||
}
|
||||
}
|
||||
},
|
||||
"rewards": {
|
||||
|
|
|
@ -74,10 +74,16 @@
|
|||
"biome": "biomesoplenty:dead_forest"
|
||||
}
|
||||
},
|
||||
"dense_bayou": {
|
||||
"dead_swamp": {
|
||||
"trigger": "minecraft:location",
|
||||
"conditions": {
|
||||
"biome": "biomesoplenty:dense_bayou"
|
||||
"biome": "biomesoplenty:dead_swamp"
|
||||
}
|
||||
},
|
||||
"deep_bayou": {
|
||||
"trigger": "minecraft:location",
|
||||
"conditions": {
|
||||
"biome": "biomesoplenty:deep_bayou"
|
||||
}
|
||||
},
|
||||
"dryland": {
|
||||
|
@ -127,6 +133,12 @@
|
|||
"conditions": {
|
||||
"biome": "biomesoplenty:grove"
|
||||
}
|
||||
},
|
||||
"grove_lakes": {
|
||||
"trigger": "minecraft:location",
|
||||
"conditions": {
|
||||
"biome": "biomesoplenty:grove_lakes"
|
||||
}
|
||||
},
|
||||
"highland": {
|
||||
"trigger": "minecraft:location",
|
||||
|
@ -163,6 +175,12 @@
|
|||
"conditions": {
|
||||
"biome": "biomesoplenty:lavender_field"
|
||||
}
|
||||
},
|
||||
"lavender_forest": {
|
||||
"trigger": "minecraft:location",
|
||||
"conditions": {
|
||||
"biome": "biomesoplenty:lavender_forest"
|
||||
}
|
||||
},
|
||||
"lush_desert": {
|
||||
"trigger": "minecraft:location",
|
||||
|
@ -187,12 +205,6 @@
|
|||
"conditions": {
|
||||
"biome": "biomesoplenty:meadow_forest"
|
||||
}
|
||||
},
|
||||
"muskeg": {
|
||||
"trigger": "minecraft:location",
|
||||
"conditions": {
|
||||
"biome": "biomesoplenty:muskeg"
|
||||
}
|
||||
},
|
||||
"mystic_grove": {
|
||||
"trigger": "minecraft:location",
|
||||
|
@ -289,18 +301,18 @@
|
|||
"conditions": {
|
||||
"biome": "biomesoplenty:seasonal_forest"
|
||||
}
|
||||
},
|
||||
"seasonal_orchard": {
|
||||
"trigger": "minecraft:location",
|
||||
"conditions": {
|
||||
"biome": "biomesoplenty:seasonal_orchard"
|
||||
}
|
||||
},
|
||||
"seasonal_pumpkin_patch": {
|
||||
"trigger": "minecraft:location",
|
||||
"conditions": {
|
||||
"biome": "biomesoplenty:seasonal_pumpkin_patch"
|
||||
}
|
||||
},
|
||||
"shroomy_wetland": {
|
||||
"trigger": "minecraft:location",
|
||||
"conditions": {
|
||||
"biome": "biomesoplenty:shroomy_wetland"
|
||||
}
|
||||
},
|
||||
"shrubland": {
|
||||
"trigger": "minecraft:location",
|
||||
|
@ -421,6 +433,12 @@
|
|||
"conditions": {
|
||||
"biome": "biomesoplenty:withered_abyss"
|
||||
}
|
||||
},
|
||||
"wooded_wasteland": {
|
||||
"trigger": "minecraft:location",
|
||||
"conditions": {
|
||||
"biome": "biomesoplenty:wooded_wasteland"
|
||||
}
|
||||
}
|
||||
},
|
||||
"requirements": [
|
||||
|
@ -435,7 +453,8 @@
|
|||
"coniferous_lakes",
|
||||
"crystalline_chasm",
|
||||
"dead_forest",
|
||||
"dense_bayou",
|
||||
"dead_swamp",
|
||||
"deep_bayou",
|
||||
"dryland",
|
||||
"dry_steppe",
|
||||
"fir_clearing",
|
||||
|
@ -444,17 +463,18 @@
|
|||
"golden_prairie",
|
||||
"gravel_beach",
|
||||
"grove",
|
||||
"grove_lakes",
|
||||
"highland",
|
||||
"highland_crag",
|
||||
"highland_moor",
|
||||
"jade_cliffs",
|
||||
"jade_grassland",
|
||||
"lavender_field",
|
||||
"lavender_forest",
|
||||
"lush_desert",
|
||||
"lush_savanna",
|
||||
"meadow",
|
||||
"meadow_forest",
|
||||
"muskeg",
|
||||
"mystic_grove",
|
||||
"mystic_plains",
|
||||
"ominous_woods",
|
||||
|
@ -471,8 +491,8 @@
|
|||
"redwood_forest_edge",
|
||||
"redwood_hills",
|
||||
"seasonal_forest",
|
||||
"seasonal_orchard",
|
||||
"seasonal_pumpkin_patch",
|
||||
"shroomy_wetland",
|
||||
"shrubland",
|
||||
"shrubland_hills",
|
||||
"silkglade",
|
||||
|
@ -492,7 +512,8 @@
|
|||
"wasteland",
|
||||
"wetland",
|
||||
"wetland_marsh",
|
||||
"withered_abyss"
|
||||
"withered_abyss",
|
||||
"wooded_wasteland"
|
||||
]
|
||||
]
|
||||
}
|
Loading…
Reference in a new issue