diff --git a/common/src/main/java/com/dfsek/terra/config/base/ConfigPack.java b/common/src/main/java/com/dfsek/terra/config/base/ConfigPack.java index c73fbeedb..664a2f3c7 100644 --- a/common/src/main/java/com/dfsek/terra/config/base/ConfigPack.java +++ b/common/src/main/java/com/dfsek/terra/config/base/ConfigPack.java @@ -143,7 +143,7 @@ public class ConfigPack implements LoaderRegistrar { .open("ores").then(streams -> buildAll(new OreFactory(), oreRegistry, abstractConfigLoader.load(streams, OreTemplate::new), main)).close() .open("flora").then(streams -> buildAll(new FloraFactory(), floraRegistry, abstractConfigLoader.load(streams, FloraTemplate::new), main)).close() .open("carving").then(streams -> buildAll(new CarverFactory(this), carverRegistry, abstractConfigLoader.load(streams, CarverTemplate::new), main)).close() - .open("biomes").then(streams -> buildAll(new BiomeFactory(this), biomeRegistry, abstractConfigLoader.load(streams, () -> new BiomeTemplate(this)), main)).close() + .open("biomes").then(streams -> buildAll(new BiomeFactory(this), biomeRegistry, abstractConfigLoader.load(streams, () -> new BiomeTemplate(this, main)), main)).close() .open("grids").then(streams -> buildAll(new BiomeGridFactory(), biomeGridRegistry, abstractConfigLoader.load(streams, BiomeGridTemplate::new), main)).close(); for(UserDefinedBiome b : biomeRegistry.entries()) { try { diff --git a/common/src/main/java/com/dfsek/terra/config/templates/BiomeTemplate.java b/common/src/main/java/com/dfsek/terra/config/templates/BiomeTemplate.java index 2f9183dd6..d82f72dc0 100644 --- a/common/src/main/java/com/dfsek/terra/config/templates/BiomeTemplate.java +++ b/common/src/main/java/com/dfsek/terra/config/templates/BiomeTemplate.java @@ -7,10 +7,12 @@ import com.dfsek.tectonic.config.ValidatedConfigTemplate; import com.dfsek.tectonic.exception.ValidationException; import com.dfsek.terra.api.gaea.util.GlueList; import com.dfsek.terra.api.gaea.world.palette.Palette; +import com.dfsek.terra.api.generic.TerraPlugin; import com.dfsek.terra.api.generic.world.Biome; import com.dfsek.terra.api.generic.world.block.BlockData; import com.dfsek.terra.api.generic.world.block.MaterialData; import com.dfsek.terra.biome.palette.PaletteHolder; +import com.dfsek.terra.biome.palette.SinglePalette; import com.dfsek.terra.carving.UserDefinedCarver; import com.dfsek.terra.config.base.ConfigPack; import com.dfsek.terra.generation.items.TerraStructure; @@ -30,6 +32,8 @@ import java.util.Map; public class BiomeTemplate extends AbstractableTemplate implements ValidatedConfigTemplate { private final ConfigPack pack; + + @Value("id") private String id; @@ -73,7 +77,7 @@ public class BiomeTemplate extends AbstractableTemplate implements ValidatedConf @Value("ocean.palette") @Abstractable @Default - private Palette oceanPalette = null; + private Palette oceanPalette; @Value("elevation.equation") @Default @@ -152,8 +156,9 @@ public class BiomeTemplate extends AbstractableTemplate implements ValidatedConf return stairPalettes; } - public BiomeTemplate(ConfigPack pack) { + public BiomeTemplate(ConfigPack pack, TerraPlugin main) { this.pack = pack; + oceanPalette = new SinglePalette<>(main.getWorldHandle().createBlockData("minecraft:water")); } public String getElevationEquation() { diff --git a/common/src/main/java/com/dfsek/terra/generation/TerraChunkGenerator.java b/common/src/main/java/com/dfsek/terra/generation/TerraChunkGenerator.java index 328d12e55..4fd96339c 100644 --- a/common/src/main/java/com/dfsek/terra/generation/TerraChunkGenerator.java +++ b/common/src/main/java/com/dfsek/terra/generation/TerraChunkGenerator.java @@ -155,7 +155,7 @@ public class TerraChunkGenerator implements com.dfsek.terra.api.generic.generato } paletteLevel++; } else if(y <= sea) { - //chunk.setBlock(x, y, z, seaPalette.get(sea - y, x + xOrig, z + zOrig)); + chunk.setBlock(x, y, z, seaPalette.get(sea - y, x + xOrig, z + zOrig)); if(justSet && c.doSlabs()) { SlabUtil.prepareBlockPartCeiling(data, chunk.getBlockData(x, y, z), chunk, new Vector3(x, y, z), c.getSlabPalettes(), c.getStairPalettes(), c.getSlabThreshold(), sampler); }