Copied fixes over to biome rework branch
|
@ -27,7 +27,7 @@ public class BOPBiomes
|
|||
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> 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> fungal_jungle = register("fungal_jungle");
|
||||
|
@ -61,6 +61,7 @@ public class BOPBiomes
|
|||
public static RegistryKey<Biome> redwood_forest = register("redwood_forest");
|
||||
public static RegistryKey<Biome> redwood_forest_edge = register("redwood_forest_edge");
|
||||
public static RegistryKey<Biome> redwood_hills = register("redwood_hills");
|
||||
public static RegistryKey<Biome> scrubland = register("scrubland");
|
||||
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");
|
||||
|
@ -81,6 +82,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_scrubland = register("wooded_scrubland");
|
||||
public static RegistryKey<Biome> wooded_wasteland = register("wooded_wasteland");
|
||||
|
||||
public static RegistryKey<Biome> crystalline_chasm = register("crystalline_chasm");
|
||||
|
|
|
@ -297,7 +297,7 @@ public class BOPBlocks
|
|||
public static Block desert_grass;
|
||||
public static Block dead_grass;
|
||||
public static Block cattail;
|
||||
public static Block tall_wheat;
|
||||
public static Block barley;
|
||||
public static Block reed;
|
||||
public static Block watergrass;
|
||||
public static Block mangrove_root;
|
||||
|
|
|
@ -47,9 +47,7 @@ public class BayouMangrove extends BiomeTemplate
|
|||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.LAKES, BOPConfiguredFeatures.WATER_LAKE_COMMON);
|
||||
|
||||
DefaultBiomeFeatures.addDefaultLakes(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
|
|
@ -66,10 +66,7 @@ public class DeadSwampBiome extends BiomeTemplate
|
|||
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.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.RED_MUSHROOM_NORMAL);
|
||||
|
|
|
@ -52,6 +52,8 @@ public class DeepBayouBiome extends BiomeTemplate
|
|||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
DefaultBiomeFeatures.addSwampClayDisk(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.UNDERGROUND_ORES, BOPConfiguredFeatures.MUD_DISK);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
|
|
|
@ -19,20 +19,19 @@ import net.minecraft.world.gen.feature.structure.StructureFeatures;
|
|||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
||||
public class DrySteppeBiome extends BiomeTemplate
|
||||
public class DryBoneyardBiome extends BiomeTemplate
|
||||
{
|
||||
public DrySteppeBiome()
|
||||
public DryBoneyardBiome()
|
||||
{
|
||||
this.setRiverBiome(null);
|
||||
this.setBeachBiome(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.NONE).biomeCategory(Biome.Category.SAVANNA).depth(1.4F).scale(0.3F).temperature(1.5F).downfall(0.1F);
|
||||
builder.precipitation(Biome.RainType.NONE).biomeCategory(Biome.Category.PLAINS).depth(0.1F).scale(0.1F).temperature(0.7F).downfall(0.05F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(0x9E9DFF).grassColorOverride(0xDBBA9F).foliageColorOverride(0xD6C7A8).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(0x9E9DFF).grassColorOverride(0xE5DFA9).foliageColorOverride(0xDAE0B3).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -43,31 +42,28 @@ public class DrySteppeBiome extends BiomeTemplate
|
|||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
builder.addStructureStart(StructureFeatures.NETHER_FOSSIL);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.LAKES, Features.LAKE_LAVA);
|
||||
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
DefaultBiomeFeatures.addDefaultSoftDisks(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DESERT_GRASS_20);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DRY_BONEYARD_TREES);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BONE_SPINE);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BUSH_5);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DEAD_GRASS_5);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_6);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_DEAD_BUSH);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Other Features
|
||||
DefaultBiomeFeatures.addDefaultSprings(builder);
|
||||
DefaultBiomeFeatures.addExtraEmeralds(builder);
|
||||
DefaultBiomeFeatures.addInfestedStone(builder);
|
||||
DefaultBiomeFeatures.addSurfaceFreezing(builder);
|
||||
}
|
||||
|
||||
|
@ -75,8 +71,6 @@ public class DrySteppeBiome 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.LLAMA, 5, 4, 6));
|
||||
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));
|
|
@ -7,15 +7,14 @@
|
|||
******************************************************************************/
|
||||
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.structure.StructureFeatures;
|
||||
import net.minecraft.world.gen.surfacebuilders.ConfiguredSurfaceBuilder;
|
||||
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
|
||||
|
@ -24,17 +23,16 @@ public class DrylandBiome extends BiomeTemplate
|
|||
{
|
||||
public DrylandBiome()
|
||||
{
|
||||
this.addWeight(BOPClimates.SAVANNA, 5);
|
||||
this.addWeight(BOPClimates.SAVANNA, 3);
|
||||
this.setRiverBiome(null);
|
||||
this.setBeachBiome(null);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.NONE).biomeCategory(Biome.Category.SAVANNA).depth(0.1F).scale(0.1F).temperature(1.5F).downfall(0.1F);
|
||||
builder.precipitation(Biome.RainType.NONE).biomeCategory(Biome.Category.PLAINS).depth(0.1F).scale(0.1F).temperature(0.7F).downfall(0.05F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(0x9E9DFF).grassColorOverride(0xDBBA9F).foliageColorOverride(0xD6C7A8).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(0x9E9DFF).grassColorOverride(0xE5DFA9).foliageColorOverride(0xDAE0B3).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -45,17 +43,12 @@ public class DrylandBiome extends BiomeTemplate
|
|||
// Structures
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
builder.addStructureStart(StructureFeatures.NETHER_FOSSIL);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.LAKES, Features.LAKE_LAVA);
|
||||
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
DefaultBiomeFeatures.addDefaultSoftDisks(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
|
@ -63,10 +56,7 @@ public class DrylandBiome extends BiomeTemplate
|
|||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DRYLAND_TREES);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BUSH_10);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DEAD_GRASS_2);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DESERT_GRASS_10);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_6);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_DEAD_BUSH);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
|
@ -79,7 +69,6 @@ public class DrylandBiome extends BiomeTemplate
|
|||
protected void configureMobSpawns(MobSpawnInfo.Builder builder)
|
||||
{
|
||||
// Entities
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.RABBIT, 4, 2, 3));
|
||||
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));
|
||||
|
|
|
@ -47,7 +47,7 @@ public class GoldenPrairieBiome extends BiomeTemplate
|
|||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.GOLDEN_PRAIRIE_TALL_WHEAT);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BARLEY);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_24);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TALL_GRASS_64);
|
||||
|
||||
|
|
|
@ -30,7 +30,7 @@ public class HighlandMoorBiome extends BiomeTemplate
|
|||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.PLAINS).depth(1.8F).scale(-0.05F).temperature(0.6F).downfall(0.6F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.6F)).grassColorOverride(0x71AA70).foliageColorOverride(0x78C46D).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.6F)).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -63,6 +63,7 @@ public class LushDesertBiome extends BiomeTemplate
|
|||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DEAD_GRASS_2);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DESERT_GRASS_10);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DUNE_GRASS_128);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SPROUTS_5);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_DEAD_BUSH_2);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, Features.PATCH_SUGAR_CANE);
|
||||
|
||||
|
|
|
@ -30,7 +30,7 @@ public class LushSavannaBiome extends BiomeTemplate
|
|||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.DESERT).depth(0.1F).scale(0.01F).temperature(0.9F).downfall(0.5F);
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.DESERT).depth(0.25F).scale(0.1F).temperature(0.9F).downfall(0.5F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4566514).waterFogColor(267827).fogColor(12638463).skyColor(calculateSkyColor(0.9F)).grassColorOverride(0xEFE182).foliageColorOverride(0xD3D156).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
|
|
@ -33,7 +33,7 @@ public class MysticGroveBiome extends BiomeTemplate
|
|||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.FOREST).depth(0.1F).scale(0.1F).temperature(0.7F).downfall(0.8F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(0x9C3FE4).waterFogColor(0x2E0533).fogColor(0xFFC9DA).skyColor(0x66DBFF).grassColorOverride(0x69CFDB).foliageColorOverride(0x70E0B5).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(0x9C3FE4).waterFogColor(0x2E0533).fogColor(0xFFC9DA).skyColor(0xAAEFFF).grassColorOverride(0x69CFDB).foliageColorOverride(0x70E0B5).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -32,7 +32,7 @@ public class MysticPlainsBiome extends BiomeTemplate
|
|||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.FOREST).depth(0.0F).scale(-0.05F).temperature(0.7F).downfall(0.8F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(0x9C3FE4).waterFogColor(0x2E0533).fogColor(0xFFC9DA).skyColor(0x66DBFF).grassColorOverride(0x69CFDB).foliageColorOverride(0x70E0B5).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(0x9C3FE4).waterFogColor(0x2E0533).fogColor(0xFFC9DA).skyColor(0xAAEFFF).grassColorOverride(0x69CFDB).foliageColorOverride(0x70E0B5).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -55,6 +55,7 @@ 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);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
|
|
@ -27,7 +27,7 @@ public class OrchardBiome extends BiomeTemplate
|
|||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.FOREST).depth(0.0F).scale(0.0F).temperature(0.8F).downfall(0.4F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.8F)).grassColorOverride(0xA9DB69).foliageColorOverride(0xC9F75D).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.8F)).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -30,7 +30,7 @@ public class PrairieBiome extends BiomeTemplate
|
|||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.PLAINS).depth(0.05F).scale(0.0F).temperature(0.8F).downfall(0.3F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.8F)).grassColorOverride(0xDDE580).foliageColorOverride(0xC2E07B).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.8F)).grassColorOverride(0xEAE177).foliageColorOverride(0xD6E672).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -31,7 +31,7 @@ public class RedwoodForestBiome extends BiomeTemplate
|
|||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.FOREST).depth(0.25F).scale(0.05F).temperature(0.8F).downfall(0.6F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.8F)).grassColorOverride(0xB6D367).foliageColorOverride(0x97BF4E).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.8F)).grassColorOverride(0xB5D55C).foliageColorOverride(0x8EBF42).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -28,7 +28,7 @@ public class RedwoodForestEdgeBiome extends BiomeTemplate
|
|||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.FOREST).depth(0.25F).scale(0.05F).temperature(0.8F).downfall(0.6F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.8F)).grassColorOverride(0xB6D367).foliageColorOverride(0x97BF4E).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.8F)).grassColorOverride(0xB5D55C).foliageColorOverride(0x8EBF42).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -30,7 +30,7 @@ public class RedwoodHillsBiome extends BiomeTemplate
|
|||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.FOREST).depth(1.5F).scale(0.2F).temperature(0.8F).downfall(0.6F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.8F)).grassColorOverride(0xB6D367).foliageColorOverride(0x97BF4E).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.8F)).grassColorOverride(0xB5D55C).foliageColorOverride(0x8EBF42).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 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 ScrublandBiome extends BiomeTemplate
|
||||
{
|
||||
public ScrublandBiome()
|
||||
{
|
||||
this.addWeight(BOPClimates.SAVANNA, 7);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.NONE).biomeCategory(Biome.Category.SAVANNA).depth(0.0F).scale(0.0F).temperature(1.1F).downfall(0.15F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(1.1F)).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
|
||||
|
||||
// Structures
|
||||
builder.addStructureStart(StructureFeatures.VILLAGE_SAVANNA);
|
||||
builder.addStructureStart(StructureFeatures.PILLAGER_OUTPOST);
|
||||
DefaultBiomeFeatures.addDefaultOverworldLandStructures(builder);
|
||||
builder.addStructureStart(StructureFeatures.RUINED_PORTAL_STANDARD);
|
||||
|
||||
// Underground
|
||||
DefaultBiomeFeatures.addDefaultCarvers(builder);
|
||||
DefaultBiomeFeatures.addDefaultMonsterRoom(builder);
|
||||
DefaultBiomeFeatures.addDefaultUndergroundVariety(builder);
|
||||
DefaultBiomeFeatures.addDefaultOres(builder);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// Vegetation
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DESERT_GRASS_10);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_6);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// 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.CREATURE, new MobSpawnInfo.Spawners(EntityType.HORSE, 5, 2, 6));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.DONKEY, 1, 1, 3));
|
||||
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));
|
||||
}
|
||||
}
|
|
@ -57,8 +57,9 @@ public class SeasonalOrchardBiome extends BiomeTemplate
|
|||
|
||||
// Vegetation
|
||||
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, Features.FLOWER_DEFAULT);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.BUSH_5);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.REED_10);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_6);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TOADSTOOL_EXTRA);
|
||||
|
|
|
@ -25,6 +25,7 @@ public class SilkgladeNestBiome extends BiomeTemplate
|
|||
{
|
||||
this.setBeachBiome(null);
|
||||
this.setRiverBiome(null);
|
||||
this.setGrassColorFunction(this::getGrassColor);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -32,7 +33,7 @@ public class SilkgladeNestBiome extends BiomeTemplate
|
|||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.FOREST).depth(0.5F).scale(0.2F).temperature(0.75F).downfall(0.2F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(0x82826A).waterFogColor(0x0D0F09).fogColor(12638463).skyColor(calculateSkyColor(0.75F)).grassColorOverride(0xB2B39F).foliageColorOverride(0xDEE1C6).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(0x82826A).waterFogColor(0x0D0F09).fogColor(12638463).skyColor(calculateSkyColor(0.75F)).grassColorOverride(0x939F76).foliageColorOverride(0xDEE1C6).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -80,4 +81,10 @@ public class SilkgladeNestBiome extends BiomeTemplate
|
|||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.CAVE_SPIDER, 50, 4, 4));
|
||||
builder.addSpawn(EntityClassification.MONSTER, new MobSpawnInfo.Spawners(EntityType.SLIME, 100, 4, 4));
|
||||
}
|
||||
|
||||
private int getGrassColor(double x, double z)
|
||||
{
|
||||
double d0 = Biome.BIOME_INFO_NOISE.getValue(x * 0.0225D, z * 0.0225D, false);
|
||||
return d0 < -0.1D ? 0xB2B39F : 0x939F76;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -33,7 +33,7 @@ public class TundraBasinBiome extends BiomeTemplate
|
|||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.TAIGA).depth(0.0F).scale(-0.1F).temperature(0.2F).downfall(0.5F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.2F)).grassColorOverride(0xAD9364).foliageColorOverride(0xB5A76C).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.2F)).grassColorOverride(0xC08359).foliageColorOverride(0xC5975C).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -32,7 +32,7 @@ public class TundraBiome extends BiomeTemplate
|
|||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.TAIGA).depth(0.15F).scale(0.15F).temperature(0.2F).downfall(0.5F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.2F)).grassColorOverride(0xAD9364).foliageColorOverride(0xB5A76C).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.2F)).grassColorOverride(0xC08359).foliageColorOverride(0xC5975C).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -31,7 +31,7 @@ public class TundraBogBiome extends BiomeTemplate
|
|||
{
|
||||
builder.precipitation(Biome.RainType.RAIN).biomeCategory(Biome.Category.TAIGA).depth(-0.15F).scale(-0.025F).temperature(0.2F).downfall(0.5F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.2F)).grassColorOverride(0xAD9364).foliageColorOverride(0xB5A76C).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(0.2F)).grassColorOverride(0xC08359).foliageColorOverride(0xC5975C).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -0,0 +1,91 @@
|
|||
/*******************************************************************************
|
||||
* 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 WoodedScrublandBiome extends BiomeTemplate
|
||||
{
|
||||
public WoodedScrublandBiome()
|
||||
{
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureBiome(Biome.Builder builder)
|
||||
{
|
||||
builder.precipitation(Biome.RainType.NONE).biomeCategory(Biome.Category.SAVANNA).depth(0.1F).scale(0.2F).temperature(1.1F).downfall(0.15F);
|
||||
|
||||
builder.specialEffects((new BiomeAmbience.Builder()).waterColor(4159204).waterFogColor(329011).fogColor(12638463).skyColor(calculateSkyColor(1.1F)).ambientMoodSound(MoodSoundAmbience.LEGACY_CAVE_SETTINGS).build());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void configureGeneration(BiomeGenerationSettings.Builder builder)
|
||||
{
|
||||
builder.surfaceBuilder(new ConfiguredSurfaceBuilder(SurfaceBuilder.DEFAULT, SurfaceBuilder.CONFIG_GRASS));
|
||||
|
||||
// Structures
|
||||
builder.addStructureStart(StructureFeatures.VILLAGE_SAVANNA);
|
||||
builder.addStructureStart(StructureFeatures.PILLAGER_OUTPOST);
|
||||
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.WOODED_SCRUBLAND_TREES);
|
||||
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.DESERT_GRASS_10);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.SCRUB_EXTRA);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.STANDARD_GRASS_12);
|
||||
builder.addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, BOPConfiguredFeatures.TALL_GRASS_6);
|
||||
|
||||
////////////////////////////////////////////////////////////
|
||||
|
||||
// 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.CREATURE, new MobSpawnInfo.Spawners(EntityType.HORSE, 5, 2, 6));
|
||||
builder.addSpawn(EntityClassification.CREATURE, new MobSpawnInfo.Spawners(EntityType.DONKEY, 1, 1, 3));
|
||||
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));
|
||||
}
|
||||
}
|
|
@ -18,6 +18,8 @@ import net.minecraft.world.biome.Biome;
|
|||
import net.minecraftforge.registries.ForgeRegistries;
|
||||
import net.minecraftforge.registries.ForgeRegistry;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
|
||||
public class BiomeUtil
|
||||
{
|
||||
public static RegistryKey<Biome> createKey(Biome biome)
|
||||
|
@ -86,8 +88,9 @@ public class BiomeUtil
|
|||
return getBiome(id) != null;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public static RegistryKey<Biome> getClientKey(Biome biome)
|
||||
{
|
||||
return Minecraft.getInstance().level.registryAccess().registryOrThrow(Registry.BIOME_REGISTRY).getResourceKey(biome).get();
|
||||
return Minecraft.getInstance().level.registryAccess().registryOrThrow(Registry.BIOME_REGISTRY).getResourceKey(biome).orElse(null);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -46,7 +46,7 @@ public class BOPBiomeProvider extends BiomeProvider
|
|||
|
||||
public BOPBiomeProvider(long seed, Registry<Biome> biomes)
|
||||
{
|
||||
super(Stream.concat(VANILLA_POSSIBLE_BIOMES.stream(), BOPClimates.getOverworldBiomes().stream()).map(BiomeUtil::getBiome).collect(Collectors.toList()));
|
||||
super(Stream.concat(VANILLA_POSSIBLE_BIOMES.stream(), BOPClimates.getOverworldBiomes().stream()).map(biomes::get).collect(Collectors.toList()));
|
||||
this.seed = seed;
|
||||
this.noiseBiomeLayer = BOPLayerUtil.createGenLayers(seed, new BOPOverworldGenSettings());
|
||||
this.biomes = biomes;
|
||||
|
|
|
@ -52,7 +52,7 @@ public class BOPNetherBiomeProvider extends BiomeProvider
|
|||
@Override
|
||||
protected Codec<? extends BiomeProvider> codec()
|
||||
{
|
||||
return CODEC.stable();
|
||||
return CODEC;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -96,10 +96,10 @@ public class BOPWorldTypeUtil
|
|||
if (server.getWorldData() instanceof ServerWorldInfo)
|
||||
{
|
||||
ServerWorldInfo worldInfo = (ServerWorldInfo)server.getWorldData();
|
||||
worldInfo.worldGenSettings = createDimensionGeneratorSettings(DynamicRegistries.builtin(), worldInfo.worldGenSettings.seed(), worldInfo.worldGenSettings.generateFeatures(), worldInfo.worldGenSettings.generateBonusChest());
|
||||
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(DynamicRegistries.builtin(), properties.worldGenSettings.seed(), properties.worldGenSettings.generateFeatures(), properties.worldGenSettings.generateBonusChest());
|
||||
properties.worldGenSettings = createDimensionGeneratorSettings(server.registryAccess(), properties.worldGenSettings.seed(), properties.worldGenSettings.generateFeatures(), properties.worldGenSettings.generateBonusChest());
|
||||
}
|
||||
}
|
||||
|
|
|
@ -31,6 +31,7 @@ public class BOPConfiguredFeatures
|
|||
{
|
||||
// Trees
|
||||
public static final ConfiguredFeature<?, ?> ACACIA_BUSH = register("acacia_bush", BOPFeatures.ACACIA_BUSH.configured(Features.OAK.config()));
|
||||
public static final ConfiguredFeature<?, ?> ACACIA_TWIGLET = register("acacia_twiglet", BOPFeatures.ACACIA_TWIGLET.configured(Features.OAK.config()));
|
||||
public static final ConfiguredFeature<?, ?> ACACIA_TWIGLET_SMALL = register("acacia_twiglet_small", BOPFeatures.ACACIA_TWIGLET_SMALL.configured(Features.OAK.config()));
|
||||
public static final ConfiguredFeature<?, ?> ACACIA_TWIGLET_TREE = register("acacia_twiglet_tree", BOPFeatures.ACACIA_TWIGLET_TREE.configured(Features.OAK.config()));
|
||||
public static final ConfiguredFeature<?, ?> ALPS_SPRUCE_TREE = register("alps_spruce_tree", BOPFeatures.ALPS_SPRUCE_TREE.configured(Features.OAK.config()));
|
||||
|
@ -94,6 +95,7 @@ public class BOPConfiguredFeatures
|
|||
public static final ConfiguredFeature<?, ?> TALL_SPRUCE_TREE = register("tall_spruce_tree", BOPFeatures.TALL_SPRUCE_TREE.configured(Features.OAK.config()));
|
||||
public static final ConfiguredFeature<?, ?> TALL_SPRUCE_TREE_BEES = register("tall_spruce_tree_bees", BOPFeatures.TALL_SPRUCE_TREE.configured(Features.OAK.config().withDecorators(ImmutableList.of(Features.Placements.BEEHIVE_005))));
|
||||
public static final ConfiguredFeature<?, ?> TALL_SWAMP_TREE = register("tall_swamp_tree", BOPFeatures.TALL_SWAMP_TREE.configured(Features.OAK.config()));
|
||||
public static final ConfiguredFeature<?, ?> TALL_TWIGLET_TREE = register("tall_twiglet_tree", BOPFeatures.TALL_TWIGLET_TREE.configured(Features.OAK.config()));
|
||||
public static final ConfiguredFeature<?, ?> TALL_UMBRAN_TREE = register("tall_umbran_tree", BOPFeatures.TALL_UMBRAN_TREE.configured(Features.OAK.config()));
|
||||
public static final ConfiguredFeature<?, ?> TWIGLET_TREE = register("twiglet_tree", BOPFeatures.TWIGLET_TREE.configured(Features.OAK.config()));
|
||||
public static final ConfiguredFeature<?, ?> TWIGLET_TREE_VOLCANO = register("twiglet_tree_volcano", BOPFeatures.TWIGLET_TREE_VOLCANO.configured(Features.OAK.config()));
|
||||
|
@ -114,8 +116,9 @@ public class BOPConfiguredFeatures
|
|||
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<?, ?> 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<?, ?> 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(24, 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), 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<?, ?> DRY_BONEYARD_TREES = register("dry_boneyard_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(TWIGLET_TREE.weighted(0.4F), SPARSE_OAK_TREE.weighted(0.2F)), ACACIA_TWIGLET_SMALL)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(1, 0.2F, 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))));
|
||||
|
@ -157,6 +160,7 @@ public class BOPConfiguredFeatures
|
|||
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.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))));
|
||||
public static final ConfiguredFeature<?, ?> WOODED_SCRUBLAND_TREES = register("wooded_scrubland_trees", Feature.RANDOM_SELECTOR.configured(new MultipleRandomFeatureConfig(ImmutableList.of(SPRUCE_TWIGLET_TREE.weighted(0.3F), TALL_TWIGLET_TREE.weighted(0.1F)), ACACIA_TWIGLET)).decorated(Features.Placements.HEIGHTMAP_SQUARE).decorated(Placement.COUNT_EXTRA.configured(new AtSurfaceWithExtraConfig(6, 0.5F, 1))));
|
||||
|
||||
// Biome Flower Listings
|
||||
public static final ConfiguredFeature<?, ?> CHERRY_BLOSSOM_GROVE_FLOWERS = register("cherry_blossom_grove_flowers", BOPFeatures.CHERRY_BLOSSOM_GROVE_FLOWERS.configured(IFeatureConfig.NONE).decorated(Features.Placements.ADD_32).decorated(Features.Placements.HEIGHTMAP_SQUARE.count(5)));
|
||||
|
@ -200,6 +204,7 @@ public class BOPConfiguredFeatures
|
|||
|
||||
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_5 = register("bush_5", Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(BOPBlocks.bush.defaultBlockState())).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(5)));
|
||||
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)));
|
||||
public static final ConfiguredFeature<?, ?> BUSH_15 = register("bush_15", Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(BOPBlocks.bush.defaultBlockState())).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(15)));
|
||||
public static final ConfiguredFeature<?, ?> BUSH_50 = register("bush_50", Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfiguration(BOPBlocks.bush.defaultBlockState())).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(50)));
|
||||
|
@ -242,7 +247,7 @@ public class BOPConfiguredFeatures
|
|||
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_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<?, ?> GOLDEN_PRAIRIE_TALL_WHEAT = register("golden_prairie_tall_wheat", Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDouble(BOPBlocks.tall_wheat.defaultBlockState())).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE).decorated(FeatureUtil.denseCount(500)));
|
||||
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)));
|
||||
|
||||
// Water Plants
|
||||
public static final ConfiguredFeature<?, ?> REED_5 = register("reed_5", Feature.RANDOM_PATCH.configured(BiomeFeatureHelper.createClusterConfigurationDoubleWater(BOPBlocks.reed.defaultBlockState())).decorated(Features.Placements.HEIGHTMAP_DOUBLE_SQUARE.count(5)));
|
||||
|
|
|
@ -33,7 +33,7 @@ public class CragSplatterFeature extends Feature<NoFeatureConfig>
|
|||
int j1 = l - pos.getZ();
|
||||
if (i1 * i1 + j1 * j1 <= j * j)
|
||||
{
|
||||
for (int k1 = pos.getY() - 2; k1 <= pos.getY() + 2; ++k1)
|
||||
for (int k1 = pos.getY() - 6; k1 <= pos.getY() + 6; ++k1)
|
||||
{
|
||||
BlockPos blockpos = new BlockPos(k, k1, l);
|
||||
BlockState blockstate = worldIn.getBlockState(blockpos);
|
||||
|
|
|
@ -163,7 +163,7 @@ public class MahoganyTreeFeature extends TreeFeatureBase
|
|||
}
|
||||
}
|
||||
|
||||
int height = world.getRandom().nextInt(3);
|
||||
int height = 1 + world.getRandom().nextInt(2);
|
||||
for (int i = 0; i <= height; i++)
|
||||
{
|
||||
if (replace.matches(world, pos.relative(direction, length+1).above(i+1)))
|
||||
|
|
|
@ -104,8 +104,8 @@ public class ModBiomes
|
|||
}
|
||||
|
||||
// Register biome providers
|
||||
Registry.register(Registry.BIOME_SOURCE, "biomesoplenty_overworld", BOPBiomeProvider.CODEC.stable());
|
||||
Registry.register(Registry.BIOME_SOURCE, "biomesoplenty_nether", BOPNetherBiomeProvider.CODEC.stable());
|
||||
Registry.register(Registry.BIOME_SOURCE, "biomesoplenty_overworld", BOPBiomeProvider.CODEC);
|
||||
Registry.register(Registry.BIOME_SOURCE, "biomesoplenty_nether", BOPNetherBiomeProvider.CODEC);
|
||||
}
|
||||
|
||||
@SubscribeEvent
|
||||
|
@ -136,7 +136,7 @@ public class ModBiomes
|
|||
registerBiome(new DeadSwampBiome(), "dead_swamp");
|
||||
registerBiome(new DeepBayouBiome(), "deep_bayou");
|
||||
registerBiome(new DrylandBiome(), "dryland");
|
||||
registerBiome(new DrySteppeBiome(), "dry_steppe");
|
||||
registerBiome(new DryBoneyardBiome(), "dry_boneyard");
|
||||
registerBiome(new FirClearingBiome(), "fir_clearing");
|
||||
registerBiome(new FlowerMeadowBiome(), "flower_meadow");
|
||||
registerBiome(new FungalJungleBiome(), "fungal_jungle");
|
||||
|
@ -167,6 +167,7 @@ public class ModBiomes
|
|||
registerBiome(new RainforestCliffsBiome(), "rainforest_cliffs");
|
||||
registerBiome(new RedwoodForestBiome(), "redwood_forest");
|
||||
registerBiome(new RedwoodHillsBiome(), "redwood_hills");
|
||||
registerBiome(new ScrublandBiome(), "scrubland");
|
||||
registerBiome(new SeasonalForestBiome(), "seasonal_forest");
|
||||
registerBiome(new SeasonalOrchardBiome(), "seasonal_orchard");
|
||||
registerBiome(new SeasonalPumpkinPatchBiome(), "seasonal_pumpkin_patch");
|
||||
|
@ -185,6 +186,7 @@ public class ModBiomes
|
|||
registerBiome(new WastelandBiome(), "wasteland");
|
||||
registerBiome(new WetlandBiome(), "wetland");
|
||||
registerBiome(new WetlandMarshBiome(), "wetland_marsh");
|
||||
registerBiome(new WoodedScrublandBiome(), "wooded_scrubland");
|
||||
registerBiome(new WoodedWastelandBiome(), "wooded_wasteland");
|
||||
|
||||
//Nether Biomes
|
||||
|
@ -207,7 +209,7 @@ public class ModBiomes
|
|||
|
||||
registerSubBiome(dead_forest, dead_swamp, 0.75F, 100);
|
||||
|
||||
registerSubBiome(dryland, dry_steppe, 1.0F, 100);
|
||||
registerSubBiome(dryland, dry_boneyard, 0.75F, 100);
|
||||
|
||||
registerSubBiome(fungal_jungle, overgrown_fungal_jungle, 0.8F, 100);
|
||||
|
||||
|
@ -236,8 +238,10 @@ public class ModBiomes
|
|||
|
||||
registerSubBiome(redwood_forest, redwood_hills, 0.75F, 100);
|
||||
|
||||
registerSubBiome(seasonal_forest, seasonal_orchard, 0.75F, 100);
|
||||
registerSubBiome(seasonal_forest, seasonal_pumpkin_patch, 0.75F, 100);
|
||||
registerSubBiome(scrubland, wooded_scrubland, 1.0F, 100);
|
||||
|
||||
registerSubBiome(seasonal_forest, seasonal_orchard, 1.0F, 100);
|
||||
registerSubBiome(seasonal_forest, seasonal_pumpkin_patch, 1.0F, 100);
|
||||
|
||||
registerSubBiome(shrubland, shrubland_hills, 0.75F, 100);
|
||||
|
||||
|
@ -282,7 +286,7 @@ public class ModBiomes
|
|||
registerVanillaBiome(Biomes.SNOWY_TAIGA, BOPClimates.TUNDRA, 7);
|
||||
registerVanillaBiome(Biomes.TAIGA, BOPClimates.WET_BOREAL, 10);
|
||||
registerVanillaBiome(Biomes.GIANT_TREE_TAIGA, BOPClimates.DRY_BOREAL, 5);
|
||||
registerVanillaBiome(Biomes.DARK_FOREST, BOPClimates.WET_TEMPERATE, 5);
|
||||
registerVanillaBiome(Biomes.DARK_FOREST, BOPClimates.WET_TEMPERATE, 7);
|
||||
registerVanillaBiome(Biomes.BIRCH_FOREST, BOPClimates.DRY_TEMPERATE, 5);
|
||||
registerVanillaBiome(Biomes.FOREST, BOPClimates.COOL_TEMPERATE, 10);
|
||||
registerVanillaBiome(Biomes.PLAINS, BOPClimates.WARM_TEMPERATE, 10);
|
||||
|
@ -319,8 +323,8 @@ public class ModBiomes
|
|||
registerVillagerType(dead_forest, VillagerType.TAIGA);
|
||||
registerVillagerType(dead_swamp, VillagerType.TAIGA);
|
||||
registerVillagerType(deep_bayou, VillagerType.SWAMP);
|
||||
registerVillagerType(dryland, VillagerType.SAVANNA);
|
||||
registerVillagerType(dry_steppe, VillagerType.SAVANNA);
|
||||
registerVillagerType(dryland, VillagerType.PLAINS);
|
||||
registerVillagerType(dry_boneyard, VillagerType.PLAINS);
|
||||
registerVillagerType(fir_clearing, VillagerType.TAIGA);
|
||||
registerVillagerType(flower_meadow, VillagerType.TAIGA);
|
||||
registerVillagerType(fungal_jungle, VillagerType.JUNGLE);
|
||||
|
@ -353,6 +357,7 @@ public class ModBiomes
|
|||
registerVillagerType(redwood_forest, VillagerType.PLAINS);
|
||||
registerVillagerType(redwood_forest_edge, VillagerType.PLAINS);
|
||||
registerVillagerType(redwood_hills, VillagerType.PLAINS);
|
||||
registerVillagerType(scrubland, VillagerType.SAVANNA);
|
||||
registerVillagerType(seasonal_forest, VillagerType.PLAINS);
|
||||
registerVillagerType(seasonal_orchard, VillagerType.PLAINS);
|
||||
registerVillagerType(seasonal_pumpkin_patch, VillagerType.PLAINS);
|
||||
|
@ -373,6 +378,7 @@ public class ModBiomes
|
|||
registerVillagerType(wasteland, VillagerType.DESERT);
|
||||
registerVillagerType(wetland, VillagerType.SWAMP);
|
||||
registerVillagerType(wetland_marsh, VillagerType.SWAMP);
|
||||
registerVillagerType(wooded_scrubland, VillagerType.SAVANNA);
|
||||
registerVillagerType(wooded_wasteland, VillagerType.DESERT);
|
||||
}
|
||||
|
||||
|
|
|
@ -308,10 +308,10 @@ public class ModBlocks
|
|||
|
||||
//Tall Plants
|
||||
cattail = registerBlock(new DoubleWatersidePlantBlock(AbstractBlock.Properties.of(Material.PLANT, MaterialColor.DIRT).noCollission().instabreak().sound(SoundType.GRASS)), "cattail");
|
||||
tall_wheat = registerBlock(new DoublePlantBlockBOP(AbstractBlock.Properties.of(Material.PLANT, MaterialColor.TERRACOTTA_YELLOW).noCollission().instabreak().sound(SoundType.GRASS)), "tall_wheat");
|
||||
reed = registerBlock(new DoubleWaterPlantBlock(AbstractBlock.Properties.of(Material.PLANT, MaterialColor.DIRT).noCollission().instabreak().sound(SoundType.GRASS)), "reed");
|
||||
watergrass = registerBlock(new DoubleWaterPlantBlock(AbstractBlock.Properties.of(Material.PLANT).noCollission().instabreak().sound(SoundType.GRASS)), "watergrass");
|
||||
mangrove_root = registerBlock(new DoubleWaterPlantBlock(AbstractBlock.Properties.of(Material.PLANT, MaterialColor.TERRACOTTA_WHITE).noCollission().strength(1.0F, 1.5F).sound(SoundType.WOOD)), "mangrove_root");
|
||||
barley = registerBlock(new DoublePlantBlockBOP(AbstractBlock.Properties.of(Material.PLANT, MaterialColor.TERRACOTTA_YELLOW).noCollission().instabreak().sound(SoundType.GRASS)), "barley");
|
||||
reed = registerBlock(new DoubleWaterPlantBlock(AbstractBlock.Properties.of(Material.REPLACEABLE_WATER_PLANT, MaterialColor.DIRT).noCollission().instabreak().sound(SoundType.GRASS)), "reed");
|
||||
watergrass = registerBlock(new DoubleWaterPlantBlock(AbstractBlock.Properties.of(Material.REPLACEABLE_WATER_PLANT).noCollission().instabreak().sound(SoundType.GRASS)), "watergrass");
|
||||
mangrove_root = registerBlock(new DoubleWaterPlantBlock(AbstractBlock.Properties.of(Material.WATER_PLANT, MaterialColor.TERRACOTTA_WHITE).noCollission().strength(1.0F, 1.5F).sound(SoundType.WOOD)), "mangrove_root");
|
||||
|
||||
dead_branch = registerBlock(new DeadBranchBlock(AbstractBlock.Properties.of(Material.WOOD, MaterialColor.COLOR_GRAY).noCollission().instabreak().sound(SoundType.WOOD)), "dead_branch");
|
||||
bramble = registerBlock(new BrambleBlock(AbstractBlock.Properties.of(Material.PLANT, MaterialColor.NETHER).strength(0.4F).harvestLevel(0).harvestTool(ToolType.AXE).sound(SoundType.WOOD)), "bramble");
|
||||
|
@ -414,7 +414,7 @@ public class ModBlocks
|
|||
RenderTypeLookup.setRenderLayer(desert_grass, cutoutRenderType);
|
||||
RenderTypeLookup.setRenderLayer(dead_grass, cutoutRenderType);
|
||||
RenderTypeLookup.setRenderLayer(cattail, cutoutRenderType);
|
||||
RenderTypeLookup.setRenderLayer(tall_wheat, cutoutRenderType);
|
||||
RenderTypeLookup.setRenderLayer(barley, cutoutRenderType);
|
||||
RenderTypeLookup.setRenderLayer(reed, cutoutRenderType);
|
||||
RenderTypeLookup.setRenderLayer(watergrass, cutoutRenderType);
|
||||
RenderTypeLookup.setRenderLayer(mangrove_root, cutoutRenderType);
|
||||
|
|
|
@ -136,7 +136,7 @@ public class ModVanillaCompat
|
|||
registerFlammable(BOPBlocks.desert_grass, 60, 100);
|
||||
registerFlammable(BOPBlocks.dead_grass, 60, 100);
|
||||
registerFlammable(BOPBlocks.dead_branch, 60, 100);
|
||||
registerFlammable(BOPBlocks.tall_wheat, 60, 100);
|
||||
registerFlammable(BOPBlocks.barley, 60, 100);
|
||||
|
||||
//Log Stripping
|
||||
registerStrippable(BOPBlocks.fir_log, BOPBlocks.stripped_fir_log);
|
||||
|
@ -228,7 +228,7 @@ public class ModVanillaCompat
|
|||
registerCompostable(0.5F, BOPBlocks.dead_grass);
|
||||
|
||||
registerCompostable(0.5F, BOPBlocks.cattail);
|
||||
registerCompostable(0.5F, BOPBlocks.tall_wheat);
|
||||
registerCompostable(0.5F, BOPBlocks.barley);
|
||||
registerCompostable(0.5F, BOPBlocks.reed);
|
||||
registerCompostable(0.5F, BOPBlocks.watergrass);
|
||||
registerCompostable(0.5F, BOPBlocks.mangrove_root);
|
||||
|
|
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"variants": {
|
||||
"half=lower": { "model": "biomesoplenty:block/barley_bottom" },
|
||||
"half=upper": { "model": "biomesoplenty:block/barley_top" }
|
||||
}
|
||||
}
|
|
@ -1,6 +0,0 @@
|
|||
{
|
||||
"variants": {
|
||||
"half=lower": { "model": "biomesoplenty:block/tall_wheat_bottom" },
|
||||
"half=upper": { "model": "biomesoplenty:block/tall_wheat_top" }
|
||||
}
|
||||
}
|
|
@ -21,7 +21,7 @@
|
|||
"biome.biomesoplenty.dead_swamp": "Dead Swamp",
|
||||
"biome.biomesoplenty.deep_bayou": "Deep Bayou",
|
||||
"biome.biomesoplenty.dryland": "Dryland",
|
||||
"biome.biomesoplenty.dry_steppe": "Dry Steppe",
|
||||
"biome.biomesoplenty.dry_boneyard": "Dry Boneyard",
|
||||
"biome.biomesoplenty.fir_clearing": "Fir Clearing",
|
||||
"biome.biomesoplenty.flower_meadow": "Flower Meadow",
|
||||
"biome.biomesoplenty.fungal_jungle": "Fungal Jungle",
|
||||
|
@ -55,6 +55,7 @@
|
|||
"biome.biomesoplenty.redwood_forest": "Redwood Forest",
|
||||
"biome.biomesoplenty.redwood_forest_edge": "Redwood Forest Edge",
|
||||
"biome.biomesoplenty.redwood_hills": "Redwood Hills",
|
||||
"biome.biomesoplenty.scrubland": "Scrubland",
|
||||
"biome.biomesoplenty.seasonal_forest": "Seasonal Forest",
|
||||
"biome.biomesoplenty.seasonal_orchard": "Seasonal Orchard",
|
||||
"biome.biomesoplenty.seasonal_pumpkin_patch": "Seasonal Pumpkin Patch",
|
||||
|
@ -78,6 +79,7 @@
|
|||
"biome.biomesoplenty.wetland": "Wetland",
|
||||
"biome.biomesoplenty.wetland_marsh": "Wetland Marsh",
|
||||
"biome.biomesoplenty.withered_abyss": "Withered Abyss",
|
||||
"biome.biomesoplenty.wooded_scrubland": "Wooded Scrubland",
|
||||
"biome.biomesoplenty.wooded_wasteland": "Wooded Wasteland",
|
||||
|
||||
"item.biomesoplenty.bop_icon": "BOP Icon",
|
||||
|
@ -97,6 +99,7 @@
|
|||
"item.biomesoplenty.umbran_boat": "Umbran Boat",
|
||||
"item.biomesoplenty.willow_boat": "Willow Boat",
|
||||
|
||||
"block.biomesoplenty.barley": "Barley",
|
||||
"block.biomesoplenty.black_sand": "Black Sand",
|
||||
"block.biomesoplenty.black_sandstone": "Black Sandstone",
|
||||
"block.biomesoplenty.black_sandstone_slab": "Black Sandstone Slab",
|
||||
|
@ -354,7 +357,6 @@
|
|||
"block.biomesoplenty.stripped_umbran_wood": "Stripped Umbran Wood",
|
||||
"block.biomesoplenty.stripped_willow_log": "Stripped Willow Log",
|
||||
"block.biomesoplenty.stripped_willow_wood": "Stripped Willow Wood",
|
||||
"block.biomesoplenty.tall_wheat": "Tall Wheat",
|
||||
"block.biomesoplenty.toadstool": "Toadstool",
|
||||
"block.biomesoplenty.toadstool_block": "Toadstool Block",
|
||||
"block.biomesoplenty.umbran_button": "Umbran Button",
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"parent": "block/cross",
|
||||
"textures": {
|
||||
"cross": "biomesoplenty:block/tall_wheat_top"
|
||||
"cross": "biomesoplenty:block/barley_bottom"
|
||||
}
|
||||
}
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"parent": "block/cross",
|
||||
"textures": {
|
||||
"cross": "biomesoplenty:block/tall_wheat_bottom"
|
||||
"cross": "biomesoplenty:block/barley_top"
|
||||
}
|
||||
}
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"parent": "item/generated",
|
||||
"textures": {
|
||||
"layer0": "biomesoplenty:block/tall_wheat_top"
|
||||
"layer0": "biomesoplenty:block/barley_top"
|
||||
}
|
||||
}
|
|
@ -5,8 +5,8 @@ block.10031 = biomesoplenty:sprout biomesoplenty:dune_grass biomesoplenty:desert
|
|||
block.10059 = biomesoplenty:origin_sapling biomesoplenty:flowering_oak_sapling biomesoplenty:rainbow_birch_sapling biomesoplenty:yellow_autumn_sapling biomesoplenty:orange_autumn_sapling biomesoplenty:maple_sapling biomesoplenty:fir_sapling biomesoplenty:redwood_sapling biomesoplenty:white_cherry_sapling biomesoplenty:pink_cherry_sapling biomesoplenty:mahogany_sapling biomesoplenty:jacaranda_sapling biomesoplenty:palm_sapling biomesoplenty:willow_sapling biomesoplenty:dead_sapling biomesoplenty:magic_sapling biomesoplenty:umbran_sapling biomesoplenty:hellbark_sapling biomesoplenty:rose biomesoplenty:violet biomesoplenty:lavender biomesoplenty:wildflower biomesoplenty:orange_cosmos biomesoplenty:pink_daffodil biomesoplenty:pink_hibiscus biomesoplenty:glowflower biomesoplenty:wilted_lily biomesoplenty:burning_blossom biomesoplenty:bush
|
||||
|
||||
# Tall Plants
|
||||
block.10175 = biomesoplenty:blue_hydrangea:half=lower biomesoplenty:goldenrod:half=lower biomesoplenty:cattail:half=lower biomesoplenty:tall_wheat:half=lower biomesoplenty:reed:half=lower biomesoplenty:watergrass:half=lower
|
||||
block.10176 = biomesoplenty:blue_hydrangea:half=upper biomesoplenty:goldenrod:half=upper biomesoplenty:cattail:half=upper biomesoplenty:tall_wheat:half=upper biomesoplenty:reed:half=upper biomesoplenty:watergrass:half=upper
|
||||
block.10175 = biomesoplenty:blue_hydrangea:half=lower biomesoplenty:goldenrod:half=lower biomesoplenty:cattail:half=lower biomesoplenty:barley:half=lower biomesoplenty:reed:half=lower biomesoplenty:watergrass:half=lower
|
||||
block.10176 = biomesoplenty:blue_hydrangea:half=upper biomesoplenty:goldenrod:half=upper biomesoplenty:cattail:half=upper biomesoplenty:barley:half=upper biomesoplenty:reed:half=upper biomesoplenty:watergrass:half=upper
|
||||
|
||||
# Leaves
|
||||
block.10018 = biomesoplenty:origin_leaves biomesoplenty:flowering_oak_leaves biomesoplenty:rainbow_birch_leaves biomesoplenty:yellow_autumn_leaves biomesoplenty:orange_autumn_leaves biomesoplenty:maple_leaves biomesoplenty:fir_leaves biomesoplenty:redwood_leaves biomesoplenty:white_cherry_leaves biomesoplenty:pink_cherry_leaves biomesoplenty:mahogany_leaves biomesoplenty:jacaranda_leaves biomesoplenty:palm_leaves biomesoplenty:willow_leaves biomesoplenty:dead_leaves biomesoplenty:magic_leaves biomesoplenty:umbran_leaves biomesoplenty:hellbark_leaves
|
||||
|
|
After Width: | Height: | Size: 473 B |
After Width: | Height: | Size: 374 B |
Before Width: | Height: | Size: 365 B After Width: | Height: | Size: 357 B |
Before Width: | Height: | Size: 306 B After Width: | Height: | Size: 295 B |
Before Width: | Height: | Size: 344 B After Width: | Height: | Size: 370 B |
Before Width: | Height: | Size: 356 B After Width: | Height: | Size: 334 B |
Before Width: | Height: | Size: 333 B After Width: | Height: | Size: 367 B |
Before Width: | Height: | Size: 328 B After Width: | Height: | Size: 392 B |
Before Width: | Height: | Size: 466 B |
Before Width: | Height: | Size: 423 B |
Before Width: | Height: | Size: 219 B After Width: | Height: | Size: 265 B |
|
@ -93,10 +93,10 @@
|
|||
"biome": "biomesoplenty:dryland"
|
||||
}
|
||||
},
|
||||
"dry_steppe": {
|
||||
"dry_boneyard": {
|
||||
"trigger": "minecraft:location",
|
||||
"conditions": {
|
||||
"biome": "biomesoplenty:dry_steppe"
|
||||
"biome": "biomesoplenty:dry_boneyard"
|
||||
}
|
||||
},
|
||||
"fir_clearing": {
|
||||
|
@ -296,6 +296,12 @@
|
|||
"conditions": {
|
||||
"biome": "biomesoplenty:redwood_hills"
|
||||
}
|
||||
},
|
||||
"scrubland": {
|
||||
"trigger": "minecraft:location",
|
||||
"conditions": {
|
||||
"biome": "biomesoplenty:scrubland"
|
||||
}
|
||||
},
|
||||
"seasonal_forest": {
|
||||
"trigger": "minecraft:location",
|
||||
|
@ -434,6 +440,12 @@
|
|||
"conditions": {
|
||||
"biome": "biomesoplenty:withered_abyss"
|
||||
}
|
||||
},
|
||||
"wooded_scrubland": {
|
||||
"trigger": "minecraft:location",
|
||||
"conditions": {
|
||||
"biome": "biomesoplenty:wooded_scrubland"
|
||||
}
|
||||
},
|
||||
"wooded_wasteland": {
|
||||
"trigger": "minecraft:location",
|
||||
|
|
|
@ -92,10 +92,10 @@
|
|||
"biome": "biomesoplenty:dryland"
|
||||
}
|
||||
},
|
||||
"dry_steppe": {
|
||||
"dry_boneyard": {
|
||||
"trigger": "minecraft:location",
|
||||
"conditions": {
|
||||
"biome": "biomesoplenty:dry_steppe"
|
||||
"biome": "biomesoplenty:dry_boneyard"
|
||||
}
|
||||
},
|
||||
"fir_clearing": {
|
||||
|
@ -295,6 +295,12 @@
|
|||
"conditions": {
|
||||
"biome": "biomesoplenty:redwood_hills"
|
||||
}
|
||||
},
|
||||
"scrubland": {
|
||||
"trigger": "minecraft:location",
|
||||
"conditions": {
|
||||
"biome": "biomesoplenty:scrubland"
|
||||
}
|
||||
},
|
||||
"seasonal_forest": {
|
||||
"trigger": "minecraft:location",
|
||||
|
@ -433,6 +439,12 @@
|
|||
"conditions": {
|
||||
"biome": "biomesoplenty:withered_abyss"
|
||||
}
|
||||
},
|
||||
"wooded_scrubland": {
|
||||
"trigger": "minecraft:location",
|
||||
"conditions": {
|
||||
"biome": "biomesoplenty:wooded_scrubland"
|
||||
}
|
||||
},
|
||||
"wooded_wasteland": {
|
||||
"trigger": "minecraft:location",
|
||||
|
@ -456,7 +468,7 @@
|
|||
"dead_swamp",
|
||||
"deep_bayou",
|
||||
"dryland",
|
||||
"dry_steppe",
|
||||
"dry_boneyard",
|
||||
"fir_clearing",
|
||||
"flower_meadow",
|
||||
"fungal_jungle",
|
||||
|
@ -490,6 +502,7 @@
|
|||
"redwood_forest",
|
||||
"redwood_forest_edge",
|
||||
"redwood_hills",
|
||||
"scrubland",
|
||||
"seasonal_forest",
|
||||
"seasonal_orchard",
|
||||
"seasonal_pumpkin_patch",
|
||||
|
@ -513,6 +526,7 @@
|
|||
"wetland",
|
||||
"wetland_marsh",
|
||||
"withered_abyss",
|
||||
"wooded_scrubland",
|
||||
"wooded_wasteland"
|
||||
]
|
||||
]
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
}
|
||||
}
|
||||
],
|
||||
"name": "biomesoplenty:tall_wheat"
|
||||
"name": "biomesoplenty:barley"
|
||||
},
|
||||
{
|
||||
"type": "minecraft:item",
|
||||
|
@ -27,7 +27,7 @@
|
|||
},
|
||||
{
|
||||
"condition": "minecraft:block_state_property",
|
||||
"block": "biomesoplenty:tall_wheat",
|
||||
"block": "biomesoplenty:barley",
|
||||
"properties": {
|
||||
"half": "lower"
|
||||
}
|