Biome config

This commit is contained in:
paulevsGitch 2020-12-12 12:15:33 +03:00
parent 639462d25b
commit 95ff7ad429
2 changed files with 19 additions and 14 deletions

View file

@ -110,6 +110,7 @@ public class EndBiomes {
hasCaves = JsonFactory.getBoolean(element.getAsJsonObject(), "hasCaves", true); hasCaves = JsonFactory.getBoolean(element.getAsJsonObject(), "hasCaves", true);
} }
EndBiome endBiome = new EndBiome(id, biome, fog, chance, hasCaves); EndBiome endBiome = new EndBiome(id, biome, fog, chance, hasCaves);
if (Configs.BIOME_CONFIG.getBoolean(endBiome, "enabled", true)) {
if (isVoid) { if (isVoid) {
VOID_BIOMES.addBiomeMutable(endBiome); VOID_BIOMES.addBiomeMutable(endBiome);
} }
@ -119,7 +120,9 @@ public class EndBiomes {
ID_MAP.put(id, endBiome); ID_MAP.put(id, endBiome);
} }
} }
}
}); });
Configs.BIOME_CONFIG.saveChanges();
LAND_BIOMES.rebuild(); LAND_BIOMES.rebuild();
VOID_BIOMES.rebuild(); VOID_BIOMES.rebuild();
@ -268,7 +271,6 @@ public class EndBiomes {
private static void registerBiomeDirect(EndBiome biome) { private static void registerBiomeDirect(EndBiome biome) {
fillSet(); fillSet();
int possibleID = incID++; int possibleID = incID++;
Configs.BIOME_CONFIG.getBoolean(biome, "enabled", true);
if (occupiedIDs.contains(possibleID)) { if (occupiedIDs.contains(possibleID)) {
String message = "ID for biome " + biome.getID() + " is already occupied, changing biome ID from " + possibleID + " to "; String message = "ID for biome " + biome.getID() + " is already occupied, changing biome ID from " + possibleID + " to ";
while (occupiedIDs.contains(possibleID)) { while (occupiedIDs.contains(possibleID)) {
@ -276,8 +278,10 @@ public class EndBiomes {
} }
BetterEnd.LOGGER.info(message + possibleID); BetterEnd.LOGGER.info(message + possibleID);
} }
if (Configs.BIOME_CONFIG.getBoolean(biome, "enabled", true)) {
Registry.register(BuiltinRegistries.BIOME, possibleID, biome.getID().toString(), biome.getBiome()); Registry.register(BuiltinRegistries.BIOME, possibleID, biome.getID().toString(), biome.getBiome());
} }
}
public static EndBiome getFromBiome(Biome biome) { public static EndBiome getFromBiome(Biome biome) {
return ID_MAP.getOrDefault(biomeRegistry.getId(biome), END); return ID_MAP.getOrDefault(biomeRegistry.getId(biome), END);

View file

@ -11,6 +11,7 @@ import com.google.gson.JsonObject;
import net.minecraft.structure.Structure; import net.minecraft.structure.Structure;
import net.minecraft.util.Identifier; import net.minecraft.util.Identifier;
import net.minecraft.world.biome.Biome; import net.minecraft.world.biome.Biome;
import ru.betterend.config.Configs;
import ru.betterend.util.JsonFactory; import ru.betterend.util.JsonFactory;
import ru.betterend.util.StructureHelper; import ru.betterend.util.StructureHelper;
import ru.betterend.world.features.EndFeature; import ru.betterend.world.features.EndFeature;
@ -39,18 +40,18 @@ public class EndBiome {
public EndBiome(BiomeDefinition definition) { public EndBiome(BiomeDefinition definition) {
biome = definition.build(); biome = definition.build();
mcID = definition.getID(); mcID = definition.getID();
fogDensity = definition.getFodDensity(); fogDensity = Configs.BIOME_CONFIG.getFloat(this, "fogDensity", definition.getFodDensity());
genChanceUnmutable = definition.getGenChance(); genChanceUnmutable = Configs.BIOME_CONFIG.getFloat(this, "generationChance", definition.getGenChance());
hasCaves = definition.hasCaves(); hasCaves = Configs.BIOME_CONFIG.getBoolean(this, "hasCaves", definition.hasCaves());
readStructureList(); readStructureList();
} }
public EndBiome(Identifier id, Biome biome, float fogDensity, float genChance, boolean hasCaves) { public EndBiome(Identifier id, Biome biome, float fogDensity, float genChance, boolean hasCaves) {
this.biome = biome; this.biome = biome;
this.mcID = id; this.mcID = id;
this.fogDensity = fogDensity; this.fogDensity = Configs.BIOME_CONFIG.getFloat(this, "fogDensity", fogDensity);
this.genChanceUnmutable = genChance; this.genChanceUnmutable = Configs.BIOME_CONFIG.getFloat(this, "generationChance", genChance);
this.hasCaves = hasCaves; this.hasCaves = Configs.BIOME_CONFIG.getBoolean(this, "hasCaves", hasCaves);
readStructureList(); readStructureList();
} }