ColorPicker -> ColorSampler

This commit is contained in:
Astrash
2022-11-25 10:17:56 +11:00
parent 64c2a41d19
commit 8670c4cdf3
17 changed files with 105 additions and 115 deletions
@@ -7,28 +7,25 @@
package com.dfsek.terra.addons.biome.image;
import java.awt.image.BufferedImage;
import java.util.Optional;
import com.dfsek.terra.addons.image.converter.ColorConverter;
import com.dfsek.terra.addons.image.picker.ColorPicker;
import com.dfsek.terra.addons.image.sampler.ColorSampler;
import com.dfsek.terra.api.world.biome.Biome;
import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
public class ImageBiomeProvider implements BiomeProvider {
private final BufferedImage image;
private final int resolution;
private final ColorConverter<Biome> colorConverter;
private final ColorPicker colorPicker;
private final ColorSampler colorSampler;
public ImageBiomeProvider(BufferedImage image, ColorConverter<Biome> colorConverter, ColorPicker colorPicker, int resolution) {
this.image = image;
public ImageBiomeProvider(ColorConverter<Biome> colorConverter, ColorSampler colorSampler, int resolution) {
this.resolution = resolution;
this.colorConverter = colorConverter;
this.colorPicker = colorPicker;
this.colorSampler = colorSampler;
}
@Override
@@ -39,7 +36,7 @@ public class ImageBiomeProvider implements BiomeProvider {
public Biome getBiome(int x, int z) {
x /= resolution;
z /= resolution;
return colorConverter.apply(colorPicker.apply(image, x, z));
return colorConverter.apply(colorSampler.apply(x, z));
}
@Override
@@ -12,11 +12,9 @@ import com.dfsek.tectonic.api.config.template.annotations.Description;
import com.dfsek.tectonic.api.config.template.annotations.Value;
import com.dfsek.tectonic.api.config.template.object.ObjectTemplate;
import java.awt.image.BufferedImage;
import com.dfsek.terra.addons.biome.image.ImageBiomeProvider;
import com.dfsek.terra.addons.image.converter.ColorConverter;
import com.dfsek.terra.addons.image.picker.ColorPicker;
import com.dfsek.terra.addons.image.sampler.ColorSampler;
import com.dfsek.terra.api.world.biome.Biome;
import com.dfsek.terra.api.world.biome.generation.BiomeProvider;
@@ -30,16 +28,13 @@ public class ImageProviderTemplate implements ObjectTemplate<BiomeProvider> {
private int resolution = 1;
@Value("image")
private BufferedImage image;
@Value("mode")
private ColorPicker colorPicker;
private ColorSampler colorSampler;
@Value("biomes")
private ColorConverter<Biome> colorConverter;
@Override
public BiomeProvider get() {
return new ImageBiomeProvider(image, colorConverter, colorPicker, resolution);
return new ImageBiomeProvider(colorConverter, colorSampler, resolution);
}
}