From 9c86d015f0a3d5f616afa28805b0271713e0a4bf Mon Sep 17 00:00:00 2001 From: dfsek Date: Mon, 14 Jun 2021 17:55:47 -0700 Subject: [PATCH] meta-ify BiomePipelineTemplate --- .../templates/provider/BiomePipelineTemplate.java | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/common/src/main/java/com/dfsek/terra/config/loaders/config/biome/templates/provider/BiomePipelineTemplate.java b/common/src/main/java/com/dfsek/terra/config/loaders/config/biome/templates/provider/BiomePipelineTemplate.java index 31f448553..448be7ec6 100644 --- a/common/src/main/java/com/dfsek/terra/config/loaders/config/biome/templates/provider/BiomePipelineTemplate.java +++ b/common/src/main/java/com/dfsek/terra/config/loaders/config/biome/templates/provider/BiomePipelineTemplate.java @@ -3,6 +3,7 @@ package com.dfsek.terra.config.loaders.config.biome.templates.provider; import com.dfsek.tectonic.annotations.Default; import com.dfsek.tectonic.annotations.Value; import com.dfsek.terra.api.TerraPlugin; +import com.dfsek.terra.api.config.meta.MetaValue; import com.dfsek.terra.api.util.seeded.SourceSeeded; import com.dfsek.terra.api.util.seeded.StageSeeded; import com.dfsek.terra.api.world.biome.pipeline.BiomePipeline; @@ -16,13 +17,13 @@ public class BiomePipelineTemplate extends BiomeProviderTemplate { private final TerraPlugin main; @Value("pipeline.initial-size") @Default - private int initialSize = 2; + private MetaValue initialSize = MetaValue.of(2); @Value("pipeline.stages") - private List stages; + private List> stages; @Value("pipeline.source") - private SourceSeeded source; + private MetaValue source; public BiomePipelineTemplate(TerraPlugin main) { this.main = main; @@ -30,9 +31,9 @@ public class BiomePipelineTemplate extends BiomeProviderTemplate { @Override public BiomeProvider build(long seed) { - BiomePipeline.BiomePipelineBuilder biomePipelineBuilder = new BiomePipeline.BiomePipelineBuilder(initialSize); - stages.forEach(biomePipelineBuilder::addStage); - BiomePipeline pipeline = biomePipelineBuilder.build(source.apply(seed), seed); + BiomePipeline.BiomePipelineBuilder biomePipelineBuilder = new BiomePipeline.BiomePipelineBuilder(initialSize.get()); + stages.stream().map(MetaValue::get).forEach(biomePipelineBuilder::addStage); + BiomePipeline pipeline = biomePipelineBuilder.build(source.get().apply(seed), seed); return new StandardBiomeProvider(pipeline, main, resolution, blend.apply(seed), blendAmp, (int) seed); } }