Allow biome weights to be configured, add config warning logging
This commit is contained in:
parent
17ea1755e8
commit
7007e8bd92
2 changed files with 28 additions and 1 deletions
|
@ -17,6 +17,7 @@ import biomesoplenty.api.biome.generation.GenerationManager;
|
||||||
import biomesoplenty.api.biome.generation.GeneratorStage;
|
import biomesoplenty.api.biome.generation.GeneratorStage;
|
||||||
import biomesoplenty.api.biome.generation.IGenerator;
|
import biomesoplenty.api.biome.generation.IGenerator;
|
||||||
import biomesoplenty.common.util.config.ConfigHelper;
|
import biomesoplenty.common.util.config.ConfigHelper;
|
||||||
|
import biomesoplenty.common.util.config.ConfigHelper.WrappedJsonObject;
|
||||||
|
|
||||||
public class BOPBiome extends BiomeGenBase implements IExtendedBiome
|
public class BOPBiome extends BiomeGenBase implements IExtendedBiome
|
||||||
{
|
{
|
||||||
|
@ -37,8 +38,11 @@ public class BOPBiome extends BiomeGenBase implements IExtendedBiome
|
||||||
|
|
||||||
public void configure(ConfigHelper conf)
|
public void configure(ConfigHelper conf)
|
||||||
{
|
{
|
||||||
|
|
||||||
|
// Allow name to be overridden
|
||||||
this.biomeName = conf.getString("biomeName",this.biomeName);
|
this.biomeName = conf.getString("biomeName",this.biomeName);
|
||||||
|
|
||||||
|
// Allow basic properties to be overridden
|
||||||
this.topBlock = conf.getBlockState("topBlock", this.topBlock);
|
this.topBlock = conf.getBlockState("topBlock", this.topBlock);
|
||||||
this.fillerBlock = conf.getBlockState("fillerBlock", this.fillerBlock);
|
this.fillerBlock = conf.getBlockState("fillerBlock", this.fillerBlock);
|
||||||
this.minHeight = conf.getFloat("rootHeight", this.minHeight);
|
this.minHeight = conf.getFloat("rootHeight", this.minHeight);
|
||||||
|
@ -46,6 +50,26 @@ public class BOPBiome extends BiomeGenBase implements IExtendedBiome
|
||||||
this.temperature = conf.getFloat("temperature", this.temperature);
|
this.temperature = conf.getFloat("temperature", this.temperature);
|
||||||
this.rainfall = conf.getFloat("rainfall", this.rainfall);
|
this.rainfall = conf.getFloat("rainfall", this.rainfall);
|
||||||
this.waterColorMultiplier = conf.getInt("waterColorMultiplier", this.waterColorMultiplier);
|
this.waterColorMultiplier = conf.getInt("waterColorMultiplier", this.waterColorMultiplier);
|
||||||
|
|
||||||
|
// Allow weights to be overridden
|
||||||
|
WrappedJsonObject confWeights = conf.getObject("weights");
|
||||||
|
if (confWeights != null)
|
||||||
|
{
|
||||||
|
for (BiomeType type : BiomeType.values())
|
||||||
|
{
|
||||||
|
Integer weight = confWeights.getInt(type.name().toLowerCase(), null);
|
||||||
|
if (weight == null) {continue;}
|
||||||
|
if (weight.intValue() == 0)
|
||||||
|
{
|
||||||
|
this.weightMap.remove(type);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
this.weightMap.put(type, weight);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -95,7 +95,10 @@ public class ModBiomes
|
||||||
BOPCommand.biomeCount++;
|
BOPCommand.biomeCount++;
|
||||||
biome.biomeID = id;
|
biome.biomeID = id;
|
||||||
biome.setBiomeName(name);
|
biome.setBiomeName(name);
|
||||||
biome.configure(conf);
|
// If there was a valid config file, then use it to configure the biome
|
||||||
|
if (!conf.isNull()) {biome.configure(conf);}
|
||||||
|
// log any warnings from parsing the config file
|
||||||
|
for (String msg : conf.messages) {BiomesOPlenty.logger.warn(idName+" config "+msg);}
|
||||||
|
|
||||||
BiomeGenBase.getBiomeGenArray()[id] = biome;
|
BiomeGenBase.getBiomeGenArray()[id] = biome;
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue