package net.tropicraft.core.common.dimension.biome;

import net.minecraft.world.biome.Biome;
import net.minecraft.world.biome.DefaultBiomeFeatures;
import net.minecraft.world.gen.surfacebuilders.SurfaceBuilder;
import net.tropicraft.core.common.dimension.config.TropicsBuilderConfigs;

public class TropicsOceanBiome extends TropicraftBiome {
    public TropicsOceanBiome() {
        super(new Biome.Builder()
                .surfaceBuilder(SurfaceBuilder.DEFAULT, TropicsBuilderConfigs.PURIFIED_SAND_CONFIG)
                .precipitation(RainType.RAIN)
                .category(Category.OCEAN)
                .depth(-1.6F)
                .scale(0.4F)
                .temperature(1.5F)
                .downfall(1.25F)
                .parent(null)
        );

        DefaultBiomeFeatures.addOceanCarvers(this);

//        this.addSpawn(new SpawnListEntry(EntitySeahorse.class, 6, 6, 12));
//        this.spawnableWaterCreatureList.add(new SpawnListEntry(EntityMarlin.class, 10, 1, 4));
//        this.spawnableWaterCreatureList.add(new SpawnListEntry(EntityManOWar.class, 2, 1, 1));
//        this.spawnableWaterCreatureList.add(new SpawnListEntry(EntityStarfish.class, 4, 1, 4));
//        this.spawnableWaterCreatureList.add(new SpawnListEntry(EntitySeaUrchin.class, 4, 1, 4));
//        this.spawnableWaterCreatureList.add(new SpawnListEntry(EntityDolphin.class, 3, 4, 7));
//        this.spawnableWaterCreatureList.add(new SpawnListEntry(EntitySeaTurtle.class, 6, 3, 8));
//        this.spawnableMonsterList.add(new SpawnListEntry(EntityFailgull.class, 30, 5, 15));
//        this.spawnableWaterCreatureList.add(new SpawnListEntry(EntityTropicalFish.class, 20, 1, 1));
//        this.spawnableWaterCreatureList.add(new SpawnListEntry(EntityEagleRay.class, 6, 2, 4));
//        this.spawnableWaterCreatureList.add(new SpawnListEntry(EntityShark.class, 3, 1, 3));
    }
}

@@ -141,16 +141,496 @@
 atures;%0A
+import net.minecraft.world.gen.GenerationStage;%0Aimport net.minecraft.world.gen.Heightmap;%0Aimport net.minecraft.world.gen.feature.Feature;%0Aimport net.minecraft.world.gen.feature.IFeatureConfig;%0Aimport net.minecraft.world.gen.feature.SingleRandomFeature;%0Aimport net.minecraft.world.gen.placement.ChanceConfig;%0Aimport net.minecraft.world.gen.placement.CountConfig;%0Aimport net.minecraft.world.gen.placement.Placement;%0Aimport net.minecraft.world.gen.placement.TopSolidWithNoiseConfig;%0A
 import n
@@ -684,16 +684,16 @@
 uilder;%0A
-
 import n
@@ -1240,16 +1240,50 @@
     );%0A%0A
+        // Vanilla warm ocean gen%0A
         
@@ -1325,16 +1325,732 @@
 s(this);
+%0A        addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, createDecoratedFeature(Feature.SIMPLE_RANDOM_SELECTOR, new SingleRandomFeature(new Feature%5B%5D%7BFeature.CORAL_TREE, Feature.CORAL_CLAW, Feature.CORAL_MUSHROOM%7D, new IFeatureConfig%5B%5D%7BIFeatureConfig.NO_FEATURE_CONFIG, IFeatureConfig.NO_FEATURE_CONFIG, IFeatureConfig.NO_FEATURE_CONFIG%7D), Placement.TOP_SOLID_HEIGHTMAP_NOISE_BIASED, new TopSolidWithNoiseConfig(20, 400.0D, 0.0D, Heightmap.Type.OCEAN_FLOOR_WG)));%0A        DefaultBiomeFeatures.func_222309_aj(this);%0A        addFeature(GenerationStage.Decoration.VEGETAL_DECORATION, createDecoratedFeature(Feature.SEA_PICKLE, new CountConfig(20), Placement.CHANCE_TOP_SOLID_HEIGHTMAP, new ChanceConfig(16)));
 %0A%0A//    

Add vanilla warm ocean gen to tropicraft oceans