Merge remote-tracking branch 'upstream/BOP-1.8.9-3.0.x' into BOP-1.8.9-3.0.x
|
@ -35,9 +35,7 @@ public class BOPBiomes
|
|||
public static Optional<BiomeGenBase> eucalyptus_forest = Optional.absent();
|
||||
public static Optional<BiomeGenBase> fen = Optional.absent();
|
||||
public static Optional<BiomeGenBase> flower_field = Optional.absent();
|
||||
public static Optional<BiomeGenBase> frost_forest = Optional.absent();
|
||||
public static Optional<BiomeGenBase> frozen_desert = Optional.absent();
|
||||
public static Optional<BiomeGenBase> fungi_forest = Optional.absent();
|
||||
public static Optional<BiomeGenBase> garden = Optional.absent();
|
||||
public static Optional<BiomeGenBase> grassland = Optional.absent();
|
||||
public static Optional<BiomeGenBase> grove = Optional.absent();
|
||||
|
@ -67,6 +65,7 @@ public class BOPBiomes
|
|||
public static Optional<BiomeGenBase> shield = Optional.absent();
|
||||
public static Optional<BiomeGenBase> shrubland = Optional.absent();
|
||||
public static Optional<BiomeGenBase> snowy_coniferous_forest = Optional.absent();
|
||||
public static Optional<BiomeGenBase> snowy_forest = Optional.absent();
|
||||
public static Optional<BiomeGenBase> steppe = Optional.absent();
|
||||
public static Optional<BiomeGenBase> temperate_rainforest = Optional.absent();
|
||||
public static Optional<BiomeGenBase> tropical_rainforest = Optional.absent();
|
||||
|
@ -79,6 +78,7 @@ public class BOPBiomes
|
|||
// edge-biomes, sub-biomes and mutated-biomes
|
||||
public static Optional<BiomeGenBase> mountain_foothills = Optional.absent();
|
||||
public static Optional<BiomeGenBase> canyon_ravine = Optional.absent();
|
||||
public static Optional<BiomeGenBase> glacier = Optional.absent();
|
||||
public static Optional<BiomeGenBase> oasis = Optional.absent();
|
||||
public static Optional<BiomeGenBase> coral_reef = Optional.absent();
|
||||
public static Optional<BiomeGenBase> kelp_forest = Optional.absent();
|
||||
|
@ -90,16 +90,30 @@ public class BOPBiomes
|
|||
public static IExtendedBiome end_extension;
|
||||
public static IExtendedBiome plains_extension;
|
||||
public static IExtendedBiome forest_extension;
|
||||
public static IExtendedBiome forest_hills_extension;
|
||||
public static IExtendedBiome jungle_extension;
|
||||
public static IExtendedBiome jungle_hills_extension;
|
||||
public static IExtendedBiome desert_extension;
|
||||
public static IExtendedBiome desert_hills_extension;
|
||||
public static IExtendedBiome taiga_extension;
|
||||
public static IExtendedBiome taiga_hills_extension;
|
||||
public static IExtendedBiome mesa_extension;
|
||||
public static IExtendedBiome mesa_plateau_extension;
|
||||
public static IExtendedBiome ice_plains_extension;
|
||||
public static IExtendedBiome ice_mountains_extension;
|
||||
public static IExtendedBiome extreme_hills_extension;
|
||||
public static IExtendedBiome extreme_hills_plus_extension;
|
||||
public static IExtendedBiome swampland_extension;
|
||||
public static IExtendedBiome birch_forest_extension;
|
||||
public static IExtendedBiome birch_forest_hills_extension;
|
||||
public static IExtendedBiome roofed_forest_extension;
|
||||
public static IExtendedBiome savanna_extension;
|
||||
public static IExtendedBiome savanna_plateau_extension;
|
||||
public static IExtendedBiome ocean_extension;
|
||||
public static IExtendedBiome cold_taiga_extension;
|
||||
public static IExtendedBiome cold_taiga_hills_extension;
|
||||
public static IExtendedBiome mega_taiga_extension;
|
||||
public static IExtendedBiome mega_taiga_hills_extension;
|
||||
|
||||
private static IBiomeRegistry createRegistry()
|
||||
{
|
||||
|
|
|
@ -130,10 +130,12 @@ public class GeneratorWeighted extends BOPGeneratorBase
|
|||
{
|
||||
for (String name : confGenerators.getKeys())
|
||||
{
|
||||
IConfigObj confCurrentGen = confGenerators.getObject(name);
|
||||
|
||||
if (this.generators.containsKey(name))
|
||||
{
|
||||
IGenerator generator = this.getGenerator(name);
|
||||
Integer weight = conf.getInt("weight", this.weights.get(generator));
|
||||
Integer weight = confCurrentGen.getInt("weight", this.weights.get(generator));
|
||||
if (weight.intValue() < 1)
|
||||
{
|
||||
// remove this generator if the weight is zero (or negative)
|
||||
|
@ -144,14 +146,14 @@ public class GeneratorWeighted extends BOPGeneratorBase
|
|||
// adjust weight
|
||||
this.weights.put(generator, weight);
|
||||
// configure the existing generator
|
||||
generator.configure(conf);
|
||||
generator.configure(confCurrentGen);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// there was previously no generator of this name - attempt to add it
|
||||
Integer weight = conf.getInt("weight", null);
|
||||
IGenerator generator = GeneratorRegistry.createGenerator(conf);
|
||||
Integer weight = confCurrentGen.getInt("weight", null);
|
||||
IGenerator generator = GeneratorRegistry.createGenerator(confCurrentGen);
|
||||
if (weight != null && generator != null)
|
||||
{
|
||||
this.add(name, weight, generator);
|
||||
|
|
|
@ -92,8 +92,8 @@ public class BiomeGenBayou extends BOPBiome
|
|||
|
||||
// other plants
|
||||
this.addGenerator("koru", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.3F).with(BOPPlants.KORU).create());
|
||||
this.addGenerator("cattail", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(3.0F).with(BOPPlants.CATTAIL).create());
|
||||
this.addGenerator("double_cattail", GeneratorStage.FLOWERS, (new GeneratorDoubleFlora.Builder()).amountPerChunk(3.0F).with(BlockBOPDoublePlant.DoublePlantType.TALL_CATTAIL).create());
|
||||
this.addGenerator("cattail", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(6.0F).with(BOPPlants.CATTAIL).create());
|
||||
this.addGenerator("double_cattail", GeneratorStage.FLOWERS, (new GeneratorDoubleFlora.Builder()).amountPerChunk(8.0F).with(BlockBOPDoublePlant.DoublePlantType.TALL_CATTAIL).create());
|
||||
this.addGenerator("leaf_piles", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(3.0F).with(BOPPlants.LEAFPILE).create());
|
||||
this.addGenerator("sugar_cane", GeneratorStage.FLOWERS,(new GeneratorColumns.Builder()).amountPerChunk(3.0F).generationAttempts(24).placeOn(BlockQueries.litFertileWaterside).with(Blocks.reeds.getDefaultState()).minHeight(1).maxHeight(3).create());
|
||||
|
||||
|
@ -101,6 +101,7 @@ public class BiomeGenBayou extends BOPBiome
|
|||
this.addGenerator("duckweed", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(1.5F).with(BlockBOPLilypad.LilypadType.DUCKWEED).create());
|
||||
this.addGenerator("lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(2.5F).with(Blocks.waterlily.getDefaultState()).create());
|
||||
this.addGenerator("medium_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(2.0F).with(BlockBOPLilypad.LilypadType.MEDIUM).create());
|
||||
this.addGenerator("flower_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.25F).with(BlockBOPLilypad.LilypadType.FLOWER).create());
|
||||
this.addGenerator("small_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(1.5F).with(BlockBOPLilypad.LilypadType.SMALL).create());
|
||||
this.addGenerator("tiny_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(1.5F).with(BlockBOPLilypad.LilypadType.TINY).create());
|
||||
this.addGenerator("algae", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(4.0F).replace(Blocks.water).with(BOPBlocks.coral.getDefaultState().withProperty(BlockBOPCoral.VARIANT, BlockBOPCoral.CoralType.ALGAE)).scatterYMethod(ScatterYMethod.AT_GROUND).create());
|
||||
|
@ -127,7 +128,7 @@ public class BiomeGenBayou extends BOPBiome
|
|||
|
||||
if (!settings.generateBopPlants) {this.removeGenerator("cattail"); this.removeGenerator("double_cattail"); this.removeGenerator("river_cane"); this.removeGenerator("tiny_cacti"); this.removeGenerator("roots"); this.removeGenerator("rafflesia"); this.removeGenerator("desert_sprouts");}
|
||||
|
||||
if (!settings.generateBopWaterPlants) {this.removeGenerator("algae"); this.removeGenerator("water_reeds"); this.removeGenerator("algae"); this.removeGenerator("duckweed"); this.removeGenerator("medium_lily"); this.removeGenerator("small_lily"); this.removeGenerator("tiny_lily");}
|
||||
if (!settings.generateBopWaterPlants) {this.removeGenerator("algae"); this.removeGenerator("water_reeds"); this.removeGenerator("algae"); this.removeGenerator("duckweed"); this.removeGenerator("medium_lily"); this.removeGenerator("small_lily"); this.removeGenerator("tiny_lily"); this.removeGenerator("flower_lily");}
|
||||
|
||||
GeneratorWeighted grassGen = (GeneratorWeighted)this.getGenerator("grass");
|
||||
if (!settings.generateBopGrasses) {grassGen.removeGenerator("shortgrass"); grassGen.removeGenerator("mediumgrass"); grassGen.removeGenerator("wheatgrass"); grassGen.removeGenerator("dampgrass");}
|
||||
|
|
|
@ -25,6 +25,7 @@ import biomesoplenty.api.block.BOPBlocks;
|
|||
import biomesoplenty.api.block.BlockQueries;
|
||||
import biomesoplenty.common.block.BlockBOPCoral;
|
||||
import biomesoplenty.common.block.BlockBOPDirt;
|
||||
import biomesoplenty.common.block.BlockBOPDoublePlant;
|
||||
import biomesoplenty.common.block.BlockBOPGrass;
|
||||
import biomesoplenty.common.block.BlockBOPLilypad;
|
||||
import biomesoplenty.common.block.BlockBOPMushroom;
|
||||
|
@ -36,6 +37,7 @@ import biomesoplenty.common.enums.BOPPlants;
|
|||
import biomesoplenty.common.util.biome.GeneratorUtils.ScatterYMethod;
|
||||
import biomesoplenty.common.world.BOPWorldSettings;
|
||||
import biomesoplenty.common.world.feature.GeneratorColumns;
|
||||
import biomesoplenty.common.world.feature.GeneratorDoubleFlora;
|
||||
import biomesoplenty.common.world.feature.GeneratorFlora;
|
||||
import biomesoplenty.common.world.feature.GeneratorGrass;
|
||||
import biomesoplenty.common.world.feature.GeneratorLakes;
|
||||
|
@ -110,6 +112,8 @@ public class BiomeGenBog extends BOPBiome
|
|||
this.addGenerator("leaf_piles", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(1.5F).with(BOPPlants.LEAFPILE).create());
|
||||
this.addGenerator("dead_leaf_piles", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.8F).with(BOPPlants.DEADLEAFPILE).create());
|
||||
this.addGenerator("poison_ivy", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.5F).with(BOPPlants.POISONIVY).create());
|
||||
this.addGenerator("cattail", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(2.0F).with(BOPPlants.CATTAIL).create());
|
||||
this.addGenerator("double_cattail", GeneratorStage.FLOWERS, (new GeneratorDoubleFlora.Builder()).amountPerChunk(1.0F).with(BlockBOPDoublePlant.DoublePlantType.TALL_CATTAIL).create());
|
||||
|
||||
// water plants
|
||||
this.addGenerator("duckweed", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(1.5F).with(BlockBOPLilypad.LilypadType.DUCKWEED).generationAttempts(32).create());
|
||||
|
|
|
@ -81,6 +81,11 @@ public class BiomeGenCherryBlossomGrove extends BOPBiome
|
|||
|
||||
// water plants
|
||||
this.addGenerator("duckweed", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(1.5F).with(BlockBOPLilypad.LilypadType.DUCKWEED).generationAttempts(32).create());
|
||||
this.addGenerator("lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.1F).with(Blocks.waterlily.getDefaultState()).create());
|
||||
this.addGenerator("medium_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.1F).with(BlockBOPLilypad.LilypadType.MEDIUM).create());
|
||||
this.addGenerator("small_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.1F).with(BlockBOPLilypad.LilypadType.SMALL).create());
|
||||
this.addGenerator("tiny_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.2F).with(BlockBOPLilypad.LilypadType.TINY).create());
|
||||
this.addGenerator("flower_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.3F).with(BlockBOPLilypad.LilypadType.FLOWER).create());
|
||||
|
||||
// grasses
|
||||
GeneratorWeighted grassGenerator = new GeneratorWeighted(2.0F);
|
||||
|
@ -105,7 +110,7 @@ public class BiomeGenCherryBlossomGrove extends BOPBiome
|
|||
|
||||
if (!settings.generateBopPlants) {this.removeGenerator("cattail"); this.removeGenerator("double_cattail"); this.removeGenerator("river_cane"); this.removeGenerator("tiny_cacti"); this.removeGenerator("roots"); this.removeGenerator("rafflesia"); this.removeGenerator("desert_sprouts");}
|
||||
|
||||
if (!settings.generateBopWaterPlants) {this.removeGenerator("algae"); this.removeGenerator("water_reeds"); this.removeGenerator("algae"); this.removeGenerator("duckweed"); this.removeGenerator("medium_lily"); this.removeGenerator("small_lily"); this.removeGenerator("tiny_lily");}
|
||||
if (!settings.generateBopWaterPlants) {this.removeGenerator("algae"); this.removeGenerator("water_reeds"); this.removeGenerator("algae"); this.removeGenerator("duckweed"); this.removeGenerator("medium_lily"); this.removeGenerator("small_lily"); this.removeGenerator("tiny_lily"); this.removeGenerator("flower_lily");}
|
||||
|
||||
GeneratorWeighted flowerGen = (GeneratorWeighted)this.getGenerator("flowers");
|
||||
if (!settings.generateBopFlowers) {flowerGen.removeGenerator("bluebells"); flowerGen.removeGenerator("clover"); flowerGen.removeGenerator("swampflower"); flowerGen.removeGenerator("deathbloom"); flowerGen.removeGenerator("glowflower"); flowerGen.removeGenerator("blue_hydrangeas"); flowerGen.removeGenerator("pink_daffodil"); flowerGen.removeGenerator("white_anemones"); flowerGen.removeGenerator("orange_cosmos"); flowerGen.removeGenerator("wildflowers"); flowerGen.removeGenerator("violet"); flowerGen.removeGenerator("hibiscus"); flowerGen.removeGenerator("goldenrods"); flowerGen.removeGenerator("icy_irises"); flowerGen.removeGenerator("wilted_lily"); flowerGen.removeGenerator("lily_of_the_valley"); flowerGen.removeGenerator("bromeliad"); this.removeGenerator("bromeliad");}
|
||||
|
|
|
@ -56,7 +56,6 @@ public class BiomeGenConiferousForest extends BOPBiome
|
|||
this.fillerBlock = BOPBlocks.dirt.getDefaultState().withProperty(BlockBOPDirt.VARIANT, BlockBOPDirt.BOPDirtType.LOAMY);
|
||||
|
||||
this.spawnableCreatureList.add(new SpawnListEntry(EntityWolf.class, 8, 4, 4));
|
||||
this.spawnableCreatureList.add(new SpawnListEntry(EntitySnail.class, 6, 1, 2));
|
||||
|
||||
// gravel
|
||||
this.addGenerator("gravel", GeneratorStage.SAND_PASS2, (new GeneratorWaterside.Builder()).amountPerChunk(4).maxRadius(7).with(Blocks.gravel.getDefaultState()).create());
|
||||
|
@ -75,6 +74,8 @@ public class BiomeGenConiferousForest extends BOPBiome
|
|||
this.addGenerator("berry_bushes", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.1F).with(BOPPlants.BERRYBUSH).create());
|
||||
this.addGenerator("poison_ivy", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.5F).with(BOPPlants.POISONIVY).create());
|
||||
this.addGenerator("bushes", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.2F).with(BOPPlants.BUSH).create());
|
||||
this.addGenerator("cattail", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(2.0F).with(BOPPlants.CATTAIL).create());
|
||||
this.addGenerator("double_cattail", GeneratorStage.FLOWERS, (new GeneratorDoubleFlora.Builder()).amountPerChunk(1.0F).with(BlockBOPDoublePlant.DoublePlantType.TALL_CATTAIL).create());
|
||||
|
||||
// shrooms
|
||||
this.addGenerator("flat_mushroom", GeneratorStage.SHROOM,(new GeneratorFlora.Builder()).amountPerChunk(0.1F).with(BlockBOPMushroom.MushroomType.FLAT_MUSHROOM).create());
|
||||
|
|
|
@ -104,8 +104,8 @@ public class BiomeGenFen extends BOPBiome
|
|||
flowerGenerator.add("poppy", 1, (new GeneratorFlora.Builder()).with(BlockFlower.EnumFlowerType.POPPY).create());
|
||||
|
||||
// other plants
|
||||
this.addGenerator("cattails", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.1F).with(BOPPlants.CATTAIL).create());
|
||||
this.addGenerator("double_cattails", GeneratorStage.FLOWERS,(new GeneratorDoubleFlora.Builder()).amountPerChunk(0.1F).with(BlockBOPDoublePlant.DoublePlantType.TALL_CATTAIL).create());
|
||||
this.addGenerator("cattails", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(3.0F).with(BOPPlants.CATTAIL).create());
|
||||
this.addGenerator("double_cattails", GeneratorStage.FLOWERS,(new GeneratorDoubleFlora.Builder()).amountPerChunk(4.0F).with(BlockBOPDoublePlant.DoublePlantType.TALL_CATTAIL).create());
|
||||
this.addGenerator("river_cane", GeneratorStage.FLOWERS,(new GeneratorColumns.Builder()).amountPerChunk(1.0F).generationAttempts(24).placeOn(BlockQueries.litFertileWaterside).with(BlockBOPPlant.paging.getVariantState(BOPPlants.RIVERCANE)).minHeight(1).maxHeight(3).create());
|
||||
this.addGenerator("koru", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.1F).with(BOPPlants.KORU).create());
|
||||
this.addGenerator("shrubs", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.3F).with(BOPPlants.SHRUB).create());
|
||||
|
@ -118,6 +118,7 @@ public class BiomeGenFen extends BOPBiome
|
|||
this.addGenerator("small_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.5F).with(BlockBOPLilypad.LilypadType.SMALL).create());
|
||||
this.addGenerator("tiny_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.5F).with(BlockBOPLilypad.LilypadType.TINY).create());
|
||||
this.addGenerator("algae", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(3.0F).replace(Blocks.water).with(BOPBlocks.coral.getDefaultState().withProperty(BlockBOPCoral.VARIANT, BlockBOPCoral.CoralType.ALGAE)).generationAttempts(32).scatterYMethod(ScatterYMethod.AT_GROUND).create());
|
||||
this.addGenerator("flower_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.1F).with(BlockBOPLilypad.LilypadType.FLOWER).create());
|
||||
|
||||
// shrooms
|
||||
this.addGenerator("flat_mushroom", GeneratorStage.SHROOM,(new GeneratorFlora.Builder()).amountPerChunk(0.1F).with(BlockBOPMushroom.MushroomType.FLAT_MUSHROOM).create());
|
||||
|
@ -144,7 +145,7 @@ public class BiomeGenFen extends BOPBiome
|
|||
|
||||
if (!settings.generateBopPlants) {this.removeGenerator("cattail"); this.removeGenerator("double_cattail"); this.removeGenerator("river_cane"); this.removeGenerator("tiny_cacti"); this.removeGenerator("roots"); this.removeGenerator("rafflesia"); this.removeGenerator("desert_sprouts");}
|
||||
|
||||
if (!settings.generateBopWaterPlants) {this.removeGenerator("algae"); this.removeGenerator("water_reeds"); this.removeGenerator("algae"); this.removeGenerator("duckweed"); this.removeGenerator("medium_lily"); this.removeGenerator("small_lily"); this.removeGenerator("tiny_lily");}
|
||||
if (!settings.generateBopWaterPlants) {this.removeGenerator("algae"); this.removeGenerator("water_reeds"); this.removeGenerator("algae"); this.removeGenerator("duckweed"); this.removeGenerator("medium_lily"); this.removeGenerator("small_lily"); this.removeGenerator("tiny_lily"); this.removeGenerator("flower_lily");}
|
||||
|
||||
GeneratorWeighted grassGen = (GeneratorWeighted)this.getGenerator("grass");
|
||||
if (!settings.generateBopGrasses) {grassGen.removeGenerator("shortgrass"); grassGen.removeGenerator("mediumgrass"); grassGen.removeGenerator("wheatgrass"); grassGen.removeGenerator("dampgrass");}
|
||||
|
|
|
@ -1,174 +0,0 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2015-2016, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import net.minecraft.block.BlockFlower;
|
||||
import net.minecraft.block.BlockPlanks;
|
||||
import net.minecraft.block.BlockTallGrass;
|
||||
import net.minecraft.entity.passive.EntityMooshroom;
|
||||
import net.minecraft.init.Blocks;
|
||||
import net.minecraft.util.BlockPos;
|
||||
import net.minecraft.world.biome.BiomeGenBase.SpawnListEntry;
|
||||
import biomesoplenty.api.biome.BOPBiome;
|
||||
import biomesoplenty.api.biome.generation.GeneratorStage;
|
||||
import biomesoplenty.api.biome.generation.GeneratorWeighted;
|
||||
import biomesoplenty.api.block.BOPBlocks;
|
||||
import biomesoplenty.api.block.BlockQueries;
|
||||
import biomesoplenty.common.block.BlockBOPLilypad;
|
||||
import biomesoplenty.common.block.BlockBOPMushroom;
|
||||
import biomesoplenty.common.block.BlockBOPPlant;
|
||||
import biomesoplenty.common.entities.EntitySnail;
|
||||
import biomesoplenty.common.enums.BOPClimates;
|
||||
import biomesoplenty.common.enums.BOPFlowers;
|
||||
import biomesoplenty.common.enums.BOPGems;
|
||||
import biomesoplenty.common.enums.BOPPlants;
|
||||
import biomesoplenty.common.util.biome.GeneratorUtils.ScatterYMethod;
|
||||
import biomesoplenty.common.world.BOPWorldSettings;
|
||||
import biomesoplenty.common.world.feature.GeneratorBigMushroom;
|
||||
import biomesoplenty.common.world.feature.GeneratorColumns;
|
||||
import biomesoplenty.common.world.feature.GeneratorFlora;
|
||||
import biomesoplenty.common.world.feature.GeneratorGrass;
|
||||
import biomesoplenty.common.world.feature.GeneratorMixedLily;
|
||||
import biomesoplenty.common.world.feature.GeneratorOreSingle;
|
||||
import biomesoplenty.common.world.feature.GeneratorSplotches;
|
||||
import biomesoplenty.common.world.feature.tree.GeneratorBush;
|
||||
import biomesoplenty.common.world.feature.tree.GeneratorMegaJungleTree;
|
||||
|
||||
|
||||
public class BiomeGenFungiForest extends BOPBiome
|
||||
{
|
||||
|
||||
public BiomeGenFungiForest()
|
||||
{
|
||||
// terrain
|
||||
this.terrainSettings.avgHeight(66).heightVariation(10, 28);
|
||||
|
||||
this.setColor(0xF0F970);
|
||||
this.skyColor = 0x73C69E;
|
||||
this.waterColorMultiplier = 0x00FF2E;
|
||||
this.setTemperatureRainfall(0.8F, 0.9F);
|
||||
|
||||
this.canSpawnInBiome = false;
|
||||
this.canGenerateVillages = false;
|
||||
|
||||
this.beachBiomeId = -1;
|
||||
|
||||
this.addWeight(BOPClimates.TROPICAL, 1);
|
||||
|
||||
this.spawnableCreatureList.clear();
|
||||
this.spawnableWaterCreatureList.clear();
|
||||
this.spawnableCreatureList.add(new SpawnListEntry(EntityMooshroom.class, 3, 4, 8));
|
||||
this.spawnableCreatureList.add(new SpawnListEntry(EntitySnail.class, 6, 1, 2));
|
||||
|
||||
// mycelium
|
||||
this.addGenerator("mycelium", GeneratorStage.SAND, (new GeneratorSplotches.Builder()).replace(Blocks.grass).with(Blocks.mycelium.getDefaultState()).scatterYMethod(ScatterYMethod.AT_GROUND).splotchSize(32).create());
|
||||
|
||||
// trees
|
||||
GeneratorWeighted treeGenerator = new GeneratorWeighted(12);
|
||||
this.addGenerator("trees", GeneratorStage.TREE, treeGenerator);
|
||||
treeGenerator.add("mega_oak", 1, (new GeneratorMegaJungleTree.Builder()).log(BlockPlanks.EnumType.OAK).leaves(BlockPlanks.EnumType.OAK).vine(BOPBlocks.ivy.getDefaultState()).create());
|
||||
treeGenerator.add("oak_bush", 1, (new GeneratorBush.Builder()).maxHeight(2).create());
|
||||
|
||||
// grasses
|
||||
GeneratorWeighted grassGenerator = new GeneratorWeighted(5.0F);
|
||||
this.addGenerator("grass", GeneratorStage.GRASS, grassGenerator);
|
||||
grassGenerator.add("tallgrass", 2, (new GeneratorGrass.Builder()).with(BlockTallGrass.EnumType.GRASS).create());
|
||||
grassGenerator.add("ferns", 4, (new GeneratorGrass.Builder()).with(BlockTallGrass.EnumType.FERN).create());
|
||||
grassGenerator.add("shortgrass", 1, (new GeneratorGrass.Builder()).with(BOPPlants.SHORTGRASS).create());
|
||||
grassGenerator.add("mediumgrass", 1, (new GeneratorGrass.Builder()).with(BOPPlants.MEDIUMGRASS).create());
|
||||
grassGenerator.add("wheatgrass", 1, (new GeneratorGrass.Builder()).with(BOPPlants.WHEATGRASS).create());
|
||||
|
||||
// other plants
|
||||
this.addGenerator("sprouts", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.4F).with(BOPPlants.SPROUT).create());
|
||||
this.addGenerator("bushes", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.7F).with(BOPPlants.BUSH).create());
|
||||
this.addGenerator("river_cane", GeneratorStage.FLOWERS,(new GeneratorColumns.Builder()).amountPerChunk(0.4F).placeOn(BlockQueries.litFertileWaterside).with(BlockBOPPlant.paging.getVariantState(BOPPlants.RIVERCANE)).minHeight(1).maxHeight(3).create());
|
||||
this.addGenerator("shrubs", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.1F).with(BOPPlants.SHRUB).create());
|
||||
this.addGenerator("clover_patches", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(2.0F).with(BOPPlants.CLOVERPATCH).create());
|
||||
this.addGenerator("melons", GeneratorStage.FLOWERS, (new GeneratorFlora.Builder()).amountPerChunk(0.015625F).placeOn(this.topBlock).with(Blocks.melon_block.getDefaultState()).create());
|
||||
|
||||
// water plants
|
||||
this.addGenerator("lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.5F).with(Blocks.waterlily.getDefaultState()).create());
|
||||
this.addGenerator("medium_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.3F).with(BlockBOPLilypad.LilypadType.MEDIUM).create());
|
||||
this.addGenerator("small_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.5F).with(BlockBOPLilypad.LilypadType.SMALL).create());
|
||||
this.addGenerator("tiny_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.5F).with(BlockBOPLilypad.LilypadType.TINY).create());
|
||||
|
||||
// flowers
|
||||
GeneratorWeighted flowerGenerator = new GeneratorWeighted(1.0F);
|
||||
this.addGenerator("flowers", GeneratorStage.GRASS, flowerGenerator);
|
||||
flowerGenerator.add("swampflower", 1, (new GeneratorFlora.Builder().with(BOPFlowers.SWAMPFLOWER).create()));
|
||||
flowerGenerator.add("oxeye_daisy", 1, (new GeneratorFlora.Builder().with(BlockFlower.EnumFlowerType.OXEYE_DAISY).create()));
|
||||
flowerGenerator.add("dandelion", 1, (new GeneratorFlora.Builder().with(BlockFlower.EnumFlowerType.DANDELION).create()));
|
||||
flowerGenerator.add("poppy", 1, (new GeneratorFlora.Builder().with(BlockFlower.EnumFlowerType.POPPY).create()));
|
||||
|
||||
// shrooms
|
||||
GeneratorWeighted mushroomGenerator = new GeneratorWeighted(4.0F);
|
||||
this.addGenerator("mushrooms", GeneratorStage.SHROOM, mushroomGenerator);
|
||||
mushroomGenerator.add("brown_mushrooms", 4, (new GeneratorFlora.Builder()).with(Blocks.brown_mushroom.getDefaultState()).create());
|
||||
mushroomGenerator.add("red_mushrooms", 4, (new GeneratorFlora.Builder()).with(Blocks.red_mushroom.getDefaultState()).create());
|
||||
mushroomGenerator.add("blue_milk_caps", 2, (new GeneratorFlora.Builder()).with(BlockBOPMushroom.MushroomType.BLUE_MILK_CAP).create());
|
||||
mushroomGenerator.add("flat_mushrooms", 2, (new GeneratorFlora.Builder()).with(BlockBOPMushroom.MushroomType.FLAT_MUSHROOM).create());
|
||||
mushroomGenerator.add("glowshrooms", 1, (new GeneratorFlora.Builder()).with(BlockBOPMushroom.MushroomType.GLOWSHROOM).create());
|
||||
mushroomGenerator.add("portobellos", 6, (new GeneratorFlora.Builder()).with(BlockBOPMushroom.MushroomType.PORTOBELLO).create());
|
||||
mushroomGenerator.add("toadstools", 4, (new GeneratorFlora.Builder()).with(BlockBOPMushroom.MushroomType.TOADSTOOL).create());
|
||||
|
||||
// big mushrooms
|
||||
GeneratorWeighted bigMushroomGenerator = new GeneratorWeighted(6);
|
||||
this.addGenerator("big_mushrooms", GeneratorStage.BIG_SHROOM, bigMushroomGenerator);
|
||||
bigMushroomGenerator.add("brown_mushroom", 1, (new GeneratorBigMushroom.Builder()).mushroomType(GeneratorBigMushroom.BigMushroomType.BROWN).create());
|
||||
bigMushroomGenerator.add("red_mushroom", 1, (new GeneratorBigMushroom.Builder()).mushroomType(GeneratorBigMushroom.BigMushroomType.RED).create());
|
||||
|
||||
// gem
|
||||
this.addGenerator("amber", GeneratorStage.SAND, (new GeneratorOreSingle.Builder()).amountPerChunk(12).with(BOPGems.AMBER).create());
|
||||
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void applySettings(BOPWorldSettings settings)
|
||||
{
|
||||
if (!settings.generateBopGems) {this.removeGenerator("amber");}
|
||||
|
||||
if (!settings.generateBopFoliage) {this.removeGenerator("caveweed"); this.removeGenerator("bushes"); this.removeGenerator("koru"); this.removeGenerator("shrubs"); this.removeGenerator("leaf_piles"); this.removeGenerator("dead_leaf_piles"); this.removeGenerator("clover_patches"); this.removeGenerator("sprouts");}
|
||||
|
||||
if (!settings.generateBopPlants) {this.removeGenerator("cattail"); this.removeGenerator("double_cattail"); this.removeGenerator("river_cane"); this.removeGenerator("tiny_cacti"); this.removeGenerator("roots"); this.removeGenerator("rafflesia"); this.removeGenerator("desert_sprouts");}
|
||||
|
||||
if (!settings.generateBopWaterPlants) {this.removeGenerator("algae"); this.removeGenerator("water_reeds"); this.removeGenerator("algae"); this.removeGenerator("duckweed"); this.removeGenerator("medium_lily"); this.removeGenerator("small_lily"); this.removeGenerator("tiny_lily");}
|
||||
|
||||
GeneratorWeighted flowerGen = (GeneratorWeighted)this.getGenerator("flowers");
|
||||
if (!settings.generateBopFlowers) {flowerGen.removeGenerator("bluebells"); flowerGen.removeGenerator("clover"); flowerGen.removeGenerator("swampflower"); flowerGen.removeGenerator("deathbloom"); flowerGen.removeGenerator("glowflower"); flowerGen.removeGenerator("blue_hydrangeas"); flowerGen.removeGenerator("pink_daffodil"); flowerGen.removeGenerator("white_anemones"); flowerGen.removeGenerator("orange_cosmos"); flowerGen.removeGenerator("wildflowers"); flowerGen.removeGenerator("violet"); flowerGen.removeGenerator("hibiscus"); flowerGen.removeGenerator("goldenrods"); flowerGen.removeGenerator("icy_irises"); flowerGen.removeGenerator("wilted_lily"); flowerGen.removeGenerator("lily_of_the_valley"); flowerGen.removeGenerator("bromeliad"); this.removeGenerator("bromeliad");}
|
||||
|
||||
GeneratorWeighted mushroomGen = (GeneratorWeighted)this.getGenerator("mushrooms");
|
||||
if (!settings.generateBopMushrooms) {mushroomGen.removeGenerator("blue_milk_caps"); mushroomGen.removeGenerator("toadstools"); mushroomGen.removeGenerator("portobellos"); mushroomGen.removeGenerator("flat_mushrooms"); mushroomGen.removeGenerator("glowshrooms");}
|
||||
|
||||
GeneratorWeighted grassGen = (GeneratorWeighted)this.getGenerator("grass");
|
||||
if (!settings.generateBopGrasses) {grassGen.removeGenerator("shortgrass"); grassGen.removeGenerator("mediumgrass"); grassGen.removeGenerator("wheatgrass"); grassGen.removeGenerator("dampgrass");}
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getGrassColorAtPos(BlockPos pos)
|
||||
{
|
||||
return 0x57ED64;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getFoliageColorAtPos(BlockPos pos)
|
||||
{
|
||||
return 0x57ED64;
|
||||
}
|
||||
|
||||
/*
|
||||
@Override
|
||||
public float getFogDensity(int x, int y, int z)
|
||||
{
|
||||
// TODO Auto-generated method stub
|
||||
return 0.6F;
|
||||
}
|
||||
*/
|
||||
|
||||
}
|
|
@ -26,6 +26,7 @@ import biomesoplenty.common.enums.BOPClimates;
|
|||
import biomesoplenty.common.enums.BOPFlowers;
|
||||
import biomesoplenty.common.enums.BOPGems;
|
||||
import biomesoplenty.common.enums.BOPPlants;
|
||||
import biomesoplenty.common.enums.BOPTrees;
|
||||
import biomesoplenty.common.world.BOPWorldSettings;
|
||||
import biomesoplenty.common.world.feature.GeneratorBigFlower;
|
||||
import biomesoplenty.common.world.feature.GeneratorDoubleFlora;
|
||||
|
@ -62,7 +63,7 @@ public class BiomeGenGarden extends BOPBiome
|
|||
this.addGenerator("trees", GeneratorStage.TREE, treeGenerator);
|
||||
treeGenerator.add("red_big_flowers", 1, (new GeneratorBigFlower.Builder()).flowerType(GeneratorBigFlower.BigFlowerType.RED).create());
|
||||
treeGenerator.add("yellow_big_flowers", 1, (new GeneratorBigFlower.Builder()).flowerType(GeneratorBigFlower.BigFlowerType.YELLOW).create());
|
||||
treeGenerator.add("oak_bush", 2, (new GeneratorBush.Builder()).maxHeight(2).create());
|
||||
treeGenerator.add("oak_bush", 2, (new GeneratorBush.Builder()).maxHeight(2).altLeaves(BOPTrees.FLOWERING).create());
|
||||
|
||||
// grasses
|
||||
GeneratorWeighted grassGenerator = new GeneratorWeighted(6.0F);
|
||||
|
|
|
@ -0,0 +1,69 @@
|
|||
/*******************************************************************************
|
||||
* Copyright 2015-2016, the Biomes O' Plenty Team
|
||||
*
|
||||
* This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International Public License.
|
||||
*
|
||||
* To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/4.0/.
|
||||
******************************************************************************/
|
||||
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import net.minecraft.block.BlockTallGrass;
|
||||
import net.minecraft.init.Blocks;
|
||||
import net.minecraft.util.BlockPos;
|
||||
import net.minecraft.world.biome.BiomeGenBase;
|
||||
import net.minecraft.world.biome.BiomeGenBase.SpawnListEntry;
|
||||
import biomesoplenty.api.biome.BOPBiome;
|
||||
import biomesoplenty.api.biome.generation.GeneratorStage;
|
||||
import biomesoplenty.api.biome.generation.GeneratorWeighted;
|
||||
import biomesoplenty.api.block.BOPBlocks;
|
||||
import biomesoplenty.common.block.BlockBOPDirt;
|
||||
import biomesoplenty.common.block.BlockBOPDoublePlant;
|
||||
import biomesoplenty.common.block.BlockBOPGrass;
|
||||
import biomesoplenty.common.block.BlockBOPCoral;
|
||||
import biomesoplenty.common.entities.EntitySnail;
|
||||
import biomesoplenty.common.enums.BOPClimates;
|
||||
import biomesoplenty.common.enums.BOPFlowers;
|
||||
import biomesoplenty.common.enums.BOPGems;
|
||||
import biomesoplenty.common.enums.BOPPlants;
|
||||
import biomesoplenty.common.util.biome.GeneratorUtils.ScatterYMethod;
|
||||
import biomesoplenty.common.world.BOPWorldSettings;
|
||||
import biomesoplenty.common.world.feature.*;
|
||||
|
||||
public class BiomeGenGlacier extends BOPBiome
|
||||
{
|
||||
|
||||
public BiomeGenGlacier()
|
||||
{
|
||||
|
||||
// terrain
|
||||
this.terrainSettings.avgHeight(88).heightVariation(8, 10).octaves(0, 1, 1, 3, 1, 0);
|
||||
|
||||
this.setTemperatureRainfall(-0.5F, 0.2F);
|
||||
this.setColor(11582425);
|
||||
|
||||
this.topBlock = Blocks.ice.getDefaultState();
|
||||
this.fillerBlock = BOPBlocks.hard_ice.getDefaultState();
|
||||
|
||||
this.avgDirtDepth = 16;
|
||||
|
||||
this.canSpawnInBiome = false;
|
||||
this.canGenerateVillages = false;
|
||||
this.canGenerateRivers = false;
|
||||
|
||||
this.spawnableCreatureList.clear();
|
||||
|
||||
clearWeights();
|
||||
|
||||
// gem
|
||||
this.addGenerator("tanzanite", GeneratorStage.SAND, (new GeneratorOreSingle.Builder()).amountPerChunk(12).with(BOPGems.TANZANITE).create());
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void applySettings(BOPWorldSettings settings)
|
||||
{
|
||||
if (!settings.generateBopGems) {this.removeGenerator("malachite");}
|
||||
}
|
||||
|
||||
}
|
|
@ -23,6 +23,7 @@ import biomesoplenty.common.enums.BOPClimates;
|
|||
import biomesoplenty.common.enums.BOPFlowers;
|
||||
import biomesoplenty.common.enums.BOPGems;
|
||||
import biomesoplenty.common.enums.BOPPlants;
|
||||
import biomesoplenty.common.enums.BOPTrees;
|
||||
import biomesoplenty.common.world.BOPWorldSettings;
|
||||
import biomesoplenty.common.world.feature.GeneratorDoubleFlora;
|
||||
import biomesoplenty.common.world.feature.GeneratorFlora;
|
||||
|
@ -52,8 +53,8 @@ public class BiomeGenGrove extends BOPBiome
|
|||
this.addGenerator("sprouts", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.1F).with(BOPPlants.SPROUT).create());
|
||||
this.addGenerator("berry_bushes", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.2F).with(BOPPlants.BERRYBUSH).create());
|
||||
this.addGenerator("bushes", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.4F).with(BOPPlants.BUSH).create());
|
||||
this.addGenerator("shrubs", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.3F).with(BOPPlants.SHRUB).create());
|
||||
this.addGenerator("clover_patches", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(3.0F).with(BOPPlants.CLOVERPATCH).create());
|
||||
this.addGenerator("shrubs", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.1F).with(BOPPlants.SHRUB).create());
|
||||
this.addGenerator("clover_patches", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.6F).with(BOPPlants.CLOVERPATCH).create());
|
||||
this.addGenerator("leaf_piles", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.5F).with(BOPPlants.LEAFPILE).create());
|
||||
|
||||
// trees
|
||||
|
@ -61,11 +62,11 @@ public class BiomeGenGrove extends BOPBiome
|
|||
this.addGenerator("trees", GeneratorStage.TREE, treeGenerator);
|
||||
treeGenerator.add("dark_poplar", 1, (new GeneratorProfileTree.Builder()).minHeight(6).maxHeight(14).log(BlockPlanks.EnumType.DARK_OAK).leaves(BlockPlanks.EnumType.DARK_OAK).profile(GeneratorProfileTree.TreeProfile.POPLAR).create());
|
||||
treeGenerator.add("poplar", 1, (new GeneratorProfileTree.Builder()).minHeight(8).maxHeight(18).log(BlockPlanks.EnumType.BIRCH).leaves(BlockPlanks.EnumType.BIRCH).profile(GeneratorProfileTree.TreeProfile.POPLAR).create());
|
||||
treeGenerator.add("bush", 1, (new GeneratorBush.Builder()).maxHeight(2).create());
|
||||
treeGenerator.add("bush", 1, (new GeneratorBush.Builder()).maxHeight(2).altLeaves(BOPTrees.FLOWERING).create());
|
||||
|
||||
|
||||
// flowers
|
||||
GeneratorWeighted flowerGenerator = new GeneratorWeighted(5.0F);
|
||||
GeneratorWeighted flowerGenerator = new GeneratorWeighted(3.0F);
|
||||
this.addGenerator("flowers", GeneratorStage.GRASS, flowerGenerator);
|
||||
flowerGenerator.add("clover", 4, (new GeneratorFlora.Builder().with(BOPFlowers.CLOVER).create()));
|
||||
flowerGenerator.add("white_anemones", 2, (new GeneratorFlora.Builder().with(BOPFlowers.WHITE_ANEMONE).create()));
|
||||
|
@ -75,7 +76,7 @@ public class BiomeGenGrove extends BOPBiome
|
|||
flowerGenerator.add("poppy", 1, (new GeneratorFlora.Builder().with(BlockFlower.EnumFlowerType.POPPY).create()));
|
||||
|
||||
// grasses
|
||||
GeneratorWeighted grassGenerator = new GeneratorWeighted(2.0F);
|
||||
GeneratorWeighted grassGenerator = new GeneratorWeighted(9.0F);
|
||||
this.addGenerator("grass", GeneratorStage.GRASS, grassGenerator);
|
||||
grassGenerator.add("shortgrass", 1, (new GeneratorGrass.Builder()).with(BOPPlants.SHORTGRASS).create());
|
||||
grassGenerator.add("mediumgrass", 1, (new GeneratorGrass.Builder()).with(BOPPlants.MEDIUMGRASS).create());
|
||||
|
|
|
@ -52,7 +52,7 @@ public class BiomeGenLavenderFields extends BOPBiome
|
|||
GeneratorWeighted treeGenerator = new GeneratorWeighted(1);
|
||||
this.addGenerator("trees", GeneratorStage.TREE, treeGenerator);
|
||||
treeGenerator.add("jacaranda", 3, (new GeneratorBasicTree.Builder()).minHeight(4).maxHeight(7).log(BOPWoods.JACARANDA).leaves(BOPTrees.JACARANDA).create());
|
||||
treeGenerator.add("oak", 1, (new GeneratorBigTree.Builder()).create());
|
||||
treeGenerator.add("oak", 1, (new GeneratorBigTree.Builder()).altLeaves(BOPTrees.FLOWERING).create());
|
||||
|
||||
// grasses
|
||||
GeneratorWeighted grassGenerator = new GeneratorWeighted(15);
|
||||
|
|
|
@ -8,16 +8,15 @@
|
|||
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import net.minecraft.block.BlockDoublePlant;
|
||||
import net.minecraft.block.BlockFlower;
|
||||
import net.minecraft.block.BlockFlower.EnumFlowerType;
|
||||
import net.minecraft.block.BlockLeaves;
|
||||
import net.minecraft.block.BlockOldLeaf;
|
||||
import net.minecraft.block.BlockPlanks;
|
||||
import net.minecraft.block.BlockTallGrass;
|
||||
import net.minecraft.block.BlockFlower.EnumFlowerType;
|
||||
import net.minecraft.block.state.IBlockState;
|
||||
import net.minecraft.entity.monster.EntitySlime;
|
||||
import net.minecraft.init.Blocks;
|
||||
import net.minecraft.util.BlockPos;
|
||||
import net.minecraft.world.biome.BiomeGenBase.SpawnListEntry;
|
||||
import biomesoplenty.api.biome.BOPBiome;
|
||||
import biomesoplenty.api.biome.generation.GeneratorStage;
|
||||
import biomesoplenty.api.biome.generation.GeneratorWeighted;
|
||||
|
@ -25,20 +24,16 @@ import biomesoplenty.api.block.BOPBlocks;
|
|||
import biomesoplenty.api.block.BlockQueries;
|
||||
import biomesoplenty.common.block.BlockBOPCoral;
|
||||
import biomesoplenty.common.block.BlockBOPDoublePlant;
|
||||
import biomesoplenty.common.block.BlockBOPLeaves;
|
||||
import biomesoplenty.common.block.BlockBOPLilypad;
|
||||
import biomesoplenty.common.block.BlockBOPMushroom;
|
||||
import biomesoplenty.common.block.BlockBOPPlant;
|
||||
import biomesoplenty.common.block.BlockBOPVine;
|
||||
import biomesoplenty.common.entities.EntitySnail;
|
||||
import biomesoplenty.common.enums.BOPClimates;
|
||||
import biomesoplenty.common.enums.BOPFlowers;
|
||||
import biomesoplenty.common.enums.BOPGems;
|
||||
import biomesoplenty.common.enums.BOPPlants;
|
||||
import biomesoplenty.common.enums.BOPTrees;
|
||||
import biomesoplenty.common.enums.BOPWoods;
|
||||
import biomesoplenty.common.util.biome.GeneratorUtils.ScatterYMethod;
|
||||
import biomesoplenty.common.util.block.BlockQuery;
|
||||
import biomesoplenty.common.util.block.BlockQuery.IBlockPosQuery;
|
||||
import biomesoplenty.common.world.BOPWorldSettings;
|
||||
import biomesoplenty.common.world.feature.GeneratorColumns;
|
||||
import biomesoplenty.common.world.feature.GeneratorDoubleFlora;
|
||||
|
@ -48,7 +43,6 @@ import biomesoplenty.common.world.feature.GeneratorLakes;
|
|||
import biomesoplenty.common.world.feature.GeneratorOreSingle;
|
||||
import biomesoplenty.common.world.feature.GeneratorWaterside;
|
||||
import biomesoplenty.common.world.feature.tree.GeneratorBasicTree;
|
||||
import biomesoplenty.common.world.feature.tree.GeneratorTaigaTree;
|
||||
|
||||
public class BiomeGenLushSwamp extends BOPBiome
|
||||
{
|
||||
|
@ -73,10 +67,10 @@ public class BiomeGenLushSwamp extends BOPBiome
|
|||
this.spawnableCreatureList.add(new SpawnListEntry(EntitySnail.class, 8, 1, 2));
|
||||
|
||||
// mud
|
||||
this.addGenerator("mud", GeneratorStage.SAND_PASS2, (new GeneratorWaterside.Builder()).amountPerChunk(5).maxRadius(8).with(BOPBlocks.mud.getDefaultState()).create());
|
||||
this.addGenerator("mud", GeneratorStage.SAND_PASS2, (new GeneratorWaterside.Builder()).amountPerChunk(1).maxRadius(8).with(BOPBlocks.mud.getDefaultState()).create());
|
||||
|
||||
// sand
|
||||
this.addGenerator("sand", GeneratorStage.SAND_PASS2, (new GeneratorWaterside.Builder()).amountPerChunk(3).maxRadius(7).with(Blocks.sand.getDefaultState()).create());
|
||||
this.addGenerator("sand", GeneratorStage.SAND_PASS2, (new GeneratorWaterside.Builder()).amountPerChunk(1).maxRadius(7).with(Blocks.sand.getDefaultState()).create());
|
||||
|
||||
// lakes
|
||||
this.addGenerator("poison_lakes", GeneratorStage.SAND, (new GeneratorLakes.Builder()).amountPerChunk(0.1F).waterLakeForBiome(this).liquid(BOPBlocks.poison).frozenLiquid((IBlockState)null).create());
|
||||
|
@ -84,7 +78,7 @@ public class BiomeGenLushSwamp extends BOPBiome
|
|||
// trees & logs
|
||||
GeneratorWeighted treeGenerator = new GeneratorWeighted(9);
|
||||
this.addGenerator("trees", GeneratorStage.TREE, treeGenerator);
|
||||
treeGenerator.add("swamp", 5, (new GeneratorBasicTree.Builder()).minHeight(8).maxHeight(12).maxLeavesRadius(2).vine(Blocks.vine.getDefaultState()).create());
|
||||
treeGenerator.add("swamp", 5, (new GeneratorBasicTree.Builder()).minHeight(8).maxHeight(12).maxLeavesRadius(2).leaves(Blocks.leaves.getDefaultState().withProperty(BlockOldLeaf.CHECK_DECAY, Boolean.valueOf(false))).vine(Blocks.vine.getDefaultState()).create());
|
||||
|
||||
// grasses
|
||||
GeneratorWeighted grassGenerator = new GeneratorWeighted(5.0F);
|
||||
|
@ -108,8 +102,8 @@ public class BiomeGenLushSwamp extends BOPBiome
|
|||
// other plants
|
||||
this.addGenerator("berry_bushes", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.1F).with(BOPPlants.BERRYBUSH).create());
|
||||
this.addGenerator("koru", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.3F).with(BOPPlants.KORU).create());
|
||||
this.addGenerator("cattail", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(3.0F).with(BOPPlants.CATTAIL).create());
|
||||
this.addGenerator("double_cattail", GeneratorStage.FLOWERS, (new GeneratorDoubleFlora.Builder()).amountPerChunk(3.0F).with(BlockBOPDoublePlant.DoublePlantType.TALL_CATTAIL).create());
|
||||
this.addGenerator("cattail", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(6.0F).with(BOPPlants.CATTAIL).create());
|
||||
this.addGenerator("double_cattail", GeneratorStage.FLOWERS, (new GeneratorDoubleFlora.Builder()).amountPerChunk(6.0F).with(BlockBOPDoublePlant.DoublePlantType.TALL_CATTAIL).create());
|
||||
this.addGenerator("leaf_piles", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.5F).with(BOPPlants.LEAFPILE).create());
|
||||
this.addGenerator("sugar_cane", GeneratorStage.FLOWERS,(new GeneratorColumns.Builder()).amountPerChunk(1.0F).generationAttempts(24).placeOn(BlockQueries.litFertileWaterside).with(Blocks.reeds.getDefaultState()).minHeight(1).maxHeight(3).create());
|
||||
this.addGenerator("river_cane", GeneratorStage.FLOWERS,(new GeneratorColumns.Builder()).amountPerChunk(1.0F).generationAttempts(24).placeOn(BlockQueries.litFertileWaterside).with(BlockBOPPlant.paging.getVariantState(BOPPlants.RIVERCANE)).minHeight(1).maxHeight(3).create());
|
||||
|
@ -122,6 +116,7 @@ public class BiomeGenLushSwamp extends BOPBiome
|
|||
this.addGenerator("tiny_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.5F).with(BlockBOPLilypad.LilypadType.TINY).create());
|
||||
this.addGenerator("algae", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(2.0F).replace(Blocks.water).with(BOPBlocks.coral.getDefaultState().withProperty(BlockBOPCoral.VARIANT, BlockBOPCoral.CoralType.ALGAE)).scatterYMethod(ScatterYMethod.AT_GROUND).create());
|
||||
this.addGenerator("water_reeds", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.7F).with(BOPPlants.REED).generationAttempts(32).create());
|
||||
this.addGenerator("flower_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.25F).with(BlockBOPLilypad.LilypadType.FLOWER).create());
|
||||
|
||||
// shrooms
|
||||
this.addGenerator("toadstools", GeneratorStage.SHROOM,(new GeneratorFlora.Builder()).amountPerChunk(0.4F).with(BlockBOPMushroom.MushroomType.TOADSTOOL).create());
|
||||
|
@ -148,7 +143,7 @@ public class BiomeGenLushSwamp extends BOPBiome
|
|||
|
||||
if (!settings.generateBopPlants) {this.removeGenerator("cattail"); this.removeGenerator("double_cattail"); this.removeGenerator("river_cane"); this.removeGenerator("tiny_cacti"); this.removeGenerator("roots"); this.removeGenerator("rafflesia"); this.removeGenerator("desert_sprouts");}
|
||||
|
||||
if (!settings.generateBopWaterPlants) {this.removeGenerator("algae"); this.removeGenerator("water_reeds"); this.removeGenerator("algae"); this.removeGenerator("duckweed"); this.removeGenerator("medium_lily"); this.removeGenerator("small_lily"); this.removeGenerator("tiny_lily");}
|
||||
if (!settings.generateBopWaterPlants) {this.removeGenerator("algae"); this.removeGenerator("water_reeds"); this.removeGenerator("algae"); this.removeGenerator("duckweed"); this.removeGenerator("medium_lily"); this.removeGenerator("small_lily"); this.removeGenerator("tiny_lily"); this.removeGenerator("flower_lily");}
|
||||
|
||||
GeneratorWeighted flowerGen = (GeneratorWeighted)this.getGenerator("flowers");
|
||||
if (!settings.generateBopFlowers) {flowerGen.removeGenerator("bluebells"); flowerGen.removeGenerator("clover"); flowerGen.removeGenerator("swampflower"); flowerGen.removeGenerator("deathbloom"); flowerGen.removeGenerator("glowflower"); flowerGen.removeGenerator("blue_hydrangeas"); flowerGen.removeGenerator("pink_daffodil"); flowerGen.removeGenerator("white_anemones"); flowerGen.removeGenerator("orange_cosmos"); flowerGen.removeGenerator("wildflowers"); flowerGen.removeGenerator("violet"); flowerGen.removeGenerator("hibiscus"); flowerGen.removeGenerator("goldenrods"); flowerGen.removeGenerator("icy_irises"); flowerGen.removeGenerator("wilted_lily"); flowerGen.removeGenerator("lily_of_the_valley"); flowerGen.removeGenerator("bromeliad"); this.removeGenerator("bromeliad");}
|
||||
|
|
|
@ -91,6 +91,8 @@ public class BiomeGenMeadow extends BOPBiome
|
|||
this.addGenerator("shrubs", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.5F).with(BOPPlants.SHRUB).create());
|
||||
this.addGenerator("clover_patches", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(1.0F).with(BOPPlants.CLOVERPATCH).create());
|
||||
this.addGenerator("sprouts", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.5F).with(BOPPlants.SPROUT).create());
|
||||
this.addGenerator("cattail", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(2.0F).with(BOPPlants.CATTAIL).create());
|
||||
this.addGenerator("double_cattail", GeneratorStage.FLOWERS, (new GeneratorDoubleFlora.Builder()).amountPerChunk(1.0F).with(BlockBOPDoublePlant.DoublePlantType.TALL_CATTAIL).create());
|
||||
|
||||
// water plants
|
||||
this.addGenerator("algae", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(1.0F).replace(Blocks.water).with(BOPBlocks.coral.getDefaultState().withProperty(BlockBOPCoral.VARIANT, BlockBOPCoral.CoralType.ALGAE)).scatterYMethod(ScatterYMethod.AT_GROUND).create());
|
||||
|
|
|
@ -10,6 +10,9 @@ package biomesoplenty.common.biome.overworld;
|
|||
|
||||
import net.minecraft.block.BlockDoublePlant;
|
||||
import net.minecraft.block.BlockFlower;
|
||||
import net.minecraft.block.BlockLeaves;
|
||||
import net.minecraft.block.BlockOldLeaf;
|
||||
import net.minecraft.block.BlockPlanks;
|
||||
import net.minecraft.block.BlockTallGrass;
|
||||
import net.minecraft.block.state.IBlockState;
|
||||
import net.minecraft.entity.monster.EntityWitch;
|
||||
|
@ -80,10 +83,10 @@ public class BiomeGenMysticGrove extends BOPBiome
|
|||
// trees & logs
|
||||
GeneratorWeighted treeGenerator = new GeneratorWeighted(10);
|
||||
this.addGenerator("trees", GeneratorStage.TREE, treeGenerator);
|
||||
treeGenerator.add("flowering_vine", 2, (new GeneratorBasicTree.Builder()).minHeight(8).maxHeight(12).maxLeavesRadius(2).vine(BOPBlocks.flower_vine.getDefaultState()).create());
|
||||
treeGenerator.add("flowering_vine", 2, (new GeneratorBasicTree.Builder()).minHeight(8).maxHeight(12).maxLeavesRadius(2).leaves(Blocks.leaves.getDefaultState().withProperty(BlockOldLeaf.CHECK_DECAY, Boolean.valueOf(false))).vine(BOPBlocks.flower_vine.getDefaultState()).create());
|
||||
treeGenerator.add("magic", 9, (new GeneratorBasicTree.Builder()).log(BOPWoods.MAGIC).leaves(BOPTrees.MAGIC).create());
|
||||
treeGenerator.add("jacaranda", 1, (new GeneratorBasicTree.Builder()).minHeight(4).maxHeight(7).log(BOPWoods.JACARANDA).leaves(BOPTrees.JACARANDA).create());
|
||||
treeGenerator.add("oak_large", 3, (new GeneratorBigTree.Builder()).create());
|
||||
treeGenerator.add("oak_large", 3, (new GeneratorBigTree.Builder()).altLeaves(BOPTrees.FLOWERING).create());
|
||||
|
||||
// grasses
|
||||
GeneratorWeighted grassGenerator = new GeneratorWeighted(3.0F);
|
||||
|
@ -120,6 +123,7 @@ public class BiomeGenMysticGrove extends BOPBiome
|
|||
this.addGenerator("small_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.1F).with(BlockBOPLilypad.LilypadType.SMALL).create());
|
||||
this.addGenerator("tiny_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.1F).with(BlockBOPLilypad.LilypadType.TINY).create());
|
||||
this.addGenerator("algae", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(1.0F).replace(Blocks.water).with(BOPBlocks.coral.getDefaultState().withProperty(BlockBOPCoral.VARIANT, BlockBOPCoral.CoralType.ALGAE)).scatterYMethod(ScatterYMethod.AT_GROUND).create());
|
||||
this.addGenerator("flower_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.5F).with(BlockBOPLilypad.LilypadType.FLOWER).create());
|
||||
|
||||
// shrooms
|
||||
this.addGenerator("blue_milk_caps", GeneratorStage.SHROOM,(new GeneratorFlora.Builder()).amountPerChunk(0.1F).with(BlockBOPMushroom.MushroomType.BLUE_MILK_CAP).create());
|
||||
|
@ -146,7 +150,7 @@ public class BiomeGenMysticGrove extends BOPBiome
|
|||
|
||||
if (!settings.generateBopPlants) {this.removeGenerator("cattail"); this.removeGenerator("double_cattail"); this.removeGenerator("river_cane"); this.removeGenerator("tiny_cacti"); this.removeGenerator("roots"); this.removeGenerator("rafflesia"); this.removeGenerator("desert_sprouts");}
|
||||
|
||||
if (!settings.generateBopWaterPlants) {this.removeGenerator("algae"); this.removeGenerator("water_reeds"); this.removeGenerator("algae"); this.removeGenerator("duckweed"); this.removeGenerator("medium_lily"); this.removeGenerator("small_lily"); this.removeGenerator("tiny_lily");}
|
||||
if (!settings.generateBopWaterPlants) {this.removeGenerator("algae"); this.removeGenerator("water_reeds"); this.removeGenerator("algae"); this.removeGenerator("duckweed"); this.removeGenerator("medium_lily"); this.removeGenerator("small_lily"); this.removeGenerator("tiny_lily"); this.removeGenerator("flower_lily");}
|
||||
|
||||
GeneratorWeighted flowerGen = (GeneratorWeighted)this.getGenerator("flowers");
|
||||
if (!settings.generateBopFlowers) {flowerGen.removeGenerator("bluebells"); flowerGen.removeGenerator("clover"); flowerGen.removeGenerator("swampflower"); flowerGen.removeGenerator("deathbloom"); flowerGen.removeGenerator("glowflower"); flowerGen.removeGenerator("blue_hydrangeas"); flowerGen.removeGenerator("pink_daffodil"); flowerGen.removeGenerator("white_anemones"); flowerGen.removeGenerator("orange_cosmos"); flowerGen.removeGenerator("wildflowers"); flowerGen.removeGenerator("violet"); flowerGen.removeGenerator("hibiscus"); flowerGen.removeGenerator("goldenrods"); flowerGen.removeGenerator("icy_irises"); flowerGen.removeGenerator("wilted_lily"); flowerGen.removeGenerator("lily_of_the_valley"); flowerGen.removeGenerator("bromeliad"); this.removeGenerator("bromeliad");}
|
||||
|
|
|
@ -8,43 +8,31 @@
|
|||
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import net.minecraft.block.BlockDoublePlant;
|
||||
import net.minecraft.block.BlockLeaves;
|
||||
import net.minecraft.block.BlockOldLeaf;
|
||||
import net.minecraft.block.BlockPlanks;
|
||||
import net.minecraft.block.BlockTallGrass;
|
||||
import net.minecraft.block.BlockFlower.EnumFlowerType;
|
||||
import net.minecraft.block.state.IBlockState;
|
||||
import net.minecraft.entity.monster.EntitySlime;
|
||||
import net.minecraft.init.Blocks;
|
||||
import net.minecraft.util.BlockPos;
|
||||
import biomesoplenty.api.biome.BOPBiome;
|
||||
import biomesoplenty.api.biome.generation.GeneratorStage;
|
||||
import biomesoplenty.api.biome.generation.GeneratorWeighted;
|
||||
import biomesoplenty.api.block.BOPBlocks;
|
||||
import biomesoplenty.api.block.BlockQueries;
|
||||
import biomesoplenty.common.block.BlockBOPCoral;
|
||||
import biomesoplenty.common.block.BlockBOPDirt;
|
||||
import biomesoplenty.common.block.BlockBOPDoublePlant;
|
||||
import biomesoplenty.common.block.BlockBOPGrass;
|
||||
import biomesoplenty.common.block.BlockBOPLilypad;
|
||||
import biomesoplenty.common.block.BlockBOPMushroom;
|
||||
import biomesoplenty.common.block.BlockBOPPlant;
|
||||
import biomesoplenty.common.block.BlockBOPVine;
|
||||
import biomesoplenty.common.block.BlockBOPLeaves;
|
||||
import biomesoplenty.common.enums.BOPClimates;
|
||||
import biomesoplenty.common.enums.BOPFlowers;
|
||||
import biomesoplenty.common.enums.BOPGems;
|
||||
import biomesoplenty.common.enums.BOPPlants;
|
||||
import biomesoplenty.common.enums.BOPTrees;
|
||||
import biomesoplenty.common.enums.BOPWoods;
|
||||
import biomesoplenty.common.util.biome.GeneratorUtils.ScatterYMethod;
|
||||
import biomesoplenty.common.util.block.BlockQuery;
|
||||
import biomesoplenty.common.util.block.BlockQuery.IBlockPosQuery;
|
||||
import biomesoplenty.common.world.BOPWorldSettings;
|
||||
import biomesoplenty.common.world.feature.GeneratorColumns;
|
||||
import biomesoplenty.common.world.feature.GeneratorDoubleFlora;
|
||||
import biomesoplenty.common.world.feature.GeneratorFlora;
|
||||
import biomesoplenty.common.world.feature.GeneratorGrass;
|
||||
import biomesoplenty.common.world.feature.GeneratorLakes;
|
||||
import biomesoplenty.common.world.feature.GeneratorOreSingle;
|
||||
import biomesoplenty.common.world.feature.GeneratorWaterside;
|
||||
import biomesoplenty.common.world.feature.tree.GeneratorBasicTree;
|
||||
import biomesoplenty.common.world.feature.tree.GeneratorBigTree;
|
||||
import biomesoplenty.common.world.feature.tree.GeneratorTaigaTree;
|
||||
|
@ -82,7 +70,7 @@ public class BiomeGenOminousWoods extends BOPBiome
|
|||
// trees & logs
|
||||
GeneratorWeighted treeGenerator = new GeneratorWeighted(9);
|
||||
this.addGenerator("trees", GeneratorStage.TREE, treeGenerator);
|
||||
treeGenerator.add("umbran_moss", 4, (new GeneratorBasicTree.Builder()).log(BOPWoods.UMBRAN).leaves(BOPTrees.UMBRAN).minHeight(8).maxHeight(12).maxLeavesRadius(2).vine(BOPBlocks.tree_moss.getDefaultState()).create());
|
||||
treeGenerator.add("umbran_moss", 4, (new GeneratorBasicTree.Builder()).log(BOPWoods.UMBRAN).leaves(BOPTrees.UMBRAN).minHeight(8).maxHeight(12).leaves(BlockBOPLeaves.paging.getVariantState(BOPTrees.UMBRAN).withProperty(BlockOldLeaf.CHECK_DECAY, Boolean.valueOf(false))).maxLeavesRadius(2).vine(BOPBlocks.tree_moss.getDefaultState()).create());
|
||||
treeGenerator.add("umbran_spruce", 5, (new GeneratorTaigaTree.Builder()).log(BOPWoods.UMBRAN).leaves(BOPTrees.UMBRAN).maxHeight(20).create()); // TODO: implement pine cones
|
||||
treeGenerator.add("dead_tree", 3, (new GeneratorBigTree.Builder()).minHeight(5).maxHeight(12).foliageHeight(0).foliageDensity(0.5D).log(BOPWoods.DEAD).leaves(Blocks.air.getDefaultState()).create());
|
||||
treeGenerator.add("mega_umbran", 4, (new GeneratorTaigaTree.Builder()).log(BOPWoods.UMBRAN).leaves(BOPTrees.UMBRAN).minHeight(20).maxHeight(30).trunkWidth(2).create());
|
||||
|
|
|
@ -13,6 +13,7 @@ import biomesoplenty.common.enums.BOPClimates;
|
|||
import biomesoplenty.common.enums.BOPFlowers;
|
||||
import biomesoplenty.common.enums.BOPGems;
|
||||
import biomesoplenty.common.enums.BOPPlants;
|
||||
import biomesoplenty.common.enums.BOPTrees;
|
||||
import biomesoplenty.common.world.BOPWorldSettings;
|
||||
import biomesoplenty.common.world.feature.GeneratorDoubleFlora;
|
||||
import biomesoplenty.common.world.feature.GeneratorFlora;
|
||||
|
@ -50,7 +51,7 @@ public class BiomeGenOrchard extends BOPBiome
|
|||
// trees
|
||||
GeneratorWeighted treeGenerator = new GeneratorWeighted(4);
|
||||
this.addGenerator("trees", GeneratorStage.TREE, treeGenerator);
|
||||
treeGenerator.add("oak_large", 1, (new GeneratorBigTree.Builder()).create());
|
||||
treeGenerator.add("oak_large", 1, (new GeneratorBigTree.Builder()).altLeaves(BOPTrees.FLOWERING).create());
|
||||
|
||||
// grasses
|
||||
GeneratorWeighted grassGenerator = new GeneratorWeighted(15);
|
||||
|
|
|
@ -41,7 +41,7 @@ public class BiomeGenOvergrownCliffs extends BOPBiome
|
|||
this.terrainSettings.avgHeight(70).heightVariation(5, 100).octaves(1, 1, 1, 1, 0, 0).sidewaysNoise(0.0F);
|
||||
|
||||
this.setColor(8373350);
|
||||
this.setTemperatureRainfall(0.9F, 0.7F);
|
||||
this.setTemperatureRainfall(0.95F, 0.75F);
|
||||
|
||||
this.canGenerateRivers = false;
|
||||
this.canSpawnInBiome = false;
|
||||
|
|
|
@ -59,7 +59,7 @@ public class BiomeGenRainforest extends BOPBiome
|
|||
GeneratorWeighted treeGenerator = new GeneratorWeighted(20);
|
||||
this.addGenerator("trees", GeneratorStage.TREE, treeGenerator);
|
||||
treeGenerator.add("birch", 1, (new GeneratorBasicTree.Builder()).log(BlockPlanks.EnumType.BIRCH).leaves(BlockPlanks.EnumType.BIRCH).minHeight(5).maxHeight(8).create());
|
||||
treeGenerator.add("oak", 4, (new GeneratorBasicTree.Builder()).minHeight(8).maxHeight(12).create());
|
||||
treeGenerator.add("oak", 4, (new GeneratorBasicTree.Builder()).minHeight(8).maxHeight(12).altLeaves(BOPTrees.FLOWERING).create());
|
||||
treeGenerator.add("large_oak", 1, (new GeneratorBigTree.Builder()).log(BlockPlanks.EnumType.OAK).leaves(BlockPlanks.EnumType.OAK).create());
|
||||
|
||||
// grasses
|
||||
|
@ -94,6 +94,7 @@ public class BiomeGenRainforest extends BOPBiome
|
|||
this.addGenerator("medium_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.3F).with(BlockBOPLilypad.LilypadType.MEDIUM).create());
|
||||
this.addGenerator("small_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.5F).with(BlockBOPLilypad.LilypadType.SMALL).create());
|
||||
this.addGenerator("tiny_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.5F).with(BlockBOPLilypad.LilypadType.TINY).create());
|
||||
this.addGenerator("flower_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.5F).with(BlockBOPLilypad.LilypadType.FLOWER).create());
|
||||
|
||||
// gem
|
||||
this.addGenerator("topaz", GeneratorStage.SAND, (new GeneratorOreSingle.Builder()).amountPerChunk(12).with(BOPGems.TOPAZ).create());
|
||||
|
@ -109,7 +110,7 @@ public class BiomeGenRainforest extends BOPBiome
|
|||
|
||||
if (!settings.generateBopPlants) {this.removeGenerator("cattail"); this.removeGenerator("double_cattail"); this.removeGenerator("river_cane"); this.removeGenerator("tiny_cacti"); this.removeGenerator("roots"); this.removeGenerator("rafflesia"); this.removeGenerator("desert_sprouts");}
|
||||
|
||||
if (!settings.generateBopWaterPlants) {this.removeGenerator("algae"); this.removeGenerator("water_reeds"); this.removeGenerator("algae"); this.removeGenerator("duckweed"); this.removeGenerator("medium_lily"); this.removeGenerator("small_lily"); this.removeGenerator("tiny_lily");}
|
||||
if (!settings.generateBopWaterPlants) {this.removeGenerator("algae"); this.removeGenerator("water_reeds"); this.removeGenerator("algae"); this.removeGenerator("duckweed"); this.removeGenerator("medium_lily"); this.removeGenerator("small_lily"); this.removeGenerator("tiny_lily"); this.removeGenerator("flower_lily");}
|
||||
|
||||
GeneratorWeighted flowerGen = (GeneratorWeighted)this.getGenerator("flowers");
|
||||
if (!settings.generateBopFlowers) {flowerGen.removeGenerator("bluebells"); flowerGen.removeGenerator("clover"); flowerGen.removeGenerator("swampflower"); flowerGen.removeGenerator("deathbloom"); flowerGen.removeGenerator("glowflower"); flowerGen.removeGenerator("blue_hydrangeas"); flowerGen.removeGenerator("pink_daffodil"); flowerGen.removeGenerator("white_anemones"); flowerGen.removeGenerator("orange_cosmos"); flowerGen.removeGenerator("wildflowers"); flowerGen.removeGenerator("violet"); flowerGen.removeGenerator("hibiscus"); flowerGen.removeGenerator("goldenrods"); flowerGen.removeGenerator("icy_irises"); flowerGen.removeGenerator("wilted_lily"); flowerGen.removeGenerator("lily_of_the_valley"); flowerGen.removeGenerator("bromeliad"); this.removeGenerator("bromeliad");}
|
||||
|
|
|
@ -57,7 +57,7 @@ public class BiomeGenSacredSprings extends BOPBiome
|
|||
// trees
|
||||
this.addGenerator("sacred_oak_trees", GeneratorStage.POST, (new GeneratorBigTree.Builder()).amountPerChunk(0.2F).log(BOPWoods.SACRED_OAK).leaves(BOPTrees.SACRED_OAK).minHeight(35).maxHeight(40).trunkWidth(2).foliageDensity(2.0D).create());
|
||||
this.addGenerator("leaves_clusters", GeneratorStage.TREE, (new GeneratorBush.Builder()).amountPerChunk(12.5F).maxHeight(2).create());
|
||||
this.addGenerator("large_oak", GeneratorStage.TREE, (new GeneratorBigTree.Builder()).amountPerChunk(3.0F).log(BlockPlanks.EnumType.OAK).leaves(BlockPlanks.EnumType.OAK).create());
|
||||
this.addGenerator("large_oak", GeneratorStage.TREE, (new GeneratorBigTree.Builder()).amountPerChunk(3.0F).log(BlockPlanks.EnumType.OAK).leaves(BlockPlanks.EnumType.OAK).altLeaves(BOPTrees.FLOWERING).create());
|
||||
|
||||
// grasses
|
||||
GeneratorWeighted grassGenerator = new GeneratorWeighted(2.75F);
|
||||
|
@ -85,6 +85,7 @@ public class BiomeGenSacredSprings extends BOPBiome
|
|||
this.addGenerator("medium_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.3F).with(BlockBOPLilypad.LilypadType.MEDIUM).create());
|
||||
this.addGenerator("small_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.5F).with(BlockBOPLilypad.LilypadType.SMALL).create());
|
||||
this.addGenerator("tiny_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.5F).with(BlockBOPLilypad.LilypadType.TINY).create());
|
||||
this.addGenerator("flower_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.45F).with(BlockBOPLilypad.LilypadType.FLOWER).create());
|
||||
|
||||
// gem
|
||||
this.addGenerator("topaz", GeneratorStage.SAND, (new GeneratorOreSingle.Builder()).amountPerChunk(12).with(BOPGems.TOPAZ).create());
|
||||
|
@ -101,7 +102,7 @@ public class BiomeGenSacredSprings extends BOPBiome
|
|||
|
||||
if (!settings.generateBopPlants) {this.removeGenerator("cattail"); this.removeGenerator("double_cattail"); this.removeGenerator("river_cane"); this.removeGenerator("tiny_cacti"); this.removeGenerator("roots"); this.removeGenerator("rafflesia"); this.removeGenerator("desert_sprouts");}
|
||||
|
||||
if (!settings.generateBopWaterPlants) {this.removeGenerator("algae"); this.removeGenerator("water_reeds"); this.removeGenerator("algae"); this.removeGenerator("duckweed"); this.removeGenerator("medium_lily"); this.removeGenerator("small_lily"); this.removeGenerator("tiny_lily");}
|
||||
if (!settings.generateBopWaterPlants) {this.removeGenerator("algae"); this.removeGenerator("water_reeds"); this.removeGenerator("algae"); this.removeGenerator("duckweed"); this.removeGenerator("medium_lily"); this.removeGenerator("small_lily"); this.removeGenerator("tiny_lily"); this.removeGenerator("flower_lily");}
|
||||
|
||||
GeneratorWeighted flowerGen = (GeneratorWeighted)this.getGenerator("flowers");
|
||||
if (!settings.generateBopFlowers) {flowerGen.removeGenerator("bluebells"); flowerGen.removeGenerator("clover"); flowerGen.removeGenerator("swampflower"); flowerGen.removeGenerator("deathbloom"); flowerGen.removeGenerator("glowflower"); flowerGen.removeGenerator("blue_hydrangeas"); flowerGen.removeGenerator("pink_daffodil"); flowerGen.removeGenerator("white_anemones"); flowerGen.removeGenerator("orange_cosmos"); flowerGen.removeGenerator("wildflowers"); flowerGen.removeGenerator("violet"); flowerGen.removeGenerator("hibiscus"); flowerGen.removeGenerator("goldenrods"); flowerGen.removeGenerator("icy_irises"); flowerGen.removeGenerator("wilted_lily"); flowerGen.removeGenerator("lily_of_the_valley"); flowerGen.removeGenerator("bromeliad"); this.removeGenerator("bromeliad");}
|
||||
|
|
|
@ -21,24 +21,23 @@ import biomesoplenty.common.enums.BOPClimates;
|
|||
import biomesoplenty.common.enums.BOPFlowers;
|
||||
import biomesoplenty.common.enums.BOPGems;
|
||||
import biomesoplenty.common.enums.BOPPlants;
|
||||
import biomesoplenty.common.enums.BOPTrees;
|
||||
import biomesoplenty.common.world.BOPWorldSettings;
|
||||
import biomesoplenty.common.world.feature.GeneratorFlora;
|
||||
import biomesoplenty.common.world.feature.GeneratorGrass;
|
||||
import biomesoplenty.common.world.feature.GeneratorOreSingle;
|
||||
import biomesoplenty.common.world.feature.tree.GeneratorBasicTree;
|
||||
import biomesoplenty.common.world.feature.tree.GeneratorBigTree;
|
||||
|
||||
|
||||
public class BiomeGenFrostForest extends BOPBiome
|
||||
public class BiomeGenSnowyForest extends BOPBiome
|
||||
{
|
||||
|
||||
public BiomeGenFrostForest()
|
||||
public BiomeGenSnowyForest()
|
||||
{
|
||||
// terrain
|
||||
this.terrainSettings.avgHeight(66).heightVariation(6, 21);
|
||||
|
||||
this.topBlock = BOPBlocks.grass.getDefaultState().withProperty(BlockBOPGrass.VARIANT, BlockBOPGrass.BOPGrassType.SILTY);
|
||||
this.fillerBlock = BOPBlocks.dirt.getDefaultState().withProperty(BlockBOPDirt.VARIANT, BlockBOPDirt.BOPDirtType.SILTY);
|
||||
|
||||
this.setColor(0xABD6BC);
|
||||
//this.skyColor = 0xCEE0EA;
|
||||
this.setEnableSnow();
|
||||
|
@ -51,7 +50,8 @@ public class BiomeGenFrostForest extends BOPBiome
|
|||
// trees
|
||||
GeneratorWeighted treeGenerator = new GeneratorWeighted(3);
|
||||
this.addGenerator("trees", GeneratorStage.TREE, treeGenerator);
|
||||
treeGenerator.add("oak", 1, (new GeneratorBasicTree.Builder()).create());
|
||||
treeGenerator.add("oak", 3, (new GeneratorBasicTree.Builder()).leaves(BOPTrees.DEAD).create());
|
||||
treeGenerator.add("dying_tree", 1, (new GeneratorBigTree.Builder()).minHeight(5).maxHeight(12).foliageHeight(2).leaves(BOPTrees.DEAD).create());
|
||||
|
||||
// grasses
|
||||
GeneratorWeighted grassGenerator = new GeneratorWeighted(2.0F);
|
||||
|
@ -68,7 +68,6 @@ public class BiomeGenFrostForest extends BOPBiome
|
|||
// flowers
|
||||
GeneratorWeighted flowerGenerator = new GeneratorWeighted(0.3F);
|
||||
this.addGenerator("flowers", GeneratorStage.GRASS, flowerGenerator);
|
||||
flowerGenerator.add("icy_irises", 1, (new GeneratorFlora.Builder().with(BOPFlowers.ICY_IRIS).create()));
|
||||
flowerGenerator.add("violets", 1, (new GeneratorFlora.Builder().with(BOPFlowers.VIOLET).create()));
|
||||
|
||||
// gem
|
||||
|
@ -81,8 +80,6 @@ public class BiomeGenFrostForest extends BOPBiome
|
|||
{
|
||||
if (!settings.generateBopGems) {this.removeGenerator("tanzanite");}
|
||||
|
||||
if (!settings.generateBopSoils) {this.topBlock = Blocks.grass.getDefaultState(); this.fillerBlock = Blocks.dirt.getDefaultState();}
|
||||
|
||||
if (!settings.generateBopFoliage) {this.removeGenerator("caveweed"); this.removeGenerator("bushes"); this.removeGenerator("koru"); this.removeGenerator("shrubs"); this.removeGenerator("leaf_piles"); this.removeGenerator("dead_leaf_piles"); this.removeGenerator("clover_patches"); this.removeGenerator("sprouts");}
|
||||
|
||||
if (!settings.generateBopPlants) {this.removeGenerator("cattail"); this.removeGenerator("double_cattail"); this.removeGenerator("river_cane"); this.removeGenerator("tiny_cacti"); this.removeGenerator("roots"); this.removeGenerator("rafflesia"); this.removeGenerator("desert_sprouts");}
|
||||
|
@ -96,13 +93,13 @@ public class BiomeGenFrostForest extends BOPBiome
|
|||
@Override
|
||||
public int getGrassColorAtPos(BlockPos pos)
|
||||
{
|
||||
return 0xABD6BC;
|
||||
return 0xBCA165;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getFoliageColorAtPos(BlockPos pos)
|
||||
{
|
||||
return 0xABD6BC;
|
||||
return 0xBCA165;
|
||||
}
|
||||
|
||||
/* TODO
|
|
@ -53,7 +53,7 @@ public class BiomeGenSteppe extends BOPBiome
|
|||
this.terrainSettings.avgHeight(70).heightVariation(6, 20).octaves(0, 1, 2, 2, 1, 0).sidewaysNoise(0.1D);
|
||||
|
||||
this.setColor(13413215);
|
||||
this.setTemperatureRainfall(0.9F, 0.1F);
|
||||
this.setTemperatureRainfall(0.75F, 0.1F);
|
||||
|
||||
this.canSpawnInBiome = false;
|
||||
this.canGenerateVillages = true;
|
||||
|
|
|
@ -3,6 +3,7 @@ package biomesoplenty.common.biome.overworld;
|
|||
import net.minecraft.block.BlockDoublePlant;
|
||||
import net.minecraft.block.BlockFlower;
|
||||
import net.minecraft.block.BlockLeaves;
|
||||
import net.minecraft.block.BlockOldLeaf;
|
||||
import net.minecraft.block.BlockPlanks;
|
||||
import net.minecraft.block.BlockTallGrass;
|
||||
import net.minecraft.entity.passive.EntityWolf;
|
||||
|
@ -72,7 +73,7 @@ public class BiomeGenTemperateRainforest extends BOPBiome
|
|||
treeGenerator.add("small_cedar", 3, (new GeneratorTaigaTree.Builder()).log(BlockPlanks.EnumType.OAK).leaves(BlockPlanks.EnumType.OAK).minHeight(5).maxHeight(15).create());
|
||||
treeGenerator.add("cedar", 5, (new GeneratorTaigaTree.Builder()).log(BlockPlanks.EnumType.OAK).leaves(BlockPlanks.EnumType.OAK).minHeight(20).maxHeight(40).create());
|
||||
treeGenerator.add("oak_bush", 5, (new GeneratorBush.Builder()).maxHeight(2).create());
|
||||
treeGenerator.add("willow", 1, (new GeneratorBasicTree.Builder()).log(BOPWoods.WILLOW).leaves(BOPTrees.WILLOW).minHeight(8).maxHeight(12).maxLeavesRadius(2).vine(BlockBOPLeaves.paging.getVariantState(BOPTrees.WILLOW).withProperty(BlockLeaves.DECAYABLE, Boolean.valueOf(false))).leavesOffset(0).create());
|
||||
treeGenerator.add("willow", 1, (new GeneratorBasicTree.Builder()).log(BOPWoods.WILLOW).leaves(BlockBOPLeaves.paging.getVariantState(BOPTrees.WILLOW).withProperty(BlockOldLeaf.CHECK_DECAY, Boolean.valueOf(false))).minHeight(8).maxHeight(12).maxLeavesRadius(2).vine(BlockBOPLeaves.paging.getVariantState(BOPTrees.WILLOW).withProperty(BlockOldLeaf.CHECK_DECAY, Boolean.valueOf(false))).leavesOffset(0).create());
|
||||
|
||||
// other plants
|
||||
this.addGenerator("shrubs", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.6F).with(BOPPlants.SHRUB).create());
|
||||
|
@ -81,6 +82,8 @@ public class BiomeGenTemperateRainforest extends BOPBiome
|
|||
this.addGenerator("flax", GeneratorStage.FLOWERS, (new GeneratorDoubleFlora.Builder()).amountPerChunk(0.2F).with(BlockBOPDoublePlant.DoublePlantType.FLAX).create());
|
||||
this.addGenerator("poison_ivy", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.5F).with(BOPPlants.POISONIVY).create());
|
||||
this.addGenerator("double_fern", GeneratorStage.FLOWERS, (new GeneratorDoubleFlora.Builder()).amountPerChunk(5.0F).with(BlockDoublePlant.EnumPlantType.FERN).create());
|
||||
this.addGenerator("cattail", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(3.0F).with(BOPPlants.CATTAIL).create());
|
||||
this.addGenerator("double_cattail", GeneratorStage.FLOWERS, (new GeneratorDoubleFlora.Builder()).amountPerChunk(2.0F).with(BlockBOPDoublePlant.DoublePlantType.TALL_CATTAIL).create());
|
||||
|
||||
// shrooms
|
||||
this.addGenerator("flat_mushroom", GeneratorStage.SHROOM,(new GeneratorFlora.Builder()).amountPerChunk(0.1F).with(BlockBOPMushroom.MushroomType.FLAT_MUSHROOM).create());
|
||||
|
@ -103,6 +106,7 @@ public class BiomeGenTemperateRainforest extends BOPBiome
|
|||
this.addGenerator("tiny_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.5F).with(BlockBOPLilypad.LilypadType.TINY).create());
|
||||
this.addGenerator("algae", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(3.0F).replace(Blocks.water).with(BOPBlocks.coral.getDefaultState().withProperty(BlockBOPCoral.VARIANT, BlockBOPCoral.CoralType.ALGAE)).scatterYMethod(ScatterYMethod.AT_GROUND).create());
|
||||
this.addGenerator("water_reeds", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.5F).with(BOPPlants.REED).generationAttempts(32).create());
|
||||
this.addGenerator("flower_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.25F).with(BlockBOPLilypad.LilypadType.FLOWER).create());
|
||||
|
||||
// grasses
|
||||
GeneratorWeighted grassGenerator = new GeneratorWeighted(10.0F);
|
||||
|
@ -132,7 +136,7 @@ public class BiomeGenTemperateRainforest extends BOPBiome
|
|||
|
||||
if (!settings.generateBopPlants) {this.removeGenerator("cattail"); this.removeGenerator("double_cattail"); this.removeGenerator("river_cane"); this.removeGenerator("tiny_cacti"); this.removeGenerator("roots"); this.removeGenerator("rafflesia"); this.removeGenerator("desert_sprouts");}
|
||||
|
||||
if (!settings.generateBopWaterPlants) {this.removeGenerator("algae"); this.removeGenerator("water_reeds"); this.removeGenerator("algae"); this.removeGenerator("duckweed"); this.removeGenerator("medium_lily"); this.removeGenerator("small_lily"); this.removeGenerator("tiny_lily");}
|
||||
if (!settings.generateBopWaterPlants) {this.removeGenerator("algae"); this.removeGenerator("water_reeds"); this.removeGenerator("algae"); this.removeGenerator("duckweed"); this.removeGenerator("medium_lily"); this.removeGenerator("small_lily"); this.removeGenerator("tiny_lily"); this.removeGenerator("flower_lily");}
|
||||
|
||||
GeneratorWeighted grassGen = (GeneratorWeighted)this.getGenerator("grass");
|
||||
if (!settings.generateBopGrasses) {grassGen.removeGenerator("shortgrass"); grassGen.removeGenerator("mediumgrass"); grassGen.removeGenerator("wheatgrass"); grassGen.removeGenerator("dampgrass");}
|
||||
|
|
|
@ -91,6 +91,7 @@ public class BiomeGenTropicalRainforest extends BOPBiome
|
|||
this.addGenerator("small_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.5F).with(BlockBOPLilypad.LilypadType.SMALL).create());
|
||||
this.addGenerator("tiny_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.5F).with(BlockBOPLilypad.LilypadType.TINY).create());
|
||||
this.addGenerator("algae", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(3.0F).replace(Blocks.water).with(BOPBlocks.coral.getDefaultState().withProperty(BlockBOPCoral.VARIANT, BlockBOPCoral.CoralType.ALGAE)).scatterYMethod(ScatterYMethod.AT_GROUND).create());
|
||||
this.addGenerator("flower_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.25F).with(BlockBOPLilypad.LilypadType.FLOWER).create());
|
||||
|
||||
// grasses
|
||||
GeneratorWeighted grassGenerator = new GeneratorWeighted(10.0F);
|
||||
|
@ -116,7 +117,7 @@ public class BiomeGenTropicalRainforest extends BOPBiome
|
|||
|
||||
if (!settings.generateBopPlants) {this.removeGenerator("cattail"); this.removeGenerator("double_cattail"); this.removeGenerator("river_cane"); this.removeGenerator("tiny_cacti"); this.removeGenerator("roots"); this.removeGenerator("rafflesia"); this.removeGenerator("desert_sprouts");}
|
||||
|
||||
if (!settings.generateBopWaterPlants) {this.removeGenerator("algae"); this.removeGenerator("water_reeds"); this.removeGenerator("algae"); this.removeGenerator("duckweed"); this.removeGenerator("medium_lily"); this.removeGenerator("small_lily"); this.removeGenerator("tiny_lily");}
|
||||
if (!settings.generateBopWaterPlants) {this.removeGenerator("algae"); this.removeGenerator("water_reeds"); this.removeGenerator("algae"); this.removeGenerator("duckweed"); this.removeGenerator("medium_lily"); this.removeGenerator("small_lily"); this.removeGenerator("tiny_lily"); this.removeGenerator("flower_lily");}
|
||||
|
||||
GeneratorWeighted flowerGen = (GeneratorWeighted)this.getGenerator("flowers");
|
||||
if (!settings.generateBopFlowers) {flowerGen.removeGenerator("bluebells"); flowerGen.removeGenerator("clover"); flowerGen.removeGenerator("swampflower"); flowerGen.removeGenerator("deathbloom"); flowerGen.removeGenerator("glowflower"); flowerGen.removeGenerator("blue_hydrangeas"); flowerGen.removeGenerator("pink_daffodil"); flowerGen.removeGenerator("white_anemones"); flowerGen.removeGenerator("orange_cosmos"); flowerGen.removeGenerator("wildflowers"); flowerGen.removeGenerator("violet"); flowerGen.removeGenerator("hibiscus"); flowerGen.removeGenerator("goldenrods"); flowerGen.removeGenerator("icy_irises"); flowerGen.removeGenerator("wilted_lily"); flowerGen.removeGenerator("lily_of_the_valley"); flowerGen.removeGenerator("bromeliad"); this.removeGenerator("bromeliad");}
|
||||
|
|
|
@ -10,6 +10,8 @@ package biomesoplenty.common.biome.overworld;
|
|||
|
||||
import net.minecraft.block.BlockDoublePlant;
|
||||
import net.minecraft.block.BlockFlower;
|
||||
import net.minecraft.block.BlockOldLeaf;
|
||||
import net.minecraft.block.BlockPlanks;
|
||||
import net.minecraft.block.BlockFlower.EnumFlowerType;
|
||||
import net.minecraft.block.BlockLeaves;
|
||||
import net.minecraft.block.BlockTallGrass;
|
||||
|
@ -71,12 +73,12 @@ public class BiomeGenWetland extends BOPBiome
|
|||
this.spawnableCreatureList.add(new SpawnListEntry(EntitySnail.class, 8, 1, 2));
|
||||
|
||||
// mud
|
||||
this.addGenerator("mud", GeneratorStage.SAND_PASS2, (new GeneratorWaterside.Builder()).amountPerChunk(10).maxRadius(8).with(BOPBlocks.mud.getDefaultState()).create());
|
||||
this.addGenerator("mud", GeneratorStage.SAND_PASS2, (new GeneratorWaterside.Builder()).amountPerChunk(6).maxRadius(8).with(BOPBlocks.mud.getDefaultState()).create());
|
||||
|
||||
// trees & logs
|
||||
GeneratorWeighted treeGenerator = new GeneratorWeighted(7);
|
||||
this.addGenerator("trees", GeneratorStage.TREE, treeGenerator);
|
||||
treeGenerator.add("willow", 3, (new GeneratorBasicTree.Builder()).log(BOPWoods.WILLOW).leaves(BOPTrees.WILLOW).minHeight(8).maxHeight(12).maxLeavesRadius(2).vine(BlockBOPLeaves.paging.getVariantState(BOPTrees.WILLOW).withProperty(BlockLeaves.DECAYABLE, Boolean.valueOf(false))).leavesOffset(0).create());
|
||||
treeGenerator.add("willow", 3, (new GeneratorBasicTree.Builder()).log(BOPWoods.WILLOW).leaves(BlockBOPLeaves.paging.getVariantState(BOPTrees.WILLOW).withProperty(BlockOldLeaf.CHECK_DECAY, Boolean.valueOf(false))).minHeight(8).maxHeight(12).maxLeavesRadius(2).vine(BlockBOPLeaves.paging.getVariantState(BOPTrees.WILLOW).withProperty(BlockOldLeaf.CHECK_DECAY, Boolean.valueOf(false))).leavesOffset(0).create());
|
||||
treeGenerator.add("spruce", 5, (new GeneratorTaigaTree.Builder()).maxHeight(13).create()); // TODO: implement pine cones
|
||||
|
||||
// grasses
|
||||
|
@ -100,8 +102,8 @@ public class BiomeGenWetland extends BOPBiome
|
|||
|
||||
// other plants
|
||||
this.addGenerator("koru", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.3F).with(BOPPlants.KORU).create());
|
||||
this.addGenerator("cattail", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(3.0F).with(BOPPlants.CATTAIL).create());
|
||||
this.addGenerator("double_cattail", GeneratorStage.FLOWERS, (new GeneratorDoubleFlora.Builder()).amountPerChunk(3.0F).with(BlockBOPDoublePlant.DoublePlantType.TALL_CATTAIL).create());
|
||||
this.addGenerator("cattail", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(8.0F).with(BOPPlants.CATTAIL).create());
|
||||
this.addGenerator("double_cattail", GeneratorStage.FLOWERS, (new GeneratorDoubleFlora.Builder()).amountPerChunk(10.0F).with(BlockBOPDoublePlant.DoublePlantType.TALL_CATTAIL).create());
|
||||
this.addGenerator("leaf_piles", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.5F).with(BOPPlants.LEAFPILE).create());
|
||||
this.addGenerator("dead_leaf_piles", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.2F).with(BOPPlants.DEADLEAFPILE).create());
|
||||
this.addGenerator("sugar_cane", GeneratorStage.FLOWERS,(new GeneratorColumns.Builder()).amountPerChunk(1.0F).generationAttempts(24).placeOn(BlockQueries.litFertileWaterside).with(Blocks.reeds.getDefaultState()).minHeight(1).maxHeight(3).create());
|
||||
|
@ -115,6 +117,7 @@ public class BiomeGenWetland extends BOPBiome
|
|||
this.addGenerator("tiny_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.5F).with(BlockBOPLilypad.LilypadType.TINY).create());
|
||||
this.addGenerator("algae", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(3.0F).replace(Blocks.water).with(BOPBlocks.coral.getDefaultState().withProperty(BlockBOPCoral.VARIANT, BlockBOPCoral.CoralType.ALGAE)).scatterYMethod(ScatterYMethod.AT_GROUND).create());
|
||||
this.addGenerator("water_reeds", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(1.0F).with(BOPPlants.REED).generationAttempts(32).create());
|
||||
this.addGenerator("flower_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.35F).with(BlockBOPLilypad.LilypadType.FLOWER).create());
|
||||
|
||||
// shrooms
|
||||
this.addGenerator("flat_mushroom", GeneratorStage.SHROOM,(new GeneratorFlora.Builder()).amountPerChunk(0.1F).with(BlockBOPMushroom.MushroomType.FLAT_MUSHROOM).create());
|
||||
|
@ -139,7 +142,7 @@ public class BiomeGenWetland extends BOPBiome
|
|||
|
||||
if (!settings.generateBopPlants) {this.removeGenerator("cattail"); this.removeGenerator("double_cattail"); this.removeGenerator("river_cane"); this.removeGenerator("tiny_cacti"); this.removeGenerator("roots"); this.removeGenerator("rafflesia"); this.removeGenerator("desert_sprouts");}
|
||||
|
||||
if (!settings.generateBopWaterPlants) {this.removeGenerator("algae"); this.removeGenerator("water_reeds"); this.removeGenerator("algae"); this.removeGenerator("duckweed"); this.removeGenerator("medium_lily"); this.removeGenerator("small_lily"); this.removeGenerator("tiny_lily");}
|
||||
if (!settings.generateBopWaterPlants) {this.removeGenerator("algae"); this.removeGenerator("water_reeds"); this.removeGenerator("algae"); this.removeGenerator("duckweed"); this.removeGenerator("medium_lily"); this.removeGenerator("small_lily"); this.removeGenerator("tiny_lily"); this.removeGenerator("flower_lily");}
|
||||
|
||||
GeneratorWeighted flowerGen = (GeneratorWeighted)this.getGenerator("flowers");
|
||||
if (!settings.generateBopFlowers) {flowerGen.removeGenerator("bluebells"); flowerGen.removeGenerator("clover"); flowerGen.removeGenerator("swampflower"); flowerGen.removeGenerator("deathbloom"); flowerGen.removeGenerator("glowflower"); flowerGen.removeGenerator("blue_hydrangeas"); flowerGen.removeGenerator("pink_daffodil"); flowerGen.removeGenerator("white_anemones"); flowerGen.removeGenerator("orange_cosmos"); flowerGen.removeGenerator("wildflowers"); flowerGen.removeGenerator("violet"); flowerGen.removeGenerator("hibiscus"); flowerGen.removeGenerator("goldenrods"); flowerGen.removeGenerator("icy_irises"); flowerGen.removeGenerator("wilted_lily"); flowerGen.removeGenerator("lily_of_the_valley"); flowerGen.removeGenerator("bromeliad"); this.removeGenerator("bromeliad");}
|
||||
|
|
|
@ -0,0 +1,76 @@
|
|||
package biomesoplenty.common.biome.vanilla;
|
||||
|
||||
import net.minecraft.init.Blocks;
|
||||
import net.minecraft.world.biome.BiomeGenBase;
|
||||
import biomesoplenty.api.biome.BOPBiomes;
|
||||
import biomesoplenty.api.biome.ExtendedBiomeWrapper;
|
||||
import biomesoplenty.api.biome.generation.GeneratorStage;
|
||||
import biomesoplenty.api.biome.generation.GeneratorWeighted;
|
||||
import biomesoplenty.common.block.BlockBOPDoublePlant;
|
||||
import biomesoplenty.common.block.BlockBOPMushroom;
|
||||
import biomesoplenty.common.enums.BOPFlowers;
|
||||
import biomesoplenty.common.enums.BOPGems;
|
||||
import biomesoplenty.common.enums.BOPPlants;
|
||||
import biomesoplenty.common.world.BOPWorldSettings;
|
||||
import biomesoplenty.common.world.feature.GeneratorDoubleFlora;
|
||||
import biomesoplenty.common.world.feature.GeneratorFlora;
|
||||
import biomesoplenty.common.world.feature.GeneratorGrass;
|
||||
import biomesoplenty.common.world.feature.GeneratorOreSingle;
|
||||
|
||||
public class BiomeExtBirchForestHills extends ExtendedBiomeWrapper
|
||||
{
|
||||
public BiomeExtBirchForestHills()
|
||||
{
|
||||
super(BiomeGenBase.birchForestHills);
|
||||
|
||||
if (BOPBiomes.gravel_beach.isPresent())
|
||||
{
|
||||
this.beachBiomeId = BOPBiomes.gravel_beach.get().biomeID;
|
||||
}
|
||||
|
||||
// grasses
|
||||
GeneratorWeighted grassGenerator = new GeneratorWeighted(2.5F);
|
||||
this.addGenerator("grass", GeneratorStage.GRASS, grassGenerator);
|
||||
grassGenerator.add("shortgrass", 2, (new GeneratorGrass.Builder()).with(BOPPlants.SHORTGRASS).create());
|
||||
grassGenerator.add("mediumgrass", 3, (new GeneratorGrass.Builder()).with(BOPPlants.MEDIUMGRASS).create());
|
||||
grassGenerator.add("wheatgrass", 1, (new GeneratorGrass.Builder()).with(BOPPlants.WHEATGRASS).create());
|
||||
grassGenerator.add("dampgrass", 2, (new GeneratorGrass.Builder()).with(BOPPlants.DAMPGRASS).create());
|
||||
|
||||
// other plants
|
||||
this.addGenerator("dead_leaf_piles", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.5F).with(BOPPlants.DEADLEAFPILE).create());
|
||||
this.addGenerator("leaf_piles", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.5F).with(BOPPlants.LEAFPILE).generationAttempts(64).create());
|
||||
this.addGenerator("flax", GeneratorStage.FLOWERS, (new GeneratorDoubleFlora.Builder()).amountPerChunk(0.1F).with(BlockBOPDoublePlant.DoublePlantType.FLAX).create());
|
||||
this.addGenerator("clover_patches", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(1.0F).with(BOPPlants.CLOVERPATCH).create());
|
||||
this.addGenerator("poison_ivy", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.5F).with(BOPPlants.POISONIVY).create());
|
||||
|
||||
// shrooms
|
||||
this.addGenerator("toadstools", GeneratorStage.SHROOM,(new GeneratorFlora.Builder()).amountPerChunk(0.1F).with(BlockBOPMushroom.MushroomType.TOADSTOOL).create());
|
||||
|
||||
// flowers
|
||||
GeneratorWeighted flowerGenerator = new GeneratorWeighted(0.4F);
|
||||
this.addGenerator("flowers", GeneratorStage.GRASS, flowerGenerator);
|
||||
flowerGenerator.add("clover", 1, (new GeneratorFlora.Builder().with(BOPFlowers.CLOVER).create()));
|
||||
flowerGenerator.add("lily_of_the_valley", 1, (new GeneratorFlora.Builder().with(BOPFlowers.LILY_OF_THE_VALLEY)).generationAttempts(128).create());
|
||||
|
||||
// gem
|
||||
this.addGenerator("amber", GeneratorStage.SAND, (new GeneratorOreSingle.Builder()).amountPerChunk(12).with(BOPGems.AMBER).create());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void applySettings(BOPWorldSettings settings)
|
||||
{
|
||||
if (!settings.generateBopGems) {this.removeGenerator("amber");}
|
||||
if (!settings.generatePoisonIvy) {this.removeGenerator("poison_ivy");}
|
||||
if (!settings.generateFlax) {this.removeGenerator("flax");}
|
||||
|
||||
if (!settings.generateBopFlowers) {this.removeGenerator("flowers");}
|
||||
|
||||
if (!settings.generateBopMushrooms) {this.removeGenerator("toadstools"); this.removeGenerator("flat_mushroom"); this.removeGenerator("blue_milk_caps"); this.removeGenerator("portobellos");}
|
||||
|
||||
if (!settings.generateBopFoliage) {this.removeGenerator("bushes"); this.removeGenerator("koru"); this.removeGenerator("shrubs"); this.removeGenerator("leaf_piles"); this.removeGenerator("dead_leaf_piles"); this.removeGenerator("clover_patches"); this.removeGenerator("sprouts");}
|
||||
|
||||
if (!settings.generateBopPlants) {this.removeGenerator("cattail"); this.removeGenerator("double_cattail"); this.removeGenerator("river_cane"); this.removeGenerator("tiny_cacti"); this.removeGenerator("roots"); this.removeGenerator("rafflesia"); this.removeGenerator("desert_sprouts");}
|
||||
|
||||
if (!settings.generateBopGrasses) {this.removeGenerator("grass");}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,52 @@
|
|||
package biomesoplenty.common.biome.vanilla;
|
||||
|
||||
import net.minecraft.world.biome.BiomeGenBase;
|
||||
import biomesoplenty.api.biome.BOPBiomes;
|
||||
import biomesoplenty.api.biome.ExtendedBiomeWrapper;
|
||||
import biomesoplenty.api.biome.generation.GeneratorStage;
|
||||
import biomesoplenty.api.biome.generation.GeneratorWeighted;
|
||||
import biomesoplenty.common.enums.BOPFlowers;
|
||||
import biomesoplenty.common.enums.BOPGems;
|
||||
import biomesoplenty.common.enums.BOPPlants;
|
||||
import biomesoplenty.common.world.BOPWorldSettings;
|
||||
import biomesoplenty.common.world.feature.GeneratorFlora;
|
||||
import biomesoplenty.common.world.feature.GeneratorGrass;
|
||||
import biomesoplenty.common.world.feature.GeneratorOreSingle;
|
||||
|
||||
public class BiomeExtColdTaiga extends ExtendedBiomeWrapper
|
||||
{
|
||||
public BiomeExtColdTaiga()
|
||||
{
|
||||
super(BiomeGenBase.coldTaiga);
|
||||
|
||||
// grasses
|
||||
GeneratorWeighted grassGenerator = new GeneratorWeighted(0.5F);
|
||||
this.addGenerator("grass", GeneratorStage.GRASS, grassGenerator);
|
||||
grassGenerator.add("shortgrass", 2, (new GeneratorGrass.Builder()).with(BOPPlants.SHORTGRASS).create());
|
||||
grassGenerator.add("mediumgrass", 3, (new GeneratorGrass.Builder()).with(BOPPlants.MEDIUMGRASS).create());
|
||||
grassGenerator.add("wheatgrass", 1, (new GeneratorGrass.Builder()).with(BOPPlants.WHEATGRASS).create());
|
||||
grassGenerator.add("dampgrass", 2, (new GeneratorGrass.Builder()).with(BOPPlants.DAMPGRASS).create());
|
||||
|
||||
// flowers
|
||||
GeneratorWeighted flowerGenerator = new GeneratorWeighted(0.3F);
|
||||
this.addGenerator("flowers", GeneratorStage.GRASS, flowerGenerator);
|
||||
flowerGenerator.add("violet", 1, (new GeneratorFlora.Builder().with(BOPFlowers.VIOLET).create()));
|
||||
|
||||
// gem
|
||||
this.addGenerator("tanzanite", GeneratorStage.SAND, (new GeneratorOreSingle.Builder()).amountPerChunk(12).with(BOPGems.TANZANITE).create());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void applySettings(BOPWorldSettings settings)
|
||||
{
|
||||
if (!settings.generateBopGems) {this.removeGenerator("tanzanite");}
|
||||
|
||||
if (!settings.generateBopFlowers) {this.removeGenerator("flowers");}
|
||||
|
||||
if (!settings.generateBopFoliage) {this.removeGenerator("caveweed"); this.removeGenerator("bushes"); this.removeGenerator("koru"); this.removeGenerator("shrubs"); this.removeGenerator("leaf_piles"); this.removeGenerator("dead_leaf_piles"); this.removeGenerator("clover_patches"); this.removeGenerator("sprouts");}
|
||||
|
||||
if (!settings.generateBopPlants) {this.removeGenerator("cattail"); this.removeGenerator("double_cattail"); this.removeGenerator("river_cane"); this.removeGenerator("tiny_cacti"); this.removeGenerator("roots"); this.removeGenerator("rafflesia"); this.removeGenerator("desert_sprouts");}
|
||||
|
||||
if (!settings.generateBopGrasses) {this.removeGenerator("grass");}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,52 @@
|
|||
package biomesoplenty.common.biome.vanilla;
|
||||
|
||||
import net.minecraft.world.biome.BiomeGenBase;
|
||||
import biomesoplenty.api.biome.BOPBiomes;
|
||||
import biomesoplenty.api.biome.ExtendedBiomeWrapper;
|
||||
import biomesoplenty.api.biome.generation.GeneratorStage;
|
||||
import biomesoplenty.api.biome.generation.GeneratorWeighted;
|
||||
import biomesoplenty.common.enums.BOPFlowers;
|
||||
import biomesoplenty.common.enums.BOPGems;
|
||||
import biomesoplenty.common.enums.BOPPlants;
|
||||
import biomesoplenty.common.world.BOPWorldSettings;
|
||||
import biomesoplenty.common.world.feature.GeneratorFlora;
|
||||
import biomesoplenty.common.world.feature.GeneratorGrass;
|
||||
import biomesoplenty.common.world.feature.GeneratorOreSingle;
|
||||
|
||||
public class BiomeExtColdTaigaHills extends ExtendedBiomeWrapper
|
||||
{
|
||||
public BiomeExtColdTaigaHills()
|
||||
{
|
||||
super(BiomeGenBase.coldTaigaHills);
|
||||
|
||||
// grasses
|
||||
GeneratorWeighted grassGenerator = new GeneratorWeighted(0.5F);
|
||||
this.addGenerator("grass", GeneratorStage.GRASS, grassGenerator);
|
||||
grassGenerator.add("shortgrass", 2, (new GeneratorGrass.Builder()).with(BOPPlants.SHORTGRASS).create());
|
||||
grassGenerator.add("mediumgrass", 3, (new GeneratorGrass.Builder()).with(BOPPlants.MEDIUMGRASS).create());
|
||||
grassGenerator.add("wheatgrass", 1, (new GeneratorGrass.Builder()).with(BOPPlants.WHEATGRASS).create());
|
||||
grassGenerator.add("dampgrass", 2, (new GeneratorGrass.Builder()).with(BOPPlants.DAMPGRASS).create());
|
||||
|
||||
// flowers
|
||||
GeneratorWeighted flowerGenerator = new GeneratorWeighted(0.3F);
|
||||
this.addGenerator("flowers", GeneratorStage.GRASS, flowerGenerator);
|
||||
flowerGenerator.add("violet", 1, (new GeneratorFlora.Builder().with(BOPFlowers.VIOLET).create()));
|
||||
|
||||
// gem
|
||||
this.addGenerator("tanzanite", GeneratorStage.SAND, (new GeneratorOreSingle.Builder()).amountPerChunk(12).with(BOPGems.TANZANITE).create());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void applySettings(BOPWorldSettings settings)
|
||||
{
|
||||
if (!settings.generateBopGems) {this.removeGenerator("tanzanite");}
|
||||
|
||||
if (!settings.generateBopFlowers) {this.removeGenerator("flowers");}
|
||||
|
||||
if (!settings.generateBopFoliage) {this.removeGenerator("caveweed"); this.removeGenerator("bushes"); this.removeGenerator("koru"); this.removeGenerator("shrubs"); this.removeGenerator("leaf_piles"); this.removeGenerator("dead_leaf_piles"); this.removeGenerator("clover_patches"); this.removeGenerator("sprouts");}
|
||||
|
||||
if (!settings.generateBopPlants) {this.removeGenerator("cattail"); this.removeGenerator("double_cattail"); this.removeGenerator("river_cane"); this.removeGenerator("tiny_cacti"); this.removeGenerator("roots"); this.removeGenerator("rafflesia"); this.removeGenerator("desert_sprouts");}
|
||||
|
||||
if (!settings.generateBopGrasses) {this.removeGenerator("grass");}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,39 @@
|
|||
package biomesoplenty.common.biome.vanilla;
|
||||
|
||||
import net.minecraft.block.state.IBlockState;
|
||||
import net.minecraft.world.biome.BiomeGenBase;
|
||||
import biomesoplenty.api.biome.ExtendedBiomeWrapper;
|
||||
import biomesoplenty.api.biome.generation.GeneratorStage;
|
||||
import biomesoplenty.api.biome.generation.GeneratorWeighted;
|
||||
import biomesoplenty.api.block.BOPBlocks;
|
||||
import biomesoplenty.common.block.BlockBOPSand;
|
||||
import biomesoplenty.common.enums.BOPGems;
|
||||
import biomesoplenty.common.enums.BOPPlants;
|
||||
import biomesoplenty.common.world.BOPWorldSettings;
|
||||
import biomesoplenty.common.world.feature.GeneratorFlora;
|
||||
import biomesoplenty.common.world.feature.GeneratorLakes;
|
||||
import biomesoplenty.common.world.feature.GeneratorOreSingle;
|
||||
|
||||
public class BiomeExtDesertHills extends ExtendedBiomeWrapper
|
||||
{
|
||||
public BiomeExtDesertHills()
|
||||
{
|
||||
super(BiomeGenBase.desertHills);
|
||||
|
||||
// other plants
|
||||
this.addGenerator("tiny_cacti", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.3F).with(BOPPlants.TINYCACTUS).create());
|
||||
|
||||
// gem
|
||||
this.addGenerator("ruby", GeneratorStage.SAND, (new GeneratorOreSingle.Builder()).amountPerChunk(12).with(BOPGems.RUBY).create());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void applySettings(BOPWorldSettings settings)
|
||||
{
|
||||
if (!settings.generateBopGems) {this.removeGenerator("ruby");}
|
||||
|
||||
if (!settings.generateBopFoliage) {this.removeGenerator("caveweed"); this.removeGenerator("bushes"); this.removeGenerator("koru"); this.removeGenerator("shrubs"); this.removeGenerator("leaf_piles"); this.removeGenerator("dead_leaf_piles"); this.removeGenerator("clover_patches"); this.removeGenerator("sprouts");}
|
||||
|
||||
if (!settings.generateBopPlants) {this.removeGenerator("cattail"); this.removeGenerator("double_cattail"); this.removeGenerator("river_cane"); this.removeGenerator("tiny_cacti"); this.removeGenerator("roots"); this.removeGenerator("rafflesia"); this.removeGenerator("desert_sprouts");}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,62 @@
|
|||
package biomesoplenty.common.biome.vanilla;
|
||||
|
||||
import net.minecraft.world.biome.BiomeGenBase;
|
||||
import biomesoplenty.api.biome.ExtendedBiomeWrapper;
|
||||
import biomesoplenty.api.biome.generation.GeneratorStage;
|
||||
import biomesoplenty.api.biome.generation.GeneratorWeighted;
|
||||
import biomesoplenty.common.enums.BOPFlowers;
|
||||
import biomesoplenty.common.enums.BOPGems;
|
||||
import biomesoplenty.common.enums.BOPPlants;
|
||||
import biomesoplenty.common.enums.BOPTrees;
|
||||
import biomesoplenty.common.enums.BOPWoods;
|
||||
import biomesoplenty.common.world.BOPWorldSettings;
|
||||
import biomesoplenty.common.world.feature.GeneratorFlora;
|
||||
import biomesoplenty.common.world.feature.GeneratorGrass;
|
||||
import biomesoplenty.common.world.feature.GeneratorOreSingle;
|
||||
import biomesoplenty.common.world.feature.tree.GeneratorBasicTree;
|
||||
import biomesoplenty.common.world.feature.tree.GeneratorBigTree;
|
||||
|
||||
public class BiomeExtExtremeHillsPlus extends ExtendedBiomeWrapper
|
||||
{
|
||||
public BiomeExtExtremeHillsPlus()
|
||||
{
|
||||
super(BiomeGenBase.extremeHillsPlus);
|
||||
|
||||
// trees
|
||||
GeneratorWeighted treeGenerator = new GeneratorWeighted(0.3F);
|
||||
this.addGenerator("trees", GeneratorStage.TREE, treeGenerator);
|
||||
treeGenerator.add("jacaranda", 1, (new GeneratorBasicTree.Builder()).minHeight(4).maxHeight(7).log(BOPWoods.JACARANDA).leaves(BOPTrees.JACARANDA).create());
|
||||
|
||||
// grasses
|
||||
GeneratorWeighted grassGenerator = new GeneratorWeighted(0.5F);
|
||||
this.addGenerator("grass", GeneratorStage.GRASS, grassGenerator);
|
||||
grassGenerator.add("shortgrass", 2, (new GeneratorGrass.Builder()).with(BOPPlants.SHORTGRASS).create());
|
||||
grassGenerator.add("mediumgrass", 3, (new GeneratorGrass.Builder()).with(BOPPlants.MEDIUMGRASS).create());
|
||||
grassGenerator.add("wheatgrass", 1, (new GeneratorGrass.Builder()).with(BOPPlants.WHEATGRASS).create());
|
||||
grassGenerator.add("dampgrass", 2, (new GeneratorGrass.Builder()).with(BOPPlants.DAMPGRASS).create());
|
||||
|
||||
// other plants
|
||||
this.addGenerator("shrubs", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.1F).with(BOPPlants.SHRUB).create());
|
||||
this.addGenerator("leaf_piles", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.2F).with(BOPPlants.LEAFPILE).generationAttempts(64).create());
|
||||
this.addGenerator("dead_leaf_piles", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.4F).with(BOPPlants.DEADLEAFPILE).generationAttempts(64).create());
|
||||
|
||||
// flowers
|
||||
GeneratorWeighted flowerGenerator = new GeneratorWeighted(0.2F);
|
||||
this.addGenerator("flowers", GeneratorStage.GRASS, flowerGenerator);
|
||||
flowerGenerator.add("violet", 1, (new GeneratorFlora.Builder().with(BOPFlowers.VIOLET).create()));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void applySettings(BOPWorldSettings settings)
|
||||
{
|
||||
if (!settings.generateBopMushrooms) {this.removeGenerator("toadstools"); this.removeGenerator("flat_mushroom"); this.removeGenerator("blue_milk_caps"); this.removeGenerator("portobellos");}
|
||||
|
||||
if (!settings.generateBopFoliage) {this.removeGenerator("bushes"); this.removeGenerator("koru"); this.removeGenerator("shrubs"); this.removeGenerator("leaf_piles"); this.removeGenerator("dead_leaf_piles"); this.removeGenerator("clover_patches"); this.removeGenerator("sprouts");}
|
||||
|
||||
if (!settings.generateBopPlants) {this.removeGenerator("cattail"); this.removeGenerator("double_cattail"); this.removeGenerator("river_cane"); this.removeGenerator("tiny_cacti"); this.removeGenerator("roots"); this.removeGenerator("rafflesia"); this.removeGenerator("desert_sprouts");}
|
||||
|
||||
if (!settings.generateBopFlowers) {this.removeGenerator("flowers");}
|
||||
|
||||
if (!settings.generateBopGrasses) {this.removeGenerator("grass");}
|
||||
}
|
||||
}
|
|
@ -13,11 +13,14 @@ import biomesoplenty.common.block.BlockBOPMushroom;
|
|||
import biomesoplenty.common.enums.BOPFlowers;
|
||||
import biomesoplenty.common.enums.BOPGems;
|
||||
import biomesoplenty.common.enums.BOPPlants;
|
||||
import biomesoplenty.common.enums.BOPTrees;
|
||||
import biomesoplenty.common.enums.BOPWoods;
|
||||
import biomesoplenty.common.world.BOPWorldSettings;
|
||||
import biomesoplenty.common.world.feature.GeneratorDoubleFlora;
|
||||
import biomesoplenty.common.world.feature.GeneratorFlora;
|
||||
import biomesoplenty.common.world.feature.GeneratorGrass;
|
||||
import biomesoplenty.common.world.feature.GeneratorOreSingle;
|
||||
import biomesoplenty.common.world.feature.tree.GeneratorBasicTree;
|
||||
|
||||
public class BiomeExtForest extends ExtendedBiomeWrapper
|
||||
{
|
||||
|
@ -30,6 +33,12 @@ public class BiomeExtForest extends ExtendedBiomeWrapper
|
|||
this.beachBiomeId = BOPBiomes.gravel_beach.get().biomeID;
|
||||
}
|
||||
|
||||
// trees
|
||||
GeneratorWeighted treeGenerator = new GeneratorWeighted(0.5F);
|
||||
this.addGenerator("trees", GeneratorStage.TREE, treeGenerator);
|
||||
treeGenerator.add("flowering_oak", 1, (new GeneratorBasicTree.Builder()).altLeaves(BOPTrees.FLOWERING).create());
|
||||
|
||||
|
||||
// grasses
|
||||
GeneratorWeighted grassGenerator = new GeneratorWeighted(5.0F);
|
||||
this.addGenerator("grass", GeneratorStage.GRASS, grassGenerator);
|
||||
|
@ -47,6 +56,8 @@ public class BiomeExtForest extends ExtendedBiomeWrapper
|
|||
this.addGenerator("clover_patches", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(1.0F).with(BOPPlants.CLOVERPATCH).create());
|
||||
this.addGenerator("berry_bushes", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.2F).with(BOPPlants.BERRYBUSH).create());
|
||||
this.addGenerator("poison_ivy", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.1F).with(BOPPlants.POISONIVY).create());
|
||||
this.addGenerator("cattail", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(2.0F).with(BOPPlants.CATTAIL).create());
|
||||
this.addGenerator("double_cattail", GeneratorStage.FLOWERS, (new GeneratorDoubleFlora.Builder()).amountPerChunk(1.0F).with(BlockBOPDoublePlant.DoublePlantType.TALL_CATTAIL).create());
|
||||
|
||||
// shrooms
|
||||
this.addGenerator("toadstools", GeneratorStage.SHROOM,(new GeneratorFlora.Builder()).amountPerChunk(0.2F).with(BlockBOPMushroom.MushroomType.TOADSTOOL).create());
|
||||
|
|
|
@ -0,0 +1,94 @@
|
|||
package biomesoplenty.common.biome.vanilla;
|
||||
|
||||
import net.minecraft.block.BlockDoublePlant;
|
||||
import net.minecraft.block.BlockFlower.EnumFlowerType;
|
||||
import net.minecraft.init.Blocks;
|
||||
import net.minecraft.world.biome.BiomeGenBase;
|
||||
import biomesoplenty.api.biome.BOPBiomes;
|
||||
import biomesoplenty.api.biome.ExtendedBiomeWrapper;
|
||||
import biomesoplenty.api.biome.generation.GeneratorStage;
|
||||
import biomesoplenty.api.biome.generation.GeneratorWeighted;
|
||||
import biomesoplenty.common.block.BlockBOPDoublePlant;
|
||||
import biomesoplenty.common.block.BlockBOPMushroom;
|
||||
import biomesoplenty.common.enums.BOPFlowers;
|
||||
import biomesoplenty.common.enums.BOPGems;
|
||||
import biomesoplenty.common.enums.BOPPlants;
|
||||
import biomesoplenty.common.enums.BOPTrees;
|
||||
import biomesoplenty.common.enums.BOPWoods;
|
||||
import biomesoplenty.common.world.BOPWorldSettings;
|
||||
import biomesoplenty.common.world.feature.GeneratorDoubleFlora;
|
||||
import biomesoplenty.common.world.feature.GeneratorFlora;
|
||||
import biomesoplenty.common.world.feature.GeneratorGrass;
|
||||
import biomesoplenty.common.world.feature.GeneratorOreSingle;
|
||||
import biomesoplenty.common.world.feature.tree.GeneratorBasicTree;
|
||||
|
||||
public class BiomeExtForestHills extends ExtendedBiomeWrapper
|
||||
{
|
||||
public BiomeExtForestHills()
|
||||
{
|
||||
super(BiomeGenBase.forestHills);
|
||||
|
||||
if (BOPBiomes.gravel_beach.isPresent())
|
||||
{
|
||||
this.beachBiomeId = BOPBiomes.gravel_beach.get().biomeID;
|
||||
}
|
||||
|
||||
// trees
|
||||
GeneratorWeighted treeGenerator = new GeneratorWeighted(0.5F);
|
||||
this.addGenerator("trees", GeneratorStage.TREE, treeGenerator);
|
||||
treeGenerator.add("flowering_oak", 1, (new GeneratorBasicTree.Builder()).altLeaves(BOPTrees.FLOWERING).create());
|
||||
|
||||
|
||||
// grasses
|
||||
GeneratorWeighted grassGenerator = new GeneratorWeighted(5.0F);
|
||||
this.addGenerator("grass", GeneratorStage.GRASS, grassGenerator);
|
||||
grassGenerator.add("shortgrass", 2, (new GeneratorGrass.Builder()).with(BOPPlants.SHORTGRASS).create());
|
||||
grassGenerator.add("mediumgrass", 3, (new GeneratorGrass.Builder()).with(BOPPlants.MEDIUMGRASS).create());
|
||||
grassGenerator.add("wheatgrass", 1, (new GeneratorGrass.Builder()).with(BOPPlants.WHEATGRASS).create());
|
||||
grassGenerator.add("dampgrass", 2, (new GeneratorGrass.Builder()).with(BOPPlants.DAMPGRASS).create());
|
||||
|
||||
// other plants
|
||||
this.addGenerator("sprouts", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.5F).with(BOPPlants.SPROUT).create());
|
||||
this.addGenerator("shrubs", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.2F).with(BOPPlants.SHRUB).create());
|
||||
this.addGenerator("dead_leaf_piles", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.2F).with(BOPPlants.DEADLEAFPILE).create());
|
||||
this.addGenerator("leaf_piles", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.7F).with(BOPPlants.LEAFPILE).generationAttempts(64).create());
|
||||
this.addGenerator("flax", GeneratorStage.FLOWERS, (new GeneratorDoubleFlora.Builder()).amountPerChunk(0.1F).with(BlockBOPDoublePlant.DoublePlantType.FLAX).create());
|
||||
this.addGenerator("clover_patches", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(1.0F).with(BOPPlants.CLOVERPATCH).create());
|
||||
this.addGenerator("berry_bushes", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.2F).with(BOPPlants.BERRYBUSH).create());
|
||||
this.addGenerator("poison_ivy", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.1F).with(BOPPlants.POISONIVY).create());
|
||||
this.addGenerator("cattail", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(2.0F).with(BOPPlants.CATTAIL).create());
|
||||
this.addGenerator("double_cattail", GeneratorStage.FLOWERS, (new GeneratorDoubleFlora.Builder()).amountPerChunk(1.0F).with(BlockBOPDoublePlant.DoublePlantType.TALL_CATTAIL).create());
|
||||
|
||||
// shrooms
|
||||
this.addGenerator("toadstools", GeneratorStage.SHROOM,(new GeneratorFlora.Builder()).amountPerChunk(0.2F).with(BlockBOPMushroom.MushroomType.TOADSTOOL).create());
|
||||
this.addGenerator("blue_milk_caps", GeneratorStage.SHROOM,(new GeneratorFlora.Builder()).amountPerChunk(0.1F).with(BlockBOPMushroom.MushroomType.BLUE_MILK_CAP).create());
|
||||
|
||||
// flowers
|
||||
GeneratorWeighted flowerGenerator = new GeneratorWeighted(0.5F);
|
||||
this.addGenerator("flowers", GeneratorStage.GRASS, flowerGenerator);
|
||||
flowerGenerator.add("white_anemones", 1, (new GeneratorFlora.Builder().with(BOPFlowers.WHITE_ANEMONE).create()));
|
||||
flowerGenerator.add("blue_hydrangeas", 3, (new GeneratorFlora.Builder().with(BOPFlowers.BLUE_HYDRANGEA).create()));
|
||||
|
||||
// gem
|
||||
this.addGenerator("amber", GeneratorStage.SAND, (new GeneratorOreSingle.Builder()).amountPerChunk(12).with(BOPGems.AMBER).create());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void applySettings(BOPWorldSettings settings)
|
||||
{
|
||||
if (!settings.generateBopGems) {this.removeGenerator("amber");}
|
||||
if (!settings.generatePoisonIvy) {this.removeGenerator("poison_ivy");}
|
||||
if (!settings.generateFlax) {this.removeGenerator("flax");}
|
||||
if (!settings.generateBerryBushes) {this.removeGenerator("berry_bushes");}
|
||||
|
||||
if (!settings.generateBopFlowers) {this.removeGenerator("flowers");}
|
||||
|
||||
if (!settings.generateBopMushrooms) {this.removeGenerator("toadstools"); this.removeGenerator("flat_mushroom"); this.removeGenerator("blue_milk_caps"); this.removeGenerator("portobellos");}
|
||||
|
||||
if (!settings.generateBopFoliage) {this.removeGenerator("bushes"); this.removeGenerator("koru"); this.removeGenerator("shrubs"); this.removeGenerator("leaf_piles"); this.removeGenerator("dead_leaf_piles"); this.removeGenerator("clover_patches"); this.removeGenerator("sprouts");}
|
||||
|
||||
if (!settings.generateBopPlants) {this.removeGenerator("cattail"); this.removeGenerator("double_cattail"); this.removeGenerator("river_cane"); this.removeGenerator("tiny_cacti"); this.removeGenerator("roots"); this.removeGenerator("rafflesia"); this.removeGenerator("desert_sprouts");}
|
||||
|
||||
if (!settings.generateBopGrasses) {this.removeGenerator("grass");}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,52 @@
|
|||
package biomesoplenty.common.biome.vanilla;
|
||||
|
||||
import net.minecraft.world.biome.BiomeGenBase;
|
||||
import biomesoplenty.api.biome.ExtendedBiomeWrapper;
|
||||
import biomesoplenty.api.biome.generation.GeneratorStage;
|
||||
import biomesoplenty.api.biome.generation.GeneratorWeighted;
|
||||
import biomesoplenty.common.enums.BOPFlowers;
|
||||
import biomesoplenty.common.enums.BOPGems;
|
||||
import biomesoplenty.common.enums.BOPPlants;
|
||||
import biomesoplenty.common.world.BOPWorldSettings;
|
||||
import biomesoplenty.common.world.feature.GeneratorFlora;
|
||||
import biomesoplenty.common.world.feature.GeneratorGrass;
|
||||
import biomesoplenty.common.world.feature.GeneratorOreSingle;
|
||||
|
||||
public class BiomeExtIceMountains extends ExtendedBiomeWrapper
|
||||
{
|
||||
public BiomeExtIceMountains()
|
||||
{
|
||||
super(BiomeGenBase.iceMountains);
|
||||
|
||||
// grasses
|
||||
GeneratorWeighted grassGenerator = new GeneratorWeighted(0.1F);
|
||||
this.addGenerator("grass", GeneratorStage.GRASS, grassGenerator);
|
||||
grassGenerator.add("shortgrass", 2, (new GeneratorGrass.Builder()).with(BOPPlants.SHORTGRASS).create());
|
||||
grassGenerator.add("mediumgrass", 3, (new GeneratorGrass.Builder()).with(BOPPlants.MEDIUMGRASS).create());
|
||||
grassGenerator.add("wheatgrass", 1, (new GeneratorGrass.Builder()).with(BOPPlants.WHEATGRASS).create());
|
||||
grassGenerator.add("dampgrass", 2, (new GeneratorGrass.Builder()).with(BOPPlants.DAMPGRASS).create());
|
||||
|
||||
// flowers
|
||||
GeneratorWeighted flowerGenerator = new GeneratorWeighted(0.1F);
|
||||
this.addGenerator("flowers", GeneratorStage.GRASS, flowerGenerator);
|
||||
flowerGenerator.add("icy_irises", 1, (new GeneratorFlora.Builder().with(BOPFlowers.ICY_IRIS).create()));
|
||||
flowerGenerator.add("violet", 1, (new GeneratorFlora.Builder().with(BOPFlowers.VIOLET).create()));
|
||||
|
||||
// gem
|
||||
this.addGenerator("tanzanite", GeneratorStage.SAND, (new GeneratorOreSingle.Builder()).amountPerChunk(12).with(BOPGems.TANZANITE).create());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void applySettings(BOPWorldSettings settings)
|
||||
{
|
||||
if (!settings.generateBopGems) {this.removeGenerator("tanzanite");}
|
||||
|
||||
if (!settings.generateBopFlowers) {this.removeGenerator("flowers");}
|
||||
|
||||
if (!settings.generateBopPlants) {this.removeGenerator("cattail"); this.removeGenerator("double_cattail"); this.removeGenerator("river_cane"); this.removeGenerator("tiny_cacti"); this.removeGenerator("roots"); this.removeGenerator("rafflesia"); this.removeGenerator("desert_sprouts");}
|
||||
|
||||
if (!settings.generateBopFoliage) {this.removeGenerator("caveweed"); this.removeGenerator("bushes"); this.removeGenerator("koru"); this.removeGenerator("shrubs"); this.removeGenerator("leaf_piles"); this.removeGenerator("dead_leaf_piles"); this.removeGenerator("clover_patches"); this.removeGenerator("sprouts");}
|
||||
|
||||
if (!settings.generateBopGrasses) {this.removeGenerator("grass");}
|
||||
}
|
||||
}
|
|
@ -29,6 +29,7 @@ public class BiomeExtIcePlains extends ExtendedBiomeWrapper
|
|||
// flowers
|
||||
GeneratorWeighted flowerGenerator = new GeneratorWeighted(0.1F);
|
||||
this.addGenerator("flowers", GeneratorStage.GRASS, flowerGenerator);
|
||||
flowerGenerator.add("icy_irises", 1, (new GeneratorFlora.Builder().with(BOPFlowers.ICY_IRIS).create()));
|
||||
flowerGenerator.add("violet", 1, (new GeneratorFlora.Builder().with(BOPFlowers.VIOLET).create()));
|
||||
|
||||
// gem
|
||||
|
|
|
@ -0,0 +1,59 @@
|
|||
package biomesoplenty.common.biome.vanilla;
|
||||
|
||||
import net.minecraft.world.biome.BiomeGenBase;
|
||||
import biomesoplenty.api.biome.ExtendedBiomeWrapper;
|
||||
import biomesoplenty.api.biome.generation.GeneratorStage;
|
||||
import biomesoplenty.api.biome.generation.GeneratorWeighted;
|
||||
import biomesoplenty.common.block.BlockBOPDoublePlant;
|
||||
import biomesoplenty.common.enums.BOPFlowers;
|
||||
import biomesoplenty.common.enums.BOPGems;
|
||||
import biomesoplenty.common.enums.BOPPlants;
|
||||
import biomesoplenty.common.world.BOPWorldSettings;
|
||||
import biomesoplenty.common.world.feature.GeneratorDoubleFlora;
|
||||
import biomesoplenty.common.world.feature.GeneratorFlora;
|
||||
import biomesoplenty.common.world.feature.GeneratorGrass;
|
||||
import biomesoplenty.common.world.feature.GeneratorOreSingle;
|
||||
|
||||
public class BiomeExtJungleHills extends ExtendedBiomeWrapper
|
||||
{
|
||||
public BiomeExtJungleHills()
|
||||
{
|
||||
super(BiomeGenBase.jungleHills);
|
||||
|
||||
// grasses
|
||||
GeneratorWeighted grassGenerator = new GeneratorWeighted(5.0F);
|
||||
this.addGenerator("grass", GeneratorStage.GRASS, grassGenerator);
|
||||
grassGenerator.add("shortgrass", 2, (new GeneratorGrass.Builder()).with(BOPPlants.SHORTGRASS).create());
|
||||
grassGenerator.add("mediumgrass", 3, (new GeneratorGrass.Builder()).with(BOPPlants.MEDIUMGRASS).create());
|
||||
grassGenerator.add("wheatgrass", 1, (new GeneratorGrass.Builder()).with(BOPPlants.WHEATGRASS).create());
|
||||
grassGenerator.add("dampgrass", 2, (new GeneratorGrass.Builder()).with(BOPPlants.DAMPGRASS).create());
|
||||
|
||||
// other plants
|
||||
this.addGenerator("sprouts", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(1.5F).with(BOPPlants.SPROUT).create());
|
||||
this.addGenerator("shrubs", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.1F).with(BOPPlants.SHRUB).create());
|
||||
this.addGenerator("leaf_piles", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.8F).with(BOPPlants.LEAFPILE).generationAttempts(64).create());
|
||||
this.addGenerator("rafflesia", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.6F).with(BOPPlants.RAFFLESIA).create());
|
||||
|
||||
// flowers
|
||||
GeneratorWeighted flowerGenerator = new GeneratorWeighted(1.5F);
|
||||
this.addGenerator("flowers", GeneratorStage.GRASS, flowerGenerator);
|
||||
flowerGenerator.add("orange_cosmos", 4, (new GeneratorFlora.Builder().with(BOPFlowers.ORANGE_COSMOS).create()));
|
||||
|
||||
// gem
|
||||
this.addGenerator("topaz", GeneratorStage.SAND, (new GeneratorOreSingle.Builder()).amountPerChunk(12).with(BOPGems.TOPAZ).create());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void applySettings(BOPWorldSettings settings)
|
||||
{
|
||||
if (!settings.generateBopGems) {this.removeGenerator("topaz");}
|
||||
|
||||
if (!settings.generateBopFlowers) {this.removeGenerator("flowers");}
|
||||
|
||||
if (!settings.generateBopFoliage) {this.removeGenerator("bushes"); this.removeGenerator("koru"); this.removeGenerator("shrubs"); this.removeGenerator("leaf_piles"); this.removeGenerator("dead_leaf_piles"); this.removeGenerator("clover_patches"); this.removeGenerator("sprouts");}
|
||||
|
||||
if (!settings.generateBopPlants) {this.removeGenerator("cattail"); this.removeGenerator("double_cattail"); this.removeGenerator("river_cane"); this.removeGenerator("tiny_cacti"); this.removeGenerator("roots"); this.removeGenerator("rafflesia"); this.removeGenerator("desert_sprouts");}
|
||||
|
||||
if (!settings.generateBopGrasses) {this.removeGenerator("grass");}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,57 @@
|
|||
package biomesoplenty.common.biome.vanilla;
|
||||
|
||||
import net.minecraft.world.biome.BiomeGenBase;
|
||||
import biomesoplenty.api.biome.BOPBiomes;
|
||||
import biomesoplenty.api.biome.ExtendedBiomeWrapper;
|
||||
import biomesoplenty.api.biome.generation.GeneratorStage;
|
||||
import biomesoplenty.api.biome.generation.GeneratorWeighted;
|
||||
import biomesoplenty.common.enums.BOPFlowers;
|
||||
import biomesoplenty.common.enums.BOPGems;
|
||||
import biomesoplenty.common.enums.BOPPlants;
|
||||
import biomesoplenty.common.world.BOPWorldSettings;
|
||||
import biomesoplenty.common.world.feature.GeneratorFlora;
|
||||
import biomesoplenty.common.world.feature.GeneratorGrass;
|
||||
import biomesoplenty.common.world.feature.GeneratorOreSingle;
|
||||
|
||||
public class BiomeExtMegaTaiga extends ExtendedBiomeWrapper
|
||||
{
|
||||
public BiomeExtMegaTaiga()
|
||||
{
|
||||
super(BiomeGenBase.megaTaiga);
|
||||
|
||||
if (BOPBiomes.gravel_beach.isPresent())
|
||||
{
|
||||
this.beachBiomeId = BOPBiomes.gravel_beach.get().biomeID;
|
||||
}
|
||||
|
||||
// grasses
|
||||
GeneratorWeighted grassGenerator = new GeneratorWeighted(0.5F);
|
||||
this.addGenerator("grass", GeneratorStage.GRASS, grassGenerator);
|
||||
grassGenerator.add("shortgrass", 2, (new GeneratorGrass.Builder()).with(BOPPlants.SHORTGRASS).create());
|
||||
grassGenerator.add("mediumgrass", 3, (new GeneratorGrass.Builder()).with(BOPPlants.MEDIUMGRASS).create());
|
||||
grassGenerator.add("wheatgrass", 1, (new GeneratorGrass.Builder()).with(BOPPlants.WHEATGRASS).create());
|
||||
grassGenerator.add("dampgrass", 2, (new GeneratorGrass.Builder()).with(BOPPlants.DAMPGRASS).create());
|
||||
|
||||
// flowers
|
||||
GeneratorWeighted flowerGenerator = new GeneratorWeighted(0.3F);
|
||||
this.addGenerator("flowers", GeneratorStage.GRASS, flowerGenerator);
|
||||
flowerGenerator.add("violet", 1, (new GeneratorFlora.Builder().with(BOPFlowers.VIOLET).create()));
|
||||
|
||||
// gem
|
||||
this.addGenerator("tanzanite", GeneratorStage.SAND, (new GeneratorOreSingle.Builder()).amountPerChunk(12).with(BOPGems.TANZANITE).create());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void applySettings(BOPWorldSettings settings)
|
||||
{
|
||||
if (!settings.generateBopGems) {this.removeGenerator("tanzanite");}
|
||||
|
||||
if (!settings.generateBopFlowers) {this.removeGenerator("flowers");}
|
||||
|
||||
if (!settings.generateBopFoliage) {this.removeGenerator("caveweed"); this.removeGenerator("bushes"); this.removeGenerator("koru"); this.removeGenerator("shrubs"); this.removeGenerator("leaf_piles"); this.removeGenerator("dead_leaf_piles"); this.removeGenerator("clover_patches"); this.removeGenerator("sprouts");}
|
||||
|
||||
if (!settings.generateBopPlants) {this.removeGenerator("cattail"); this.removeGenerator("double_cattail"); this.removeGenerator("river_cane"); this.removeGenerator("tiny_cacti"); this.removeGenerator("roots"); this.removeGenerator("rafflesia"); this.removeGenerator("desert_sprouts");}
|
||||
|
||||
if (!settings.generateBopGrasses) {this.removeGenerator("grass");}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,57 @@
|
|||
package biomesoplenty.common.biome.vanilla;
|
||||
|
||||
import net.minecraft.world.biome.BiomeGenBase;
|
||||
import biomesoplenty.api.biome.BOPBiomes;
|
||||
import biomesoplenty.api.biome.ExtendedBiomeWrapper;
|
||||
import biomesoplenty.api.biome.generation.GeneratorStage;
|
||||
import biomesoplenty.api.biome.generation.GeneratorWeighted;
|
||||
import biomesoplenty.common.enums.BOPFlowers;
|
||||
import biomesoplenty.common.enums.BOPGems;
|
||||
import biomesoplenty.common.enums.BOPPlants;
|
||||
import biomesoplenty.common.world.BOPWorldSettings;
|
||||
import biomesoplenty.common.world.feature.GeneratorFlora;
|
||||
import biomesoplenty.common.world.feature.GeneratorGrass;
|
||||
import biomesoplenty.common.world.feature.GeneratorOreSingle;
|
||||
|
||||
public class BiomeExtMegaTaigaHills extends ExtendedBiomeWrapper
|
||||
{
|
||||
public BiomeExtMegaTaigaHills()
|
||||
{
|
||||
super(BiomeGenBase.megaTaigaHills);
|
||||
|
||||
if (BOPBiomes.gravel_beach.isPresent())
|
||||
{
|
||||
this.beachBiomeId = BOPBiomes.gravel_beach.get().biomeID;
|
||||
}
|
||||
|
||||
// grasses
|
||||
GeneratorWeighted grassGenerator = new GeneratorWeighted(0.5F);
|
||||
this.addGenerator("grass", GeneratorStage.GRASS, grassGenerator);
|
||||
grassGenerator.add("shortgrass", 2, (new GeneratorGrass.Builder()).with(BOPPlants.SHORTGRASS).create());
|
||||
grassGenerator.add("mediumgrass", 3, (new GeneratorGrass.Builder()).with(BOPPlants.MEDIUMGRASS).create());
|
||||
grassGenerator.add("wheatgrass", 1, (new GeneratorGrass.Builder()).with(BOPPlants.WHEATGRASS).create());
|
||||
grassGenerator.add("dampgrass", 2, (new GeneratorGrass.Builder()).with(BOPPlants.DAMPGRASS).create());
|
||||
|
||||
// flowers
|
||||
GeneratorWeighted flowerGenerator = new GeneratorWeighted(0.3F);
|
||||
this.addGenerator("flowers", GeneratorStage.GRASS, flowerGenerator);
|
||||
flowerGenerator.add("violet", 1, (new GeneratorFlora.Builder().with(BOPFlowers.VIOLET).create()));
|
||||
|
||||
// gem
|
||||
this.addGenerator("tanzanite", GeneratorStage.SAND, (new GeneratorOreSingle.Builder()).amountPerChunk(12).with(BOPGems.TANZANITE).create());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void applySettings(BOPWorldSettings settings)
|
||||
{
|
||||
if (!settings.generateBopGems) {this.removeGenerator("tanzanite");}
|
||||
|
||||
if (!settings.generateBopFlowers) {this.removeGenerator("flowers");}
|
||||
|
||||
if (!settings.generateBopFoliage) {this.removeGenerator("caveweed"); this.removeGenerator("bushes"); this.removeGenerator("koru"); this.removeGenerator("shrubs"); this.removeGenerator("leaf_piles"); this.removeGenerator("dead_leaf_piles"); this.removeGenerator("clover_patches"); this.removeGenerator("sprouts");}
|
||||
|
||||
if (!settings.generateBopPlants) {this.removeGenerator("cattail"); this.removeGenerator("double_cattail"); this.removeGenerator("river_cane"); this.removeGenerator("tiny_cacti"); this.removeGenerator("roots"); this.removeGenerator("rafflesia"); this.removeGenerator("desert_sprouts");}
|
||||
|
||||
if (!settings.generateBopGrasses) {this.removeGenerator("grass");}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,47 @@
|
|||
package biomesoplenty.common.biome.vanilla;
|
||||
|
||||
import net.minecraft.world.biome.BiomeGenBase;
|
||||
import biomesoplenty.api.biome.ExtendedBiomeWrapper;
|
||||
import biomesoplenty.api.biome.generation.GeneratorStage;
|
||||
import biomesoplenty.api.biome.generation.GeneratorWeighted;
|
||||
import biomesoplenty.common.enums.BOPFlowers;
|
||||
import biomesoplenty.common.enums.BOPGems;
|
||||
import biomesoplenty.common.enums.BOPPlants;
|
||||
import biomesoplenty.common.world.BOPWorldSettings;
|
||||
import biomesoplenty.common.world.feature.GeneratorFlora;
|
||||
import biomesoplenty.common.world.feature.GeneratorGrass;
|
||||
import biomesoplenty.common.world.feature.GeneratorOreSingle;
|
||||
|
||||
public class BiomeExtMesaPlateau extends ExtendedBiomeWrapper
|
||||
{
|
||||
public BiomeExtMesaPlateau()
|
||||
{
|
||||
super(BiomeGenBase.mesaPlateau);
|
||||
|
||||
// other plants
|
||||
this.addGenerator("desertgrass", GeneratorStage.GRASS, (new GeneratorGrass.Builder()).amountPerChunk(0.5F).with(BOPPlants.DESERTGRASS).generationAttempts(8).create());
|
||||
this.addGenerator("tiny_cacti", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.2F).with(BOPPlants.TINYCACTUS).create());
|
||||
|
||||
// flowers
|
||||
GeneratorWeighted flowerGenerator = new GeneratorWeighted(0.2F);
|
||||
this.addGenerator("flowers", GeneratorStage.GRASS, flowerGenerator);
|
||||
flowerGenerator.add("bromeliad", 2, (new GeneratorFlora.Builder().with(BOPFlowers.BROMELIAD).create()));
|
||||
|
||||
// gem
|
||||
this.addGenerator("ruby", GeneratorStage.SAND, (new GeneratorOreSingle.Builder()).amountPerChunk(12).with(BOPGems.RUBY).create());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void applySettings(BOPWorldSettings settings)
|
||||
{
|
||||
if (!settings.generateBopGems) {this.removeGenerator("ruby");}
|
||||
|
||||
if (!settings.generateBopFlowers) {this.removeGenerator("flowers");}
|
||||
|
||||
if (!settings.generateBopFoliage) {this.removeGenerator("caveweed"); this.removeGenerator("bushes"); this.removeGenerator("koru"); this.removeGenerator("shrubs"); this.removeGenerator("leaf_piles"); this.removeGenerator("dead_leaf_piles"); this.removeGenerator("clover_patches"); this.removeGenerator("sprouts");}
|
||||
|
||||
if (!settings.generateBopPlants) {this.removeGenerator("cattail"); this.removeGenerator("double_cattail"); this.removeGenerator("river_cane"); this.removeGenerator("tiny_cacti"); this.removeGenerator("roots"); this.removeGenerator("rafflesia"); this.removeGenerator("desert_sprouts");}
|
||||
|
||||
if (!settings.generateBopGrasses) {this.removeGenerator("desertgrass");}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,32 @@
|
|||
package biomesoplenty.common.biome.vanilla;
|
||||
|
||||
import net.minecraft.block.state.IBlockState;
|
||||
import net.minecraft.world.biome.BiomeGenBase;
|
||||
import biomesoplenty.api.biome.ExtendedBiomeWrapper;
|
||||
import biomesoplenty.api.biome.generation.GeneratorStage;
|
||||
import biomesoplenty.api.biome.generation.GeneratorWeighted;
|
||||
import biomesoplenty.api.block.BOPBlocks;
|
||||
import biomesoplenty.common.block.BlockBOPSand;
|
||||
import biomesoplenty.common.enums.BOPGems;
|
||||
import biomesoplenty.common.enums.BOPPlants;
|
||||
import biomesoplenty.common.world.BOPWorldSettings;
|
||||
import biomesoplenty.common.world.feature.GeneratorFlora;
|
||||
import biomesoplenty.common.world.feature.GeneratorLakes;
|
||||
import biomesoplenty.common.world.feature.GeneratorOreSingle;
|
||||
|
||||
public class BiomeExtOcean extends ExtendedBiomeWrapper
|
||||
{
|
||||
public BiomeExtOcean()
|
||||
{
|
||||
super(BiomeGenBase.ocean);
|
||||
|
||||
// gem
|
||||
this.addGenerator("sapphire", GeneratorStage.SAND, (new GeneratorOreSingle.Builder()).amountPerChunk(12).with(BOPGems.SAPPHIRE).create());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void applySettings(BOPWorldSettings settings)
|
||||
{
|
||||
if (!settings.generateBopGems) {this.removeGenerator("sapphire");}
|
||||
}
|
||||
}
|
|
@ -20,11 +20,6 @@ public class BiomeExtRoofedForest extends ExtendedBiomeWrapper
|
|||
{
|
||||
super(BiomeGenBase.roofedForest);
|
||||
|
||||
if (BOPBiomes.gravel_beach.isPresent())
|
||||
{
|
||||
this.beachBiomeId = BOPBiomes.gravel_beach.get().biomeID;
|
||||
}
|
||||
|
||||
// grasses
|
||||
GeneratorWeighted grassGenerator = new GeneratorWeighted(2.0F);
|
||||
this.addGenerator("grass", GeneratorStage.GRASS, grassGenerator);
|
||||
|
|
|
@ -0,0 +1,56 @@
|
|||
package biomesoplenty.common.biome.vanilla;
|
||||
|
||||
import net.minecraft.block.state.IBlockState;
|
||||
import net.minecraft.world.biome.BiomeGenBase;
|
||||
import biomesoplenty.api.biome.ExtendedBiomeWrapper;
|
||||
import biomesoplenty.api.biome.generation.GeneratorStage;
|
||||
import biomesoplenty.api.biome.generation.GeneratorWeighted;
|
||||
import biomesoplenty.api.block.BOPBlocks;
|
||||
import biomesoplenty.common.block.BlockBOPSand;
|
||||
import biomesoplenty.common.enums.BOPFlowers;
|
||||
import biomesoplenty.common.enums.BOPGems;
|
||||
import biomesoplenty.common.enums.BOPPlants;
|
||||
import biomesoplenty.common.world.BOPWorldSettings;
|
||||
import biomesoplenty.common.world.feature.GeneratorFlora;
|
||||
import biomesoplenty.common.world.feature.GeneratorGrass;
|
||||
import biomesoplenty.common.world.feature.GeneratorLakes;
|
||||
import biomesoplenty.common.world.feature.GeneratorOreSingle;
|
||||
|
||||
public class BiomeExtSavannaPlateau extends ExtendedBiomeWrapper
|
||||
{
|
||||
public BiomeExtSavannaPlateau()
|
||||
{
|
||||
super(BiomeGenBase.savannaPlateau);
|
||||
|
||||
// grasses
|
||||
GeneratorWeighted grassGenerator = new GeneratorWeighted(4.0F);
|
||||
this.addGenerator("grass", GeneratorStage.GRASS, grassGenerator);
|
||||
grassGenerator.add("shortgrass", 2, (new GeneratorGrass.Builder()).with(BOPPlants.SHORTGRASS).create());
|
||||
grassGenerator.add("mediumgrass", 3, (new GeneratorGrass.Builder()).with(BOPPlants.MEDIUMGRASS).create());
|
||||
grassGenerator.add("wheatgrass", 1, (new GeneratorGrass.Builder()).with(BOPPlants.WHEATGRASS).create());
|
||||
grassGenerator.add("dampgrass", 2, (new GeneratorGrass.Builder()).with(BOPPlants.DAMPGRASS).create());
|
||||
|
||||
// flowers
|
||||
GeneratorWeighted flowerGenerator = new GeneratorWeighted(0.8F);
|
||||
this.addGenerator("flowers", GeneratorStage.GRASS, flowerGenerator);
|
||||
flowerGenerator.add("wildflower", 4, (new GeneratorFlora.Builder()).with(BOPFlowers.WILDFLOWER).create());
|
||||
flowerGenerator.add("clover", 2, (new GeneratorFlora.Builder().with(BOPFlowers.CLOVER).create()));
|
||||
|
||||
// gem
|
||||
this.addGenerator("ruby", GeneratorStage.SAND, (new GeneratorOreSingle.Builder()).amountPerChunk(12).with(BOPGems.RUBY).create());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void applySettings(BOPWorldSettings settings)
|
||||
{
|
||||
if (!settings.generateBopGems) {this.removeGenerator("ruby");}
|
||||
|
||||
if (!settings.generateBopFlowers) {this.removeGenerator("flowers");}
|
||||
|
||||
if (!settings.generateBopFoliage) {this.removeGenerator("caveweed"); this.removeGenerator("bushes"); this.removeGenerator("koru"); this.removeGenerator("shrubs"); this.removeGenerator("leaf_piles"); this.removeGenerator("dead_leaf_piles"); this.removeGenerator("clover_patches"); this.removeGenerator("sprouts");}
|
||||
|
||||
if (!settings.generateBopPlants) {this.removeGenerator("cattail"); this.removeGenerator("double_cattail"); this.removeGenerator("river_cane"); this.removeGenerator("tiny_cacti"); this.removeGenerator("roots"); this.removeGenerator("rafflesia"); this.removeGenerator("desert_sprouts");}
|
||||
|
||||
if (!settings.generateBopGrasses) {this.removeGenerator("grass");}
|
||||
}
|
||||
}
|
|
@ -1,6 +1,8 @@
|
|||
package biomesoplenty.common.biome.vanilla;
|
||||
|
||||
import net.minecraft.block.BlockLeaves;
|
||||
import net.minecraft.block.BlockOldLeaf;
|
||||
import net.minecraft.block.BlockPlanks;
|
||||
import net.minecraft.init.Blocks;
|
||||
import net.minecraft.world.biome.BiomeGenBase;
|
||||
import biomesoplenty.api.biome.ExtendedBiomeWrapper;
|
||||
|
@ -36,7 +38,7 @@ public class BiomeExtSwampland extends ExtendedBiomeWrapper
|
|||
// trees
|
||||
GeneratorWeighted treeGenerator = new GeneratorWeighted(0.5F);
|
||||
this.addGenerator("trees", GeneratorStage.TREE, treeGenerator);
|
||||
treeGenerator.add("willow", 1, (new GeneratorBasicTree.Builder()).log(BOPWoods.WILLOW).leaves(BOPTrees.WILLOW).minHeight(8).maxHeight(12).maxLeavesRadius(2).vine(BlockBOPLeaves.paging.getVariantState(BOPTrees.WILLOW).withProperty(BlockLeaves.DECAYABLE, Boolean.valueOf(false))).leavesOffset(0).create());
|
||||
treeGenerator.add("willow", 1, (new GeneratorBasicTree.Builder()).log(BOPWoods.WILLOW).leaves(BlockBOPLeaves.paging.getVariantState(BOPTrees.WILLOW).withProperty(BlockOldLeaf.CHECK_DECAY, Boolean.valueOf(false))).minHeight(8).maxHeight(12).maxLeavesRadius(2).vine(BlockBOPLeaves.paging.getVariantState(BOPTrees.WILLOW).withProperty(BlockOldLeaf.CHECK_DECAY, Boolean.valueOf(false))).leavesOffset(0).create());
|
||||
|
||||
// grasses
|
||||
GeneratorWeighted grassGenerator = new GeneratorWeighted(1.2F);
|
||||
|
@ -50,8 +52,8 @@ public class BiomeExtSwampland extends ExtendedBiomeWrapper
|
|||
this.addGenerator("mud", GeneratorStage.SAND_PASS2, (new GeneratorWaterside.Builder()).amountPerChunk(8).maxRadius(7).with(BOPBlocks.mud.getDefaultState()).create());
|
||||
|
||||
// other plants
|
||||
this.addGenerator("cattails", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(0.5F).with(BOPPlants.CATTAIL).create());
|
||||
this.addGenerator("double_cattails", GeneratorStage.FLOWERS,(new GeneratorDoubleFlora.Builder()).amountPerChunk(0.2F).with(BlockBOPDoublePlant.DoublePlantType.TALL_CATTAIL).create());
|
||||
this.addGenerator("cattails", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(6.0F).with(BOPPlants.CATTAIL).create());
|
||||
this.addGenerator("double_cattails", GeneratorStage.FLOWERS,(new GeneratorDoubleFlora.Builder()).amountPerChunk(8.0F).with(BlockBOPDoublePlant.DoublePlantType.TALL_CATTAIL).create());
|
||||
this.addGenerator("koru", GeneratorStage.FLOWERS,(new GeneratorFlora.Builder()).amountPerChunk(1.2F).with(BOPPlants.KORU).create());
|
||||
|
||||
// flowers
|
||||
|
@ -67,6 +69,10 @@ public class BiomeExtSwampland extends ExtendedBiomeWrapper
|
|||
this.addGenerator("duckweed", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.5F).with(BlockBOPLilypad.LilypadType.DUCKWEED).generationAttempts(32).create());
|
||||
this.addGenerator("algae", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(10.0F).replace(Blocks.water).with(BOPBlocks.coral.getDefaultState().withProperty(BlockBOPCoral.VARIANT, BlockBOPCoral.CoralType.ALGAE)).generationAttempts(32).scatterYMethod(ScatterYMethod.AT_GROUND).create());
|
||||
this.addGenerator("water_reeds", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.3F).with(BOPPlants.REED).generationAttempts(32).create());
|
||||
this.addGenerator("medium_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.1F).with(BlockBOPLilypad.LilypadType.MEDIUM).create());
|
||||
this.addGenerator("small_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.1F).with(BlockBOPLilypad.LilypadType.SMALL).create());
|
||||
this.addGenerator("tiny_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.2F).with(BlockBOPLilypad.LilypadType.TINY).create());
|
||||
this.addGenerator("flower_lily", GeneratorStage.LILYPAD, (new GeneratorFlora.Builder()).amountPerChunk(0.3F).with(BlockBOPLilypad.LilypadType.FLOWER).create());
|
||||
|
||||
// gem
|
||||
this.addGenerator("malachite", GeneratorStage.SAND, (new GeneratorOreSingle.Builder()).amountPerChunk(12).with(BOPGems.MALACHITE).create());
|
||||
|
@ -85,7 +91,7 @@ public class BiomeExtSwampland extends ExtendedBiomeWrapper
|
|||
|
||||
if (!settings.generateBopPlants) {this.removeGenerator("cattail"); this.removeGenerator("double_cattail"); this.removeGenerator("river_cane"); this.removeGenerator("tiny_cacti"); this.removeGenerator("roots"); this.removeGenerator("rafflesia"); this.removeGenerator("desert_sprouts");}
|
||||
|
||||
if (!settings.generateBopWaterPlants) {this.removeGenerator("algae"); this.removeGenerator("water_reeds"); this.removeGenerator("algae"); this.removeGenerator("duckweed"); this.removeGenerator("medium_lily"); this.removeGenerator("small_lily"); this.removeGenerator("tiny_lily");}
|
||||
if (!settings.generateBopWaterPlants) {this.removeGenerator("algae"); this.removeGenerator("water_reeds"); this.removeGenerator("algae"); this.removeGenerator("duckweed"); this.removeGenerator("medium_lily"); this.removeGenerator("small_lily"); this.removeGenerator("tiny_lily"); this.removeGenerator("flower_lily");}
|
||||
|
||||
if (!settings.generateBopGrasses) {this.removeGenerator("grass");}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,57 @@
|
|||
package biomesoplenty.common.biome.vanilla;
|
||||
|
||||
import net.minecraft.world.biome.BiomeGenBase;
|
||||
import biomesoplenty.api.biome.BOPBiomes;
|
||||
import biomesoplenty.api.biome.ExtendedBiomeWrapper;
|
||||
import biomesoplenty.api.biome.generation.GeneratorStage;
|
||||
import biomesoplenty.api.biome.generation.GeneratorWeighted;
|
||||
import biomesoplenty.common.enums.BOPFlowers;
|
||||
import biomesoplenty.common.enums.BOPGems;
|
||||
import biomesoplenty.common.enums.BOPPlants;
|
||||
import biomesoplenty.common.world.BOPWorldSettings;
|
||||
import biomesoplenty.common.world.feature.GeneratorFlora;
|
||||
import biomesoplenty.common.world.feature.GeneratorGrass;
|
||||
import biomesoplenty.common.world.feature.GeneratorOreSingle;
|
||||
|
||||
public class BiomeExtTaigaHills extends ExtendedBiomeWrapper
|
||||
{
|
||||
public BiomeExtTaigaHills()
|
||||
{
|
||||
super(BiomeGenBase.taigaHills);
|
||||
|
||||
if (BOPBiomes.gravel_beach.isPresent())
|
||||
{
|
||||
this.beachBiomeId = BOPBiomes.gravel_beach.get().biomeID;
|
||||
}
|
||||
|
||||
// grasses
|
||||
GeneratorWeighted grassGenerator = new GeneratorWeighted(0.5F);
|
||||
this.addGenerator("grass", GeneratorStage.GRASS, grassGenerator);
|
||||
grassGenerator.add("shortgrass", 2, (new GeneratorGrass.Builder()).with(BOPPlants.SHORTGRASS).create());
|
||||
grassGenerator.add("mediumgrass", 3, (new GeneratorGrass.Builder()).with(BOPPlants.MEDIUMGRASS).create());
|
||||
grassGenerator.add("wheatgrass", 1, (new GeneratorGrass.Builder()).with(BOPPlants.WHEATGRASS).create());
|
||||
grassGenerator.add("dampgrass", 2, (new GeneratorGrass.Builder()).with(BOPPlants.DAMPGRASS).create());
|
||||
|
||||
// flowers
|
||||
GeneratorWeighted flowerGenerator = new GeneratorWeighted(0.3F);
|
||||
this.addGenerator("flowers", GeneratorStage.GRASS, flowerGenerator);
|
||||
flowerGenerator.add("violet", 1, (new GeneratorFlora.Builder().with(BOPFlowers.VIOLET).create()));
|
||||
|
||||
// gem
|
||||
this.addGenerator("tanzanite", GeneratorStage.SAND, (new GeneratorOreSingle.Builder()).amountPerChunk(12).with(BOPGems.TANZANITE).create());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void applySettings(BOPWorldSettings settings)
|
||||
{
|
||||
if (!settings.generateBopGems) {this.removeGenerator("tanzanite");}
|
||||
|
||||
if (!settings.generateBopFlowers) {this.removeGenerator("flowers");}
|
||||
|
||||
if (!settings.generateBopFoliage) {this.removeGenerator("caveweed"); this.removeGenerator("bushes"); this.removeGenerator("koru"); this.removeGenerator("shrubs"); this.removeGenerator("leaf_piles"); this.removeGenerator("dead_leaf_piles"); this.removeGenerator("clover_patches"); this.removeGenerator("sprouts");}
|
||||
|
||||
if (!settings.generateBopPlants) {this.removeGenerator("cattail"); this.removeGenerator("double_cattail"); this.removeGenerator("river_cane"); this.removeGenerator("tiny_cacti"); this.removeGenerator("roots"); this.removeGenerator("rafflesia"); this.removeGenerator("desert_sprouts");}
|
||||
|
||||
if (!settings.generateBopGrasses) {this.removeGenerator("grass");}
|
||||
}
|
||||
}
|
|
@ -18,11 +18,13 @@ import net.minecraft.block.properties.PropertyEnum;
|
|||
import net.minecraft.block.state.BlockState;
|
||||
import net.minecraft.block.state.IBlockState;
|
||||
import net.minecraft.item.ItemBlock;
|
||||
import net.minecraft.util.AxisAlignedBB;
|
||||
import net.minecraft.util.BlockPos;
|
||||
import net.minecraft.util.IStringSerializable;
|
||||
import net.minecraft.world.ColorizerFoliage;
|
||||
import net.minecraft.world.ColorizerGrass;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraft.world.biome.BiomeColorHelper;
|
||||
import net.minecraftforge.fml.relauncher.Side;
|
||||
import net.minecraftforge.fml.relauncher.SideOnly;
|
||||
|
@ -33,7 +35,7 @@ public class BlockBOPLilypad extends BlockLilyPad implements IBOPBlock
|
|||
// add properties
|
||||
public static enum LilypadType implements IStringSerializable
|
||||
{
|
||||
MEDIUM, SMALL, TINY, DUCKWEED;
|
||||
MEDIUM, SMALL, TINY, DUCKWEED, FLOWER;
|
||||
@Override
|
||||
public String getName()
|
||||
{
|
||||
|
@ -98,6 +100,20 @@ public class BlockBOPLilypad extends BlockLilyPad implements IBOPBlock
|
|||
return net.minecraftforge.common.EnumPlantType.Water;
|
||||
}
|
||||
|
||||
// no collision box - you can walk straight through them
|
||||
@Override
|
||||
public AxisAlignedBB getCollisionBoundingBox(World worldIn, BlockPos pos, IBlockState state)
|
||||
{
|
||||
switch ((LilypadType) state.getValue(VARIANT))
|
||||
{
|
||||
case FLOWER:
|
||||
return new AxisAlignedBB((double)pos.getX() + this.minX, (double)pos.getY() + this.minY, (double)pos.getZ() + this.minZ, (double)pos.getX() + this.maxX, (double)pos.getY() + this.maxY, (double)pos.getZ() + this.maxZ);
|
||||
|
||||
default:
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@SideOnly(Side.CLIENT)
|
||||
public int getBlockColor()
|
||||
|
@ -128,6 +144,15 @@ public class BlockBOPLilypad extends BlockLilyPad implements IBOPBlock
|
|||
case DUCKWEED:
|
||||
return BiomeColorHelper.getGrassColorAtPos(worldIn, pos);
|
||||
|
||||
case FLOWER:
|
||||
switch (renderPass)
|
||||
{
|
||||
case 0:
|
||||
return 2129968;
|
||||
case 1: default:
|
||||
return 0xFFFFFF;
|
||||
}
|
||||
|
||||
default:
|
||||
return 0xFFFFFF;
|
||||
}
|
||||
|
|
|
@ -26,6 +26,8 @@ import biomesoplenty.common.world.feature.tree.GeneratorPineTree;
|
|||
import biomesoplenty.common.world.feature.tree.GeneratorRedwoodTree;
|
||||
import biomesoplenty.common.world.feature.tree.GeneratorTaigaTree;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.BlockLeaves;
|
||||
import net.minecraft.block.BlockOldLeaf;
|
||||
import net.minecraft.block.BlockPlanks;
|
||||
import net.minecraft.block.IGrowable;
|
||||
import net.minecraft.block.properties.IProperty;
|
||||
|
@ -184,8 +186,8 @@ public class BlockBOPSapling extends BlockBOPDecoration implements IGrowable {
|
|||
return new GeneratorBasicTree.Builder().log(BlockPlanks.EnumType.OAK).leaves(BOPTrees.MAPLE).minHeight(5).maxHeight(10).create();
|
||||
case HELLBARK: //Not implemented
|
||||
return new WorldGenTrees(true);
|
||||
case FLOWERING: //Not implemented
|
||||
return new WorldGenTrees(true);
|
||||
case FLOWERING:
|
||||
return new GeneratorBasicTree.Builder().altLeaves(BOPTrees.FLOWERING).create();
|
||||
case JACARANDA:
|
||||
return new GeneratorBasicTree.Builder().minHeight(4).maxHeight(7).log(BOPWoods.JACARANDA).leaves(BOPTrees.JACARANDA).create();
|
||||
case SACRED_OAK:
|
||||
|
@ -197,14 +199,14 @@ public class BlockBOPSapling extends BlockBOPDecoration implements IGrowable {
|
|||
case REDWOOD:
|
||||
return new GeneratorRedwoodTree.Builder().create();
|
||||
case WILLOW:
|
||||
return new GeneratorBayouTree.Builder().log(BOPWoods.WILLOW).leaves(BOPTrees.WILLOW).minHeight(6).maxHeight(12).minLeavesRadius(1).leavesGradient(2).create();
|
||||
return new GeneratorBasicTree.Builder().log(BOPWoods.WILLOW).leaves(BlockBOPLeaves.paging.getVariantState(BOPTrees.WILLOW).withProperty(BlockOldLeaf.CHECK_DECAY, Boolean.valueOf(false))).minHeight(8).maxHeight(12).maxLeavesRadius(2).vine(BlockBOPLeaves.paging.getVariantState(BOPTrees.WILLOW).withProperty(BlockOldLeaf.CHECK_DECAY, Boolean.valueOf(false))).leavesOffset(0).create();
|
||||
case PINE:
|
||||
return new GeneratorPineTree.Builder().minHeight(6).maxHeight(18).log(BOPWoods.PINE).leaves(BOPTrees.PINE).create();
|
||||
case MAHOGANY:
|
||||
return new GeneratorMahoganyTree.Builder().create();
|
||||
case EBONY:
|
||||
return new GeneratorBigTree.Builder().log(BOPWoods.EBONY).leaves(BOPTrees.EBONY).minHeight(4).maxHeight(10).foliageHeight(1).create();
|
||||
case EUCALYPTUS: //Not implemented
|
||||
case EUCALYPTUS:
|
||||
return new GeneratorBulbTree.Builder().minHeight(15).maxHeight(30).log(BOPWoods.EUCALYPTUS).leaves(BOPTrees.EUCALYPTUS).create();
|
||||
default:
|
||||
return null;
|
||||
|
|
|
@ -106,8 +106,8 @@ public enum BOPClimates {
|
|||
private static final BOPClimates[] climateMapping = new BOPClimates[] {
|
||||
// 0 1 2 3 4 5 6 7 8 9 10 11
|
||||
TUNDRA, TUNDRA, TUNDRA, ICE_CAP, ICE_CAP, ICE_CAP, ICE_CAP, ICE_CAP, ICE_CAP, ICE_CAP, ICE_CAP, ICE_CAP, // 0
|
||||
BOREAL, BOREAL, BOREAL, TUNDRA, TUNDRA, TUNDRA, TUNDRA, TUNDRA, TUNDRA, ICE_CAP, ICE_CAP, ICE_CAP, // 1
|
||||
COLD_SWAMP, COLD_SWAMP, COLD_SWAMP, BOREAL, BOREAL, BOREAL, BOREAL, BOREAL, BOREAL, TUNDRA, TUNDRA, TUNDRA, // 2
|
||||
BOREAL, BOREAL, BOREAL, TUNDRA, TUNDRA, TUNDRA, TUNDRA, TUNDRA, TUNDRA, TUNDRA, TUNDRA, TUNDRA, // 1
|
||||
COLD_SWAMP, COLD_SWAMP, COLD_SWAMP, BOREAL, BOREAL, BOREAL, BOREAL, BOREAL, BOREAL, BOREAL, BOREAL, BOREAL, // 2
|
||||
COLD_SWAMP, COLD_SWAMP, COLD_SWAMP, WET_TEMPERATE, COOL_TEMPERATE, COOL_TEMPERATE, COOL_TEMPERATE, COOL_TEMPERATE, COOL_TEMPERATE, DRY_TEMPERATE, DRY_TEMPERATE, DRY_TEMPERATE, // 3
|
||||
COLD_SWAMP, WET_TEMPERATE, WET_TEMPERATE, COOL_TEMPERATE, COOL_TEMPERATE, COOL_TEMPERATE, COOL_TEMPERATE, COOL_TEMPERATE, DRY_TEMPERATE, DRY_TEMPERATE, DRY_TEMPERATE, DRY_TEMPERATE, // 4
|
||||
WET_TEMPERATE, WET_TEMPERATE, WET_TEMPERATE, WARM_TEMPERATE, WARM_TEMPERATE, WARM_TEMPERATE, WARM_TEMPERATE, WARM_TEMPERATE, WARM_TEMPERATE, DRY_TEMPERATE, SAVANNA, SAVANNA, // 5
|
||||
|
|
|
@ -12,6 +12,7 @@ import static biomesoplenty.api.biome.BOPBiomes.alps;
|
|||
import static biomesoplenty.api.biome.BOPBiomes.bamboo_forest;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.bayou;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.birch_forest_extension;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.birch_forest_hills_extension;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.bog;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.boreal_forest;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.brushland;
|
||||
|
@ -20,29 +21,35 @@ import static biomesoplenty.api.biome.BOPBiomes.canyon_ravine;
|
|||
import static biomesoplenty.api.biome.BOPBiomes.chaparral;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.cherry_blossom_grove;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.cold_desert;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.cold_taiga_extension;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.cold_taiga_hills_extension;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.coniferous_forest;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.coral_reef;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.crag;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.dead_forest;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.dead_swamp;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.desert_extension;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.desert_hills_extension;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.end_extension;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.eucalyptus_forest;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.extreme_hills_extension;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.extreme_hills_plus_extension;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.fen;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.flower_field;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.forest_extension;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.frost_forest;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.forest_hills_extension;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.frozen_desert;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.fungi_forest;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.garden;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.glacier;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.grassland;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.gravel_beach;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.grove;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.heathland;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.highland;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.ice_plains_extension;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.ice_mountains_extension;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.jungle_extension;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.jungle_hills_extension;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.kelp_forest;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.land_of_lakes;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.lavender_fields;
|
||||
|
@ -51,12 +58,16 @@ import static biomesoplenty.api.biome.BOPBiomes.lush_swamp;
|
|||
import static biomesoplenty.api.biome.BOPBiomes.maple_woods;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.marsh;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.meadow;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.mega_taiga_extension;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.mega_taiga_hills_extension;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.mesa_extension;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.mesa_plateau_extension;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.moor;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.mountain;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.mountain_foothills;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.mystic_grove;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.oasis;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.ocean_extension;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.ominous_woods;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.origin_valley;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.orchard;
|
||||
|
@ -70,13 +81,16 @@ import static biomesoplenty.api.biome.BOPBiomes.redwood_forest;
|
|||
import static biomesoplenty.api.biome.BOPBiomes.roofed_forest_extension;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.sacred_springs;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.savanna_extension;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.savanna_plateau_extension;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.seasonal_forest;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.shield;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.shrubland;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.snowy_coniferous_forest;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.snowy_forest;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.steppe;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.swampland_extension;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.taiga_extension;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.taiga_hills_extension;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.temperate_rainforest;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.tropical_island;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.tropical_rainforest;
|
||||
|
@ -122,9 +136,8 @@ import biomesoplenty.common.biome.overworld.BiomeGenDeadSwamp;
|
|||
import biomesoplenty.common.biome.overworld.BiomeGenEucalyptusForest;
|
||||
import biomesoplenty.common.biome.overworld.BiomeGenFen;
|
||||
import biomesoplenty.common.biome.overworld.BiomeGenFlowerField;
|
||||
import biomesoplenty.common.biome.overworld.BiomeGenFrostForest;
|
||||
import biomesoplenty.common.biome.overworld.BiomeGenFungiForest;
|
||||
import biomesoplenty.common.biome.overworld.BiomeGenGarden;
|
||||
import biomesoplenty.common.biome.overworld.BiomeGenGlacier;
|
||||
import biomesoplenty.common.biome.overworld.BiomeGenGrassland;
|
||||
import biomesoplenty.common.biome.overworld.BiomeGenGravelBeach;
|
||||
import biomesoplenty.common.biome.overworld.BiomeGenGrove;
|
||||
|
@ -156,6 +169,7 @@ import biomesoplenty.common.biome.overworld.BiomeGenSeasonalForest;
|
|||
import biomesoplenty.common.biome.overworld.BiomeGenShield;
|
||||
import biomesoplenty.common.biome.overworld.BiomeGenShrubland;
|
||||
import biomesoplenty.common.biome.overworld.BiomeGenSnowyConiferousForest;
|
||||
import biomesoplenty.common.biome.overworld.BiomeGenSnowyForest;
|
||||
import biomesoplenty.common.biome.overworld.BiomeGenSteppe;
|
||||
import biomesoplenty.common.biome.overworld.BiomeGenTemperateRainforest;
|
||||
import biomesoplenty.common.biome.overworld.BiomeGenTropicalIsland;
|
||||
|
@ -167,18 +181,32 @@ import biomesoplenty.common.biome.overworld.BiomeGenWetland;
|
|||
import biomesoplenty.common.biome.overworld.BiomeGenWoodland;
|
||||
import biomesoplenty.common.biome.overworld.BiomeGenXericShrubland;
|
||||
import biomesoplenty.common.biome.vanilla.BiomeExtBirchForest;
|
||||
import biomesoplenty.common.biome.vanilla.BiomeExtBirchForestHills;
|
||||
import biomesoplenty.common.biome.vanilla.BiomeExtColdTaiga;
|
||||
import biomesoplenty.common.biome.vanilla.BiomeExtColdTaigaHills;
|
||||
import biomesoplenty.common.biome.vanilla.BiomeExtDesert;
|
||||
import biomesoplenty.common.biome.vanilla.BiomeExtDesertHills;
|
||||
import biomesoplenty.common.biome.vanilla.BiomeExtEnd;
|
||||
import biomesoplenty.common.biome.vanilla.BiomeExtExtremeHills;
|
||||
import biomesoplenty.common.biome.vanilla.BiomeExtExtremeHillsPlus;
|
||||
import biomesoplenty.common.biome.vanilla.BiomeExtForest;
|
||||
import biomesoplenty.common.biome.vanilla.BiomeExtForestHills;
|
||||
import biomesoplenty.common.biome.vanilla.BiomeExtIcePlains;
|
||||
import biomesoplenty.common.biome.vanilla.BiomeExtIceMountains;
|
||||
import biomesoplenty.common.biome.vanilla.BiomeExtJungle;
|
||||
import biomesoplenty.common.biome.vanilla.BiomeExtJungleHills;
|
||||
import biomesoplenty.common.biome.vanilla.BiomeExtMegaTaiga;
|
||||
import biomesoplenty.common.biome.vanilla.BiomeExtMegaTaigaHills;
|
||||
import biomesoplenty.common.biome.vanilla.BiomeExtMesa;
|
||||
import biomesoplenty.common.biome.vanilla.BiomeExtMesaPlateau;
|
||||
import biomesoplenty.common.biome.vanilla.BiomeExtOcean;
|
||||
import biomesoplenty.common.biome.vanilla.BiomeExtPlains;
|
||||
import biomesoplenty.common.biome.vanilla.BiomeExtRoofedForest;
|
||||
import biomesoplenty.common.biome.vanilla.BiomeExtSavanna;
|
||||
import biomesoplenty.common.biome.vanilla.BiomeExtSavannaPlateau;
|
||||
import biomesoplenty.common.biome.vanilla.BiomeExtSwampland;
|
||||
import biomesoplenty.common.biome.vanilla.BiomeExtTaiga;
|
||||
import biomesoplenty.common.biome.vanilla.BiomeExtTaigaHills;
|
||||
import biomesoplenty.common.command.BOPCommand;
|
||||
import biomesoplenty.common.enums.BOPClimates;
|
||||
import biomesoplenty.common.enums.BOPClimates.WeightedBiomeEntry;
|
||||
|
@ -343,9 +371,7 @@ public class ModBiomes implements BOPBiomes.IBiomeRegistry
|
|||
eucalyptus_forest = registerBOPBiome(new BiomeGenEucalyptusForest(), "Eucalyptus Forest");
|
||||
fen = registerBOPBiome(new BiomeGenFen(), "Fen");
|
||||
flower_field = registerBOPBiome(new BiomeGenFlowerField(), "Flower Field");
|
||||
frost_forest = registerBOPBiome(new BiomeGenFrostForest(), "Frost Forest");
|
||||
frozen_desert = registerBOPBiome(new BiomeGenColdDesert(BiomeGenColdDesert.ColdDesertType.FROZEN), "Frozen Desert");
|
||||
fungi_forest = registerBOPBiome(new BiomeGenFungiForest(), "Fungi Forest");
|
||||
garden = registerBOPBiome(new BiomeGenGarden(), "Garden");
|
||||
grassland = registerBOPBiome(new BiomeGenGrassland(), "Grassland");
|
||||
grove = registerBOPBiome(new BiomeGenGrove(), "Grove");
|
||||
|
@ -375,6 +401,7 @@ public class ModBiomes implements BOPBiomes.IBiomeRegistry
|
|||
shield = registerBOPBiome(new BiomeGenShield(), "Shield");
|
||||
shrubland = registerBOPBiome(new BiomeGenShrubland(), "Shrubland");
|
||||
snowy_coniferous_forest = registerBOPBiome(new BiomeGenSnowyConiferousForest(), "Snowy Coniferous Forest");
|
||||
snowy_forest = registerBOPBiome(new BiomeGenSnowyForest(), "Snowy Forest");
|
||||
steppe = registerBOPBiome(new BiomeGenSteppe(), "Steppe");
|
||||
temperate_rainforest = registerBOPBiome(new BiomeGenTemperateRainforest(), "Temperate Rainforest");
|
||||
tropical_rainforest = registerBOPBiome(new BiomeGenTropicalRainforest(), "Tropical Rainforest");
|
||||
|
@ -388,11 +415,13 @@ public class ModBiomes implements BOPBiomes.IBiomeRegistry
|
|||
|
||||
mountain_foothills = registerBOPBiome(new BiomeGenMountain(BiomeGenMountain.MountainType.FOOTHILLS), "Mountain Foothills");
|
||||
canyon_ravine = registerBOPBiome(new BiomeGenCanyon(BiomeGenCanyon.CanyonType.RAVINE), "Canyon Ravine");
|
||||
glacier = registerBOPBiome(new BiomeGenGlacier(), "Glacier");
|
||||
oasis = registerBOPBiome(new BiomeGenOasis(), "Oasis");
|
||||
coral_reef = registerBOPBiome(new BiomeGenCoralReef(), "Coral Reef");
|
||||
kelp_forest = registerBOPBiome(new BiomeGenKelpForest(), "Kelp Forest");
|
||||
|
||||
setSubBiome(canyon, canyon_ravine);
|
||||
setSubBiome(Optional.of(BiomeGenBase.icePlains), BOPBiomes.glacier);
|
||||
setSubBiome(Optional.of(BiomeGenBase.desert), BOPBiomes.oasis);
|
||||
setSubBiome(Optional.of(BiomeGenBase.ocean), BOPBiomes.coral_reef);
|
||||
setSubBiome(Optional.of(BiomeGenBase.ocean), BOPBiomes.kelp_forest);
|
||||
|
@ -412,17 +441,31 @@ public class ModBiomes implements BOPBiomes.IBiomeRegistry
|
|||
|
||||
end_extension = registerWrappedBiome(new BiomeExtEnd(), "end");
|
||||
birch_forest_extension = registerWrappedBiome(new BiomeExtBirchForest(), "birch_forest");
|
||||
birch_forest_hills_extension = registerWrappedBiome(new BiomeExtBirchForestHills(), "birch_forest_hills");
|
||||
cold_taiga_extension = registerWrappedBiome(new BiomeExtColdTaiga(), "cold_taiga");
|
||||
cold_taiga_hills_extension = registerWrappedBiome(new BiomeExtColdTaigaHills(), "cold_taiga_hills");
|
||||
desert_extension = registerWrappedBiome(new BiomeExtDesert(), "desert");
|
||||
desert_hills_extension = registerWrappedBiome(new BiomeExtDesertHills(), "desert_hills");
|
||||
extreme_hills_extension = registerWrappedBiome(new BiomeExtExtremeHills(), "extreme_hills");
|
||||
extreme_hills_plus_extension = registerWrappedBiome(new BiomeExtExtremeHillsPlus(), "extreme_hills+");
|
||||
forest_extension = registerWrappedBiome(new BiomeExtForest(), "forest");
|
||||
forest_hills_extension = registerWrappedBiome(new BiomeExtForestHills(), "forest_hills");
|
||||
ice_plains_extension = registerWrappedBiome(new BiomeExtIcePlains(), "ice_plains");
|
||||
ice_mountains_extension = registerWrappedBiome(new BiomeExtIceMountains(), "ice_mountains");
|
||||
jungle_extension = registerWrappedBiome(new BiomeExtJungle(), "jungle");
|
||||
jungle_hills_extension = registerWrappedBiome(new BiomeExtJungleHills(), "jungle_hills");
|
||||
mega_taiga_extension = registerWrappedBiome(new BiomeExtMegaTaiga(), "mega_taiga");
|
||||
mega_taiga_hills_extension = registerWrappedBiome(new BiomeExtMegaTaigaHills(), "mega_taiga_hills");
|
||||
mesa_extension = registerWrappedBiome(new BiomeExtMesa(), "mesa");
|
||||
mesa_plateau_extension = registerWrappedBiome(new BiomeExtMesaPlateau(), "mesa_plateau");
|
||||
ocean_extension = registerWrappedBiome(new BiomeExtOcean(), "ocean");
|
||||
plains_extension = registerWrappedBiome(new BiomeExtPlains(), "plains");
|
||||
roofed_forest_extension = registerWrappedBiome(new BiomeExtRoofedForest(), "roofed_forest");
|
||||
savanna_extension = registerWrappedBiome(new BiomeExtSavanna(), "savanna");
|
||||
savanna_plateau_extension = registerWrappedBiome(new BiomeExtSavannaPlateau(), "savanna_plateau");
|
||||
swampland_extension = registerWrappedBiome(new BiomeExtSwampland(), "swampland");
|
||||
taiga_extension = registerWrappedBiome(new BiomeExtTaiga(), "taiga");
|
||||
taiga_hills_extension = registerWrappedBiome(new BiomeExtTaigaHills(), "taiga_hills");
|
||||
|
||||
}
|
||||
|
||||
|
@ -430,71 +473,71 @@ public class ModBiomes implements BOPBiomes.IBiomeRegistry
|
|||
{
|
||||
//TODO: Add biome dictionary tags for biomes that haven't been added yet
|
||||
|
||||
registerBiomeToDictionary(BOPBiomes.alps, Type.SNOWY, Type.MOUNTAIN, Type.COLD);
|
||||
registerBiomeToDictionary(BOPBiomes.bamboo_forest, Type.JUNGLE, Type.FOREST, Type.DENSE, Type.LUSH);
|
||||
registerBiomeToDictionary(BOPBiomes.bayou, Type.SWAMP, Type.WATER, Type.LUSH, Type.WET);
|
||||
registerBiomeToDictionary(BOPBiomes.bog, Type.SWAMP, Type.FOREST, Type.WET, Type.DEAD);
|
||||
registerBiomeToDictionary(BOPBiomes.boreal_forest, Type.FOREST, Type.DENSE, Type.CONIFEROUS, Type.LUSH);
|
||||
registerBiomeToDictionary(BOPBiomes.brushland, Type.PLAINS, Type.DRY, Type.HOT, Type.SAVANNA);
|
||||
registerBiomeToDictionary(BOPBiomes.canyon, Type.SANDY, Type.MOUNTAIN, Type.HILLS, Type.SPARSE, Type.DRY, Type.HOT);
|
||||
registerBiomeToDictionary(BOPBiomes.chaparral, Type.PLAINS, Type.SPARSE);
|
||||
registerBiomeToDictionary(BOPBiomes.cherry_blossom_grove, Type.MAGICAL, Type.FOREST, Type.LUSH);
|
||||
registerBiomeToDictionary(BOPBiomes.cold_desert, Type.COLD, Type.SPARSE, Type.WASTELAND);
|
||||
registerBiomeToDictionary(BOPBiomes.coniferous_forest, Type.FOREST, Type.HILLS, Type.CONIFEROUS, Type.DENSE);
|
||||
registerBiomeToDictionary(BOPBiomes.crag, Type.WASTELAND, Type.MOUNTAIN, Type.SPOOKY, Type.DEAD, Type.DRY);
|
||||
registerBiomeToDictionary(BOPBiomes.dead_forest, Type.FOREST, Type.DEAD, Type.SPARSE, Type.SPOOKY);
|
||||
registerBiomeToDictionary(BOPBiomes.dead_swamp, Type.SWAMP, Type.DEAD, Type.SPARSE, Type.SPOOKY);
|
||||
registerBiomeToDictionary(BOPBiomes.eucalyptus_forest, Type.FOREST, Type.DENSE, Type.LUSH);
|
||||
registerBiomeToDictionary(BOPBiomes.fen, Type.FOREST, Type.SWAMP, Type.DEAD, Type.WET);
|
||||
registerBiomeToDictionary(BOPBiomes.alps, Type.MOUNTAIN, Type.SNOWY, Type.COLD, Type.DRY);
|
||||
registerBiomeToDictionary(BOPBiomes.bamboo_forest, Type.JUNGLE, Type.FOREST, Type.WET, Type.DENSE);
|
||||
registerBiomeToDictionary(BOPBiomes.bayou, Type.SWAMP, Type.HOT, Type.WET, Type.DENSE);
|
||||
registerBiomeToDictionary(BOPBiomes.bog, Type.SWAMP, Type.FOREST, Type.COLD, Type.WET);
|
||||
registerBiomeToDictionary(BOPBiomes.boreal_forest, Type.FOREST, Type.CONIFEROUS, Type.HILLS, Type.COLD, Type.DENSE);
|
||||
registerBiomeToDictionary(BOPBiomes.brushland, Type.SAVANNA, Type.HOT, Type.DRY, Type.SPARSE);
|
||||
registerBiomeToDictionary(BOPBiomes.canyon, Type.MOUNTAIN, Type.DRY, Type.HILLS, Type.HOT, Type.SPARSE);
|
||||
registerBiomeToDictionary(BOPBiomes.chaparral, Type.PLAINS, Type.DRY);
|
||||
registerBiomeToDictionary(BOPBiomes.cherry_blossom_grove, Type.FOREST, Type.MAGICAL, Type.LUSH, Type.WET, Type.DENSE);
|
||||
registerBiomeToDictionary(BOPBiomes.cold_desert, Type.SNOWY, Type.DRY, Type.COLD);
|
||||
registerBiomeToDictionary(BOPBiomes.coniferous_forest, Type.CONIFEROUS, Type.FOREST, Type.COLD, Type.DENSE);
|
||||
registerBiomeToDictionary(BOPBiomes.crag, Type.MOUNTAIN, Type.WASTELAND, Type.HILLS, Type.MAGICAL, Type.COLD, Type.DRY);
|
||||
registerBiomeToDictionary(BOPBiomes.dead_forest, Type.FOREST, Type.DEAD, Type.COLD, Type.DRY, Type.SPARSE);
|
||||
registerBiomeToDictionary(BOPBiomes.dead_swamp, Type.SWAMP, Type.DEAD, Type.SPOOKY, Type.COLD, Type.WET, Type.SPARSE);
|
||||
registerBiomeToDictionary(BOPBiomes.eucalyptus_forest, Type.FOREST, Type.JUNGLE, Type.LUSH, Type.WET, Type.DENSE);
|
||||
registerBiomeToDictionary(BOPBiomes.fen, Type.SWAMP, Type.FOREST, Type.COLD, Type.DEAD, Type.WET, Type.DENSE);
|
||||
registerBiomeToDictionary(BOPBiomes.flower_field, Type.PLAINS, Type.LUSH);
|
||||
registerBiomeToDictionary(BOPBiomes.frost_forest, Type.SNOWY, Type.FOREST, Type.COLD, Type.SPARSE);
|
||||
registerBiomeToDictionary(BOPBiomes.frozen_desert, Type.COLD, Type.SPARSE);
|
||||
registerBiomeToDictionary(BOPBiomes.fungi_forest, Type.MAGICAL, Type.MUSHROOM, Type.FOREST, Type.SWAMP, Type.LUSH, Type.WET);
|
||||
registerBiomeToDictionary(BOPBiomes.garden, Type.MAGICAL, Type.PLAINS, Type.LUSH);
|
||||
registerBiomeToDictionary(BOPBiomes.grassland, Type.PLAINS, Type.SWAMP, Type.HILLS, Type.SPARSE, Type.LUSH);
|
||||
registerBiomeToDictionary(BOPBiomes.grove, Type.FOREST, Type.PLAINS, Type.DENSE, Type.LUSH);
|
||||
registerBiomeToDictionary(BOPBiomes.heathland, Type.PLAINS, Type.DRY, Type.SAVANNA);
|
||||
registerBiomeToDictionary(BOPBiomes.highland, Type.HILLS, Type.MOUNTAIN, Type.SPARSE);
|
||||
registerBiomeToDictionary(BOPBiomes.land_of_lakes, Type.FOREST, Type.DENSE, Type.WATER, Type.LUSH, Type.SWAMP);
|
||||
registerBiomeToDictionary(BOPBiomes.lavender_fields, Type.MAGICAL, Type.PLAINS, Type.LUSH, Type.SPARSE);
|
||||
registerBiomeToDictionary(BOPBiomes.lush_desert, Type.HOT, Type.DRY, Type.LUSH, Type.SANDY);
|
||||
registerBiomeToDictionary(BOPBiomes.lush_swamp, Type.SWAMP, Type.WET, Type.LUSH, Type.DENSE);
|
||||
registerBiomeToDictionary(BOPBiomes.maple_woods, Type.FOREST, Type.DENSE, Type.CONIFEROUS, Type.COLD);
|
||||
registerBiomeToDictionary(BOPBiomes.marsh, Type.SWAMP, Type.WATER, Type.WET, Type.SPARSE, Type.LUSH);
|
||||
registerBiomeToDictionary(BOPBiomes.meadow, Type.PLAINS, Type.FOREST, Type.LUSH, Type.SPARSE);
|
||||
registerBiomeToDictionary(BOPBiomes.moor, Type.HILLS, Type.SWAMP, Type.SPARSE, Type.WET);
|
||||
registerBiomeToDictionary(BOPBiomes.mountain, Type.MOUNTAIN, Type.FOREST, Type.DRY);
|
||||
registerBiomeToDictionary(BOPBiomes.mystic_grove, Type.MAGICAL, Type.FOREST, Type.LUSH);
|
||||
registerBiomeToDictionary(BOPBiomes.ominous_woods, Type.MAGICAL, Type.FOREST, Type.SPOOKY, Type.DEAD);
|
||||
registerBiomeToDictionary(BOPBiomes.frozen_desert, Type.SNOWY, Type.DRY, Type.COLD);
|
||||
registerBiomeToDictionary(BOPBiomes.garden, Type.PLAINS, Type.LUSH, Type.DENSE);
|
||||
registerBiomeToDictionary(BOPBiomes.grassland, Type.PLAINS, Type.HILLS, Type.WET);
|
||||
registerBiomeToDictionary(BOPBiomes.grove, Type.FOREST, Type.PLAINS, Type.LUSH, Type.WET, Type.SPARSE);
|
||||
registerBiomeToDictionary(BOPBiomes.heathland, Type.PLAINS, Type.FOREST, Type.DRY, Type.SPARSE);
|
||||
registerBiomeToDictionary(BOPBiomes.highland, Type.MOUNTAIN, Type.HILLS, Type.WET);
|
||||
registerBiomeToDictionary(BOPBiomes.land_of_lakes, Type.FOREST, Type.SWAMP, Type.WET, Type.DENSE);
|
||||
registerBiomeToDictionary(BOPBiomes.lavender_fields, Type.PLAINS, Type.MAGICAL, Type.LUSH);
|
||||
registerBiomeToDictionary(BOPBiomes.lush_desert, Type.SANDY, Type.HOT, Type.SAVANNA, Type.LUSH, Type.DRY, Type.SPARSE);
|
||||
registerBiomeToDictionary(BOPBiomes.lush_swamp, Type.SWAMP, Type.LUSH, Type.WET, Type.DENSE);
|
||||
registerBiomeToDictionary(BOPBiomes.maple_woods, Type.FOREST, Type.CONIFEROUS, Type.COLD, Type.DENSE);
|
||||
registerBiomeToDictionary(BOPBiomes.marsh, Type.SWAMP, Type.WET, Type.LUSH);
|
||||
registerBiomeToDictionary(BOPBiomes.meadow, Type.PLAINS, Type.FOREST, Type.LUSH, Type.COLD, Type.WET, Type.SPARSE);
|
||||
registerBiomeToDictionary(BOPBiomes.moor, Type.SWAMP, Type.HILLS, Type.WET);
|
||||
registerBiomeToDictionary(BOPBiomes.mountain, Type.MOUNTAIN, Type.FOREST, Type.DRY, Type.SPARSE);
|
||||
registerBiomeToDictionary(BOPBiomes.mystic_grove, Type.MAGICAL, Type.FOREST, Type.LUSH, Type.WET, Type.DENSE);
|
||||
registerBiomeToDictionary(BOPBiomes.ominous_woods, Type.MAGICAL, Type.FOREST, Type.SPOOKY, Type.DEAD, Type.WET, Type.DENSE);
|
||||
//registerBiomeToDictionary(BOPBiomes.origin_valley, Type.FOREST, Type.PLAINS, Type.LUSH);
|
||||
registerBiomeToDictionary(BOPBiomes.outback, Type.SANDY, Type.PLAINS, Type.SAVANNA, Type.DRY, Type.HOT);
|
||||
registerBiomeToDictionary(BOPBiomes.overgrown_cliffs, Type.MOUNTAIN, Type.LUSH, Type.DENSE, Type.JUNGLE);
|
||||
registerBiomeToDictionary(BOPBiomes.outback, Type.SANDY, Type.SAVANNA, Type.HOT, Type.DRY, Type.SPARSE);
|
||||
registerBiomeToDictionary(BOPBiomes.overgrown_cliffs, Type.MOUNTAIN, Type.HILLS, Type.LUSH, Type.JUNGLE, Type.WET, Type.DENSE);
|
||||
registerBiomeToDictionary(BOPBiomes.prairie, Type.PLAINS, Type.DRY, Type.SPARSE);
|
||||
registerBiomeToDictionary(BOPBiomes.quagmire, Type.SWAMP, Type.WATER, Type.DEAD, Type.WET, Type.WASTELAND);
|
||||
registerBiomeToDictionary(BOPBiomes.rainforest, Type.JUNGLE, Type.FOREST, Type.DENSE, Type.LUSH, Type.HILLS, Type.WET);
|
||||
registerBiomeToDictionary(BOPBiomes.redwood_forest, Type.FOREST, Type.DENSE, Type.LUSH);
|
||||
registerBiomeToDictionary(BOPBiomes.seasonal_forest, Type.FOREST, Type.DENSE, Type.LUSH);
|
||||
registerBiomeToDictionary(BOPBiomes.sacred_springs, Type.MAGICAL, Type.LUSH, Type.WATER, Type.WET, Type.DENSE);
|
||||
registerBiomeToDictionary(BOPBiomes.shield, Type.FOREST, Type.WATER, Type.HILLS);
|
||||
registerBiomeToDictionary(BOPBiomes.shrubland, Type.PLAINS, Type.SPARSE, Type.DRY);
|
||||
registerBiomeToDictionary(BOPBiomes.snowy_coniferous_forest, Type.FOREST, Type.HILLS, Type.CONIFEROUS, Type.DENSE, Type.COLD, Type.SNOWY);
|
||||
registerBiomeToDictionary(BOPBiomes.steppe, Type.PLAINS, Type.SANDY, Type.DRY, Type.HOT, Type.SAVANNA, Type.SPARSE, Type.DEAD);
|
||||
registerBiomeToDictionary(BOPBiomes.temperate_rainforest, Type.FOREST, Type.WET, Type.DENSE, Type.LUSH);
|
||||
registerBiomeToDictionary(BOPBiomes.tropical_rainforest, Type.JUNGLE, Type.LUSH, Type.HOT, Type.WET);
|
||||
registerBiomeToDictionary(BOPBiomes.tundra, Type.COLD, Type.WASTELAND, Type.DRY, Type.DEAD, Type.SPARSE);
|
||||
registerBiomeToDictionary(BOPBiomes.wasteland, Type.WASTELAND, Type.DEAD, Type.SPARSE, Type.DRY);
|
||||
registerBiomeToDictionary(BOPBiomes.wetland, Type.SWAMP, Type.FOREST, Type.WET, Type.LUSH);
|
||||
registerBiomeToDictionary(BOPBiomes.quagmire, Type.SWAMP, Type.DEAD, Type.WASTELAND, Type.WET);
|
||||
registerBiomeToDictionary(BOPBiomes.rainforest, Type.JUNGLE, Type.FOREST, Type.LUSH, Type.HILLS, Type.WET, Type.DENSE);
|
||||
registerBiomeToDictionary(BOPBiomes.redwood_forest, Type.FOREST, Type.DENSE);
|
||||
registerBiomeToDictionary(BOPBiomes.seasonal_forest, Type.FOREST, Type.COLD, Type.DENSE);
|
||||
registerBiomeToDictionary(BOPBiomes.sacred_springs, Type.MAGICAL, Type.FOREST, Type.JUNGLE, Type.LUSH, Type.WET, Type.DENSE);
|
||||
registerBiomeToDictionary(BOPBiomes.shield, Type.FOREST, Type.COLD, Type.WET, Type.DENSE);
|
||||
registerBiomeToDictionary(BOPBiomes.shrubland, Type.PLAINS, Type.DRY, Type.SPARSE);
|
||||
registerBiomeToDictionary(BOPBiomes.snowy_coniferous_forest, Type.FOREST, Type.CONIFEROUS, Type.SNOWY, Type.COLD, Type.DENSE);
|
||||
registerBiomeToDictionary(BOPBiomes.snowy_forest, Type.SNOWY, Type.FOREST, Type.COLD, Type.WET, Type.SPARSE);
|
||||
registerBiomeToDictionary(BOPBiomes.steppe, Type.PLAINS, Type.SANDY, Type.DRY);
|
||||
registerBiomeToDictionary(BOPBiomes.temperate_rainforest, Type.FOREST, Type.LUSH, Type.WET, Type.DENSE);
|
||||
registerBiomeToDictionary(BOPBiomes.tropical_rainforest, Type.JUNGLE, Type.LUSH, Type.HOT, Type.WET, Type.DENSE);
|
||||
registerBiomeToDictionary(BOPBiomes.tundra, Type.COLD, Type.WASTELAND, Type.DEAD, Type.DRY, Type.SPARSE);
|
||||
registerBiomeToDictionary(BOPBiomes.wasteland, Type.WASTELAND, Type.DEAD, Type.DRY, Type.SPARSE);
|
||||
registerBiomeToDictionary(BOPBiomes.wetland, Type.SWAMP, Type.FOREST, Type.LUSH, Type.WET, Type.DENSE);
|
||||
registerBiomeToDictionary(BOPBiomes.woodland, Type.FOREST, Type.DRY, Type.DENSE);
|
||||
registerBiomeToDictionary(BOPBiomes.xeric_shrubland, Type.PLAINS, Type.SPARSE, Type.DRY, Type.LUSH, Type.HOT, Type.SANDY);
|
||||
registerBiomeToDictionary(BOPBiomes.xeric_shrubland, Type.SANDY, Type.SAVANNA, Type.LUSH, Type.HOT, Type.DRY, Type.SPARSE);
|
||||
|
||||
// edge-biomes, sub-biomes and mutated-biomes
|
||||
registerBiomeToDictionary(BOPBiomes.mountain_foothills, Type.HILLS, Type.MOUNTAIN);
|
||||
registerBiomeToDictionary(BOPBiomes.canyon_ravine, Type.SANDY, Type.HILLS, Type.DRY, Type.HOT);
|
||||
registerBiomeToDictionary(BOPBiomes.oasis, Type.DESERT, Type.LUSH, Type.JUNGLE, Type.HOT);
|
||||
registerBiomeToDictionary(BOPBiomes.mountain_foothills, Type.HILLS, Type.MOUNTAIN, Type.FOREST, Type.DRY, Type.SPARSE);
|
||||
registerBiomeToDictionary(BOPBiomes.canyon_ravine, Type.MOUNTAIN, Type.DRY, Type.HILLS, Type.HOT, Type.SPARSE);
|
||||
registerBiomeToDictionary(BOPBiomes.glacier, Type.SNOWY, Type.WASTELAND, Type.COLD);
|
||||
registerBiomeToDictionary(BOPBiomes.oasis, Type.SANDY, Type.LUSH, Type.JUNGLE, Type.HOT, Type.WET, Type.SPARSE);
|
||||
registerBiomeToDictionary(BOPBiomes.coral_reef, Type.WATER, Type.OCEAN);
|
||||
registerBiomeToDictionary(BOPBiomes.kelp_forest, Type.WATER, Type.OCEAN);
|
||||
registerBiomeToDictionary(BOPBiomes.tropical_island, Type.WATER, Type.OCEAN, Type.JUNGLE, Type.LUSH);
|
||||
registerBiomeToDictionary(BOPBiomes.volcanic_island, Type.WATER, Type.OCEAN, Type.DEAD, Type.WASTELAND, Type.MOUNTAIN, Type.HOT);
|
||||
registerBiomeToDictionary(BOPBiomes.tropical_island, Type.WATER, Type.OCEAN, Type.JUNGLE, Type.LUSH, Type.WET, Type.DENSE);
|
||||
registerBiomeToDictionary(BOPBiomes.volcanic_island, Type.WATER, Type.OCEAN, Type.DEAD, Type.WASTELAND, Type.MOUNTAIN, Type.HOT, Type.DRY);
|
||||
registerBiomeToDictionary(BOPBiomes.gravel_beach, Type.BEACH);
|
||||
|
||||
}
|
||||
|
|
|
@ -69,42 +69,42 @@ public class ModCrafting
|
|||
/*** Dyes ***/
|
||||
|
||||
// Flower1
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 1, EnumDyeColor.SILVER.getDyeDamage()), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.CLOVER)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 1, EnumDyeColor.CYAN.getDyeDamage()), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.SWAMPFLOWER)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(BOPItems.black_dye), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.DEATHBLOOM)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 1, EnumDyeColor.CYAN.getDyeDamage()), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.GLOWFLOWER)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 1, EnumDyeColor.LIGHT_BLUE.getDyeDamage()), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.BLUE_HYDRANGEA)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 1, EnumDyeColor.ORANGE.getDyeDamage()), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.ORANGE_COSMOS)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 1, EnumDyeColor.PINK.getDyeDamage()), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.PINK_DAFFODIL)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 1, EnumDyeColor.MAGENTA.getDyeDamage()), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.WILDFLOWER)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 1, EnumDyeColor.PURPLE.getDyeDamage()), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.VIOLET)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(BOPItems.white_dye), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.WHITE_ANEMONE)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(BOPItems.black_dye), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.ENDERLOTUS)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 1, EnumDyeColor.RED.getDyeDamage()), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.BROMELIAD)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 1, EnumDyeColor.GRAY.getDyeDamage()), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.WILTED_LILY)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 1, EnumDyeColor.PINK.getDyeDamage()), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.PINK_HIBISCUS)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(BOPItems.white_dye), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.LILY_OF_THE_VALLEY)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 1, EnumDyeColor.ORANGE.getDyeDamage()), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.BURNING_BLOSSOM)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 2, EnumDyeColor.SILVER.getDyeDamage()), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.CLOVER)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 2, EnumDyeColor.CYAN.getDyeDamage()), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.SWAMPFLOWER)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(BOPItems.black_dye, 2), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.DEATHBLOOM)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 2, EnumDyeColor.CYAN.getDyeDamage()), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.GLOWFLOWER)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 2, EnumDyeColor.LIGHT_BLUE.getDyeDamage()), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.BLUE_HYDRANGEA)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 2, EnumDyeColor.ORANGE.getDyeDamage()), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.ORANGE_COSMOS)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 2, EnumDyeColor.PINK.getDyeDamage()), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.PINK_DAFFODIL)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 2, EnumDyeColor.MAGENTA.getDyeDamage()), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.WILDFLOWER)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 2, EnumDyeColor.PURPLE.getDyeDamage()), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.VIOLET)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(BOPItems.white_dye, 2), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.WHITE_ANEMONE)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(BOPItems.black_dye, 2), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.ENDERLOTUS)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 2, EnumDyeColor.RED.getDyeDamage()), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.BROMELIAD)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 2, EnumDyeColor.GRAY.getDyeDamage()), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.WILTED_LILY)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 2, EnumDyeColor.PINK.getDyeDamage()), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.PINK_HIBISCUS)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(BOPItems.white_dye, 2), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.LILY_OF_THE_VALLEY)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 2, EnumDyeColor.ORANGE.getDyeDamage()), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.BURNING_BLOSSOM)});
|
||||
|
||||
// Flower 2
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 1, EnumDyeColor.PURPLE.getDyeDamage()), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.LAVENDER)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 1, EnumDyeColor.YELLOW.getDyeDamage()), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.GOLDENROD)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(BOPItems.blue_dye), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.BLUEBELLS)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 1, EnumDyeColor.PINK.getDyeDamage()), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.MINERS_DELIGHT)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 1, EnumDyeColor.LIGHT_BLUE.getDyeDamage()), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.ICY_IRIS)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 1, EnumDyeColor.RED.getDyeDamage()), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.ROSE)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 2, EnumDyeColor.PURPLE.getDyeDamage()), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.LAVENDER)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 2, EnumDyeColor.YELLOW.getDyeDamage()), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.GOLDENROD)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(BOPItems.blue_dye, 2), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.BLUEBELLS)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 2, EnumDyeColor.PINK.getDyeDamage()), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.MINERS_DELIGHT)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 2, EnumDyeColor.LIGHT_BLUE.getDyeDamage()), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.ICY_IRIS)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 2, EnumDyeColor.RED.getDyeDamage()), new Object[] {BlockBOPFlower.paging.getVariantItem(BOPFlowers.ROSE)});
|
||||
|
||||
// Others
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 1, EnumDyeColor.GRAY.getDyeDamage()), new Object[] {new ItemStack(BOPItems.ash)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(BOPItems.green_dye), new Object[] {new ItemStack(BOPBlocks.moss)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 1, EnumDyeColor.LIME.getDyeDamage()), new Object[] {new ItemStack(BOPBlocks.mushroom, 1, BlockBOPMushroom.MushroomType.GLOWSHROOM.ordinal())});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(BOPItems.brown_dye), new Object[] {new ItemStack(BOPBlocks.mushroom, 1, BlockBOPMushroom.MushroomType.FLAT_MUSHROOM.ordinal())});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(BOPItems.blue_dye), new Object[] {new ItemStack(BOPBlocks.mushroom, 1, BlockBOPMushroom.MushroomType.BLUE_MILK_CAP.ordinal())});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(BOPItems.brown_dye), new Object[] {BlockBOPPlant.paging.getVariantItem(BOPPlants.CATTAIL)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(BOPItems.brown_dye), new Object[] {((BlockBOPDoublePlant)BOPBlocks.double_plant).getVariantItem(BlockBOPDoublePlant.DoublePlantType.TALL_CATTAIL)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 1, EnumDyeColor.LIGHT_BLUE.getDyeDamage()), new Object[] {((BlockBOPDoublePlant)BOPBlocks.double_plant).getVariantItem(BlockBOPDoublePlant.DoublePlantType.FLAX)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 1, EnumDyeColor.RED.getDyeDamage()), new Object[] {BlockBOPPlant.paging.getVariantItem(BOPPlants.RAFFLESIA)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 1, EnumDyeColor.BROWN.getDyeDamage()), new Object[] {new ItemStack(BOPItems.pinecone)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 2, EnumDyeColor.GRAY.getDyeDamage()), new Object[] {new ItemStack(BOPItems.ash)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(BOPItems.green_dye, 2), new Object[] {new ItemStack(BOPBlocks.moss)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 2, EnumDyeColor.LIME.getDyeDamage()), new Object[] {new ItemStack(BOPBlocks.mushroom, 1, BlockBOPMushroom.MushroomType.GLOWSHROOM.ordinal())});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(BOPItems.brown_dye, 2), new Object[] {new ItemStack(BOPBlocks.mushroom, 1, BlockBOPMushroom.MushroomType.FLAT_MUSHROOM.ordinal())});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(BOPItems.blue_dye, 2), new Object[] {new ItemStack(BOPBlocks.mushroom, 1, BlockBOPMushroom.MushroomType.BLUE_MILK_CAP.ordinal())});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(BOPItems.brown_dye, 2), new Object[] {BlockBOPPlant.paging.getVariantItem(BOPPlants.CATTAIL)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(BOPItems.brown_dye, 2), new Object[] {((BlockBOPDoublePlant)BOPBlocks.double_plant).getVariantItem(BlockBOPDoublePlant.DoublePlantType.TALL_CATTAIL)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 2, EnumDyeColor.LIGHT_BLUE.getDyeDamage()), new Object[] {((BlockBOPDoublePlant)BOPBlocks.double_plant).getVariantItem(BlockBOPDoublePlant.DoublePlantType.FLAX)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(Items.dye, 2, EnumDyeColor.RED.getDyeDamage()), new Object[] {BlockBOPPlant.paging.getVariantItem(BOPPlants.RAFFLESIA)});
|
||||
GameRegistry.addShapelessRecipe(new ItemStack(BOPItems.brown_dye, 2), new Object[] {new ItemStack(BOPItems.pinecone)});
|
||||
|
||||
/*** BOP brick and stone stairs and slabs ***/
|
||||
|
||||
|
|
|
@ -46,6 +46,7 @@ public class GeneratorBasicTree extends GeneratorTreeBase
|
|||
this.leaves = Blocks.leaves.getDefaultState();
|
||||
this.vine = null;
|
||||
this.hanging = null;
|
||||
this.altLeaves = null;
|
||||
this.minHeight = 4;
|
||||
this.maxHeight = 7;
|
||||
this.leafLayers = 4;
|
||||
|
@ -59,7 +60,7 @@ public class GeneratorBasicTree extends GeneratorTreeBase
|
|||
@Override
|
||||
public GeneratorBasicTree create()
|
||||
{
|
||||
return new GeneratorBasicTree(this.amountPerChunk, this.placeOn, this.replace, this.log, this.leaves, this.vine, this.hanging, this.minHeight, this.maxHeight, false, this.leafLayers, this.leavesOffset, this.maxLeavesRadius, this.leavesLayerHeight, this.placeVinesOn, this.hangingChance);
|
||||
return new GeneratorBasicTree(this.amountPerChunk, this.placeOn, this.replace, this.log, this.leaves, this.vine, this.hanging, this.altLeaves, this.minHeight, this.maxHeight, false, this.leafLayers, this.leavesOffset, this.maxLeavesRadius, this.leavesLayerHeight, this.placeVinesOn, this.hangingChance);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -94,9 +95,9 @@ public class GeneratorBasicTree extends GeneratorTreeBase
|
|||
protected IBlockPosQuery placeVinesOn;
|
||||
protected float hangingChance;
|
||||
|
||||
public GeneratorBasicTree(float amountPerChunk, IBlockPosQuery placeOn, IBlockPosQuery replace, IBlockState log, IBlockState leaves, IBlockState vine, IBlockState hanging, int minHeight, int maxHeight, boolean updateNeighbours, int leafLayers, int leavesOffset, int maxLeavesRadius, int leavesLayerHeight, IBlockPosQuery placeVinesOn, float hangingChance)
|
||||
public GeneratorBasicTree(float amountPerChunk, IBlockPosQuery placeOn, IBlockPosQuery replace, IBlockState log, IBlockState leaves, IBlockState vine, IBlockState hanging, IBlockState altLeaves, int minHeight, int maxHeight, boolean updateNeighbours, int leafLayers, int leavesOffset, int maxLeavesRadius, int leavesLayerHeight, IBlockPosQuery placeVinesOn, float hangingChance)
|
||||
{
|
||||
super(amountPerChunk, placeOn, replace, log, leaves, vine, hanging, minHeight, maxHeight);
|
||||
super(amountPerChunk, placeOn, replace, log, leaves, vine, hanging, altLeaves, minHeight, maxHeight);
|
||||
this.updateNeighbours = updateNeighbours;
|
||||
this.leavesOffset = leavesOffset;
|
||||
this.leafLayers = leafLayers;
|
||||
|
@ -192,10 +193,24 @@ public class GeneratorBasicTree extends GeneratorTreeBase
|
|||
{
|
||||
BlockPos leavesPos = new BlockPos(x, y, z);
|
||||
if (this.replace.matches(world, leavesPos))
|
||||
{
|
||||
if (this.altLeaves != null)
|
||||
{
|
||||
if (random.nextInt(4) == 0)
|
||||
{
|
||||
this.setBlockAndNotifyAdequately(world, leavesPos, this.altLeaves);
|
||||
}
|
||||
else
|
||||
{
|
||||
this.setBlockAndNotifyAdequately(world, leavesPos, this.leaves);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
this.setBlockAndNotifyAdequately(world, leavesPos, this.leaves);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -348,6 +363,7 @@ public class GeneratorBasicTree extends GeneratorTreeBase
|
|||
this.leaves = conf.getBlockState("leavesState", this.leaves);
|
||||
this.vine = conf.getBlockState("vineState", this.vine);
|
||||
this.hanging = conf.getBlockState("hangingState", this.hanging);
|
||||
this.altLeaves = conf.getBlockState("altLeavesState", this.altLeaves);
|
||||
|
||||
this.hangingChance = conf.getFloat("hangingChance", this.hangingChance);
|
||||
}
|
||||
|
|
|
@ -55,6 +55,7 @@ public class GeneratorBayouTree extends GeneratorTreeBase
|
|||
this.leaves = Blocks.leaves.getDefaultState();
|
||||
this.vine = Blocks.vine.getDefaultState();
|
||||
this.hanging = null;
|
||||
this.altLeaves = null;
|
||||
this.minHeight = 8;
|
||||
this.maxHeight = 18;
|
||||
this.minLeavesRadius = 2;
|
||||
|
@ -66,7 +67,7 @@ public class GeneratorBayouTree extends GeneratorTreeBase
|
|||
@Override
|
||||
public GeneratorBayouTree create()
|
||||
{
|
||||
return new GeneratorBayouTree(this.amountPerChunk, this.placeOn, this.replace, this.log, this.leaves, this.vine, this.hanging, this.minHeight, this.maxHeight, this.minLeavesRadius, this.leavesGradient, this.vineAttempts, this.maxVineLength, this.rootsReplace);
|
||||
return new GeneratorBayouTree(this.amountPerChunk, this.placeOn, this.replace, this.log, this.leaves, this.vine, this.hanging, this.altLeaves, this.minHeight, this.maxHeight, this.minLeavesRadius, this.leavesGradient, this.vineAttempts, this.maxVineLength, this.rootsReplace);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -77,9 +78,9 @@ public class GeneratorBayouTree extends GeneratorTreeBase
|
|||
private int maxVineLength;
|
||||
private IBlockPosQuery rootsReplace;
|
||||
|
||||
public GeneratorBayouTree(float amountPerChunk, IBlockPosQuery placeOn, IBlockPosQuery replace, IBlockState log, IBlockState leaves, IBlockState vine, IBlockState hanging, int minHeight, int maxHeight, int minLeavesRadius, int leavesGradient, int vineAttempts, int maxVineLength, IBlockPosQuery rootsReplace)
|
||||
public GeneratorBayouTree(float amountPerChunk, IBlockPosQuery placeOn, IBlockPosQuery replace, IBlockState log, IBlockState leaves, IBlockState vine, IBlockState hanging, IBlockState altLeaves, int minHeight, int maxHeight, int minLeavesRadius, int leavesGradient, int vineAttempts, int maxVineLength, IBlockPosQuery rootsReplace)
|
||||
{
|
||||
super(amountPerChunk, placeOn, replace, log, leaves, vine, hanging, minHeight, maxHeight);
|
||||
super(amountPerChunk, placeOn, replace, log, leaves, vine, hanging, altLeaves, minHeight, maxHeight);
|
||||
this.minLeavesRadius = minLeavesRadius;
|
||||
this.leavesGradient = leavesGradient;
|
||||
this.vineAttempts = vineAttempts;
|
||||
|
|
|
@ -53,6 +53,7 @@ public class GeneratorBigTree extends GeneratorTreeBase
|
|||
this.leaves = Blocks.leaves.getDefaultState();
|
||||
this.vine = null;
|
||||
this.hanging = null;
|
||||
this.altLeaves = null;
|
||||
this.minHeight = 5;
|
||||
this.maxHeight = 17;
|
||||
|
||||
|
@ -70,7 +71,7 @@ public class GeneratorBigTree extends GeneratorTreeBase
|
|||
@Override
|
||||
public GeneratorBigTree create()
|
||||
{
|
||||
return new GeneratorBigTree(this.amountPerChunk, this.placeOn, this.replace, this.log, this.leaves, this.vine, this.hanging, this.minHeight, this.maxHeight, this.trunkWidth, this.foliageHeight, this.foliageDensity, false);
|
||||
return new GeneratorBigTree(this.amountPerChunk, this.placeOn, this.replace, this.log, this.leaves, this.vine, this.hanging, this.altLeaves, this.minHeight, this.maxHeight, this.trunkWidth, this.foliageHeight, this.foliageDensity, false);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -95,9 +96,9 @@ public class GeneratorBigTree extends GeneratorTreeBase
|
|||
private List<FoliageCoords> foliageCoords;
|
||||
|
||||
|
||||
public GeneratorBigTree(float amountPerChunk, IBlockPosQuery placeOn, IBlockPosQuery replace, IBlockState log, IBlockState leaves, IBlockState vine, IBlockState hanging, int minHeight, int maxHeight, int trunkWidth, int foliageHeight, double foliageDensity, boolean updateNeighbours)
|
||||
public GeneratorBigTree(float amountPerChunk, IBlockPosQuery placeOn, IBlockPosQuery replace, IBlockState log, IBlockState leaves, IBlockState vine, IBlockState hanging, IBlockState altLeaves, int minHeight, int maxHeight, int trunkWidth, int foliageHeight, double foliageDensity, boolean updateNeighbours)
|
||||
{
|
||||
super(amountPerChunk, placeOn, replace, log, leaves, vine, hanging, minHeight, maxHeight);
|
||||
super(amountPerChunk, placeOn, replace, log, leaves, vine, hanging, altLeaves, minHeight, maxHeight);
|
||||
this.foliageHeight = foliageHeight;
|
||||
this.foliageDensity = foliageDensity;
|
||||
this.trunkWidth = trunkWidth;
|
||||
|
@ -270,10 +271,29 @@ public class GeneratorBigTree extends GeneratorTreeBase
|
|||
// crossection is called to make each level.
|
||||
|
||||
for (int y = 0; y < foliageHeight; y++)
|
||||
{
|
||||
if (this.altLeaves != null)
|
||||
{
|
||||
IBlockState clusterLeaves = this.leaves;
|
||||
int rand = new Random().nextInt(4);
|
||||
|
||||
if (rand == 0)
|
||||
{
|
||||
clusterLeaves = this.altLeaves;
|
||||
}
|
||||
else
|
||||
{
|
||||
clusterLeaves = this.leaves;
|
||||
}
|
||||
|
||||
crossection(blockPos.up(y), foliageShape(y), clusterLeaves);
|
||||
}
|
||||
else
|
||||
{
|
||||
crossection(blockPos.up(y), foliageShape(y), this.leaves);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void limb(BlockPos startPos, BlockPos endPos, IBlockState state)
|
||||
{
|
||||
|
|
|
@ -36,19 +36,20 @@ public class GeneratorBulbTree extends GeneratorTreeBase
|
|||
this.leaves = Blocks.leaves.getDefaultState();
|
||||
this.vine = null;
|
||||
this.hanging = null;
|
||||
this.altLeaves = null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GeneratorBulbTree create() {
|
||||
return new GeneratorBulbTree(this.amountPerChunk, this.placeOn, this.replace, this.log, this.leaves, this.vine, this.hanging, this.minHeight, this.maxHeight);
|
||||
return new GeneratorBulbTree(this.amountPerChunk, this.placeOn, this.replace, this.log, this.leaves, this.vine, this.hanging, this.altLeaves, this.minHeight, this.maxHeight);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
public GeneratorBulbTree(float amountPerChunk, IBlockPosQuery placeOn, IBlockPosQuery replace, IBlockState log, IBlockState leaves, IBlockState vine, IBlockState hanging, int minHeight, int maxHeight)
|
||||
public GeneratorBulbTree(float amountPerChunk, IBlockPosQuery placeOn, IBlockPosQuery replace, IBlockState log, IBlockState leaves, IBlockState vine, IBlockState hanging, IBlockState altLeaves, int minHeight, int maxHeight)
|
||||
{
|
||||
super(amountPerChunk, placeOn, replace, log, leaves, vine, hanging, minHeight, maxHeight);
|
||||
super(amountPerChunk, placeOn, replace, log, leaves, vine, hanging, altLeaves, minHeight, maxHeight);
|
||||
}
|
||||
|
||||
public boolean setCocoa(World world, BlockPos pos, EnumFacing side)
|
||||
|
|
|
@ -34,18 +34,19 @@ public class GeneratorBush extends GeneratorTreeBase
|
|||
this.leaves = Blocks.leaves.getDefaultState();
|
||||
this.vine = null;
|
||||
this.hanging = null;
|
||||
this.altLeaves = null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GeneratorBush create() {
|
||||
return new GeneratorBush(this.amountPerChunk, this.placeOn, this.replace, this.log, this.leaves, this.vine, this.hanging, this.minHeight, this.maxHeight);
|
||||
return new GeneratorBush(this.amountPerChunk, this.placeOn, this.replace, this.log, this.leaves, this.vine, this.hanging, this.altLeaves, this.minHeight, this.maxHeight);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public GeneratorBush(float amountPerChunk, IBlockPosQuery placeOn, IBlockPosQuery replace, IBlockState log, IBlockState leaves, IBlockState vine, IBlockState hanging, int minHeight, int maxHeight)
|
||||
public GeneratorBush(float amountPerChunk, IBlockPosQuery placeOn, IBlockPosQuery replace, IBlockState log, IBlockState leaves, IBlockState vine, IBlockState hanging, IBlockState altLeaves, int minHeight, int maxHeight)
|
||||
{
|
||||
super(amountPerChunk, placeOn, replace, log, leaves, vine, hanging, minHeight, maxHeight);
|
||||
super(amountPerChunk, placeOn, replace, log, leaves, vine, hanging, altLeaves, minHeight, maxHeight);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -78,10 +79,24 @@ public class GeneratorBush extends GeneratorTreeBase
|
|||
{
|
||||
//Randomly prevent the generation of leaves on the corners of each layer
|
||||
if (Math.abs(x) < leavesRadius || Math.abs(z) < leavesRadius || random.nextInt(2) != 0)
|
||||
{
|
||||
if (this.altLeaves != null)
|
||||
{
|
||||
if (random.nextInt(4) == 0)
|
||||
{
|
||||
this.setAltLeaves(world, pos.add(x, y, z));
|
||||
}
|
||||
else
|
||||
{
|
||||
this.setLeaves(world, pos.add(x, y, z));
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
this.setLeaves(world, pos.add(x, y, z));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// log in the center
|
||||
|
|
|
@ -20,8 +20,8 @@ import net.minecraft.world.World;
|
|||
public abstract class GeneratorHugeTree extends GeneratorTreeBase
|
||||
{
|
||||
|
||||
protected GeneratorHugeTree(float amountPerChunk, IBlockPosQuery placeOn, IBlockPosQuery replace, IBlockState log, IBlockState leaves, IBlockState vine, IBlockState hanging, int minHeight, int maxHeight) {
|
||||
super(amountPerChunk, placeOn, replace, log, leaves, vine, hanging, minHeight, maxHeight);
|
||||
protected GeneratorHugeTree(float amountPerChunk, IBlockPosQuery placeOn, IBlockPosQuery replace, IBlockState log, IBlockState leaves, IBlockState vine, IBlockState hanging, IBlockState altLeaves, int minHeight, int maxHeight) {
|
||||
super(amountPerChunk, placeOn, replace, log, leaves, vine, hanging, altLeaves, minHeight, maxHeight);
|
||||
}
|
||||
|
||||
protected int chooseHeight(Random rand)
|
||||
|
|
|
@ -35,6 +35,7 @@ public class GeneratorMahoganyTree extends GeneratorBasicTree
|
|||
this.leaves = BlockBOPLeaves.paging.getVariantState(BOPTrees.MAHOGANY);
|
||||
this.vine = null;
|
||||
this.hanging = null;
|
||||
this.altLeaves = null;
|
||||
this.minHeight = 10;
|
||||
this.maxHeight = 15;
|
||||
this.leafLayers = 4;
|
||||
|
@ -48,13 +49,13 @@ public class GeneratorMahoganyTree extends GeneratorBasicTree
|
|||
@Override
|
||||
public GeneratorMahoganyTree create()
|
||||
{
|
||||
return new GeneratorMahoganyTree(this.amountPerChunk, this.placeOn, this.replace, this.log, this.leaves, this.vine, this.hanging, this.minHeight, this.maxHeight, false, this.leafLayers, this.leavesOffset, this.maxLeavesRadius, this.leavesLayerHeight, this.placeVinesOn, this.hangingChance);
|
||||
return new GeneratorMahoganyTree(this.amountPerChunk, this.placeOn, this.replace, this.log, this.leaves, this.vine, this.hanging, this.altLeaves, this.minHeight, this.maxHeight, false, this.leafLayers, this.leavesOffset, this.maxLeavesRadius, this.leavesLayerHeight, this.placeVinesOn, this.hangingChance);
|
||||
}
|
||||
}
|
||||
|
||||
public GeneratorMahoganyTree(float amountPerChunk, IBlockPosQuery placeOn, IBlockPosQuery replace, IBlockState log, IBlockState leaves, IBlockState vine, IBlockState hanging, int minHeight, int maxHeight, boolean updateNeighbours, int leafLayers, int leavesOffset, int minLeavesRadius, int leavesLayerHeight, IBlockPosQuery placeVinesOn, float hangingChance)
|
||||
public GeneratorMahoganyTree(float amountPerChunk, IBlockPosQuery placeOn, IBlockPosQuery replace, IBlockState log, IBlockState leaves, IBlockState vine, IBlockState hanging, IBlockState altLeaves, int minHeight, int maxHeight, boolean updateNeighbours, int leafLayers, int leavesOffset, int minLeavesRadius, int leavesLayerHeight, IBlockPosQuery placeVinesOn, float hangingChance)
|
||||
{
|
||||
super(amountPerChunk, placeOn, replace, log, leaves, vine, hanging, minHeight, maxHeight, updateNeighbours, leafLayers, leavesOffset, minLeavesRadius, leavesLayerHeight, placeVinesOn, hangingChance);
|
||||
super(amountPerChunk, placeOn, replace, log, leaves, vine, hanging, altLeaves, minHeight, maxHeight, updateNeighbours, leafLayers, leavesOffset, minLeavesRadius, leavesLayerHeight, placeVinesOn, hangingChance);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -36,18 +36,19 @@ public class GeneratorMegaJungleTree extends GeneratorHugeTree
|
|||
this.leaves(BlockPlanks.EnumType.JUNGLE);
|
||||
this.vine = Blocks.vine.getDefaultState();
|
||||
this.hanging = null;
|
||||
this.altLeaves = null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GeneratorMegaJungleTree create() {
|
||||
return new GeneratorMegaJungleTree(this.amountPerChunk, this.placeOn, this.replace, this.log, this.leaves, this.vine, this.hanging, this.minHeight, this.maxHeight);
|
||||
return new GeneratorMegaJungleTree(this.amountPerChunk, this.placeOn, this.replace, this.log, this.leaves, this.vine, this.hanging, this.altLeaves, this.minHeight, this.maxHeight);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
protected GeneratorMegaJungleTree(float amountPerChunk, IBlockPosQuery placeOn, IBlockPosQuery replace, IBlockState log, IBlockState leaves, IBlockState vine, IBlockState hanging, int minHeight, int maxHeight)
|
||||
protected GeneratorMegaJungleTree(float amountPerChunk, IBlockPosQuery placeOn, IBlockPosQuery replace, IBlockState log, IBlockState leaves, IBlockState vine, IBlockState hanging, IBlockState altLeaves, int minHeight, int maxHeight)
|
||||
{
|
||||
super(amountPerChunk, placeOn, replace, log, leaves, vine, hanging, minHeight, maxHeight);
|
||||
super(amountPerChunk, placeOn, replace, log, leaves, vine, hanging, altLeaves, minHeight, maxHeight);
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -36,18 +36,19 @@ public class GeneratorPineTree extends GeneratorTreeBase
|
|||
this.leaves = Blocks.leaves.getDefaultState();
|
||||
this.vine = null;
|
||||
this.hanging = hanging;
|
||||
this.altLeaves = null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GeneratorPineTree create() {
|
||||
return new GeneratorPineTree(this.amountPerChunk, this.placeOn, this.replace, this.log, this.leaves, this.vine, this.hanging, this.minHeight, this.maxHeight);
|
||||
return new GeneratorPineTree(this.amountPerChunk, this.placeOn, this.replace, this.log, this.leaves, this.vine, this.hanging, this.altLeaves, this.minHeight, this.maxHeight);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public GeneratorPineTree(float amountPerChunk, IBlockPosQuery placeOn, IBlockPosQuery replace, IBlockState log, IBlockState leaves, IBlockState vine, IBlockState hanging, int minHeight, int maxHeight)
|
||||
public GeneratorPineTree(float amountPerChunk, IBlockPosQuery placeOn, IBlockPosQuery replace, IBlockState log, IBlockState leaves, IBlockState vine, IBlockState hanging, IBlockState altLeaves, int minHeight, int maxHeight)
|
||||
{
|
||||
super(amountPerChunk, placeOn, replace, log, leaves, vine, hanging, minHeight, maxHeight);
|
||||
super(amountPerChunk, placeOn, replace, log, leaves, vine, hanging, altLeaves, minHeight, maxHeight);
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -39,21 +39,22 @@ public class GeneratorProfileTree extends GeneratorTreeBase
|
|||
this.leaves = Blocks.leaves.getDefaultState();
|
||||
this.vine = null;
|
||||
this.hanging = null;
|
||||
this.altLeaves = null;
|
||||
this.profile = TreeProfile.POPLAR;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GeneratorProfileTree create() {
|
||||
return new GeneratorProfileTree(this.amountPerChunk, this.placeOn, this.replace, this.log, this.leaves, this.vine, this.hanging, this.minHeight, this.maxHeight, this.profile);
|
||||
return new GeneratorProfileTree(this.amountPerChunk, this.placeOn, this.replace, this.log, this.leaves, this.vine, this.hanging, this.altLeaves, this.minHeight, this.maxHeight, this.profile);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
protected TreeProfile profile;
|
||||
|
||||
public GeneratorProfileTree(float amountPerChunk, IBlockPosQuery placeOn, IBlockPosQuery replace, IBlockState log, IBlockState leaves, IBlockState vine, IBlockState hanging, int minHeight, int maxHeight, TreeProfile profile)
|
||||
public GeneratorProfileTree(float amountPerChunk, IBlockPosQuery placeOn, IBlockPosQuery replace, IBlockState log, IBlockState leaves, IBlockState vine, IBlockState hanging, IBlockState altLeaves, int minHeight, int maxHeight, TreeProfile profile)
|
||||
{
|
||||
super(amountPerChunk, placeOn, replace, log, leaves, vine, hanging, minHeight, maxHeight);
|
||||
super(amountPerChunk, placeOn, replace, log, leaves, vine, hanging, altLeaves, minHeight, maxHeight);
|
||||
this.profile = profile;
|
||||
}
|
||||
|
||||
|
|
|
@ -41,19 +41,20 @@ public class GeneratorRedwoodTree extends GeneratorTreeBase
|
|||
this.leaves = BlockBOPLeaves.paging.getVariantState(BOPTrees.REDWOOD);
|
||||
this.vine = null;
|
||||
this.hanging = null;
|
||||
this.altLeaves = null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GeneratorRedwoodTree create()
|
||||
{
|
||||
return new GeneratorRedwoodTree(this.amountPerChunk, this.placeOn, this.replace, this.log, this.leaves, this.vine, this.hanging, this.minHeight, this.maxHeight);
|
||||
return new GeneratorRedwoodTree(this.amountPerChunk, this.placeOn, this.replace, this.log, this.leaves, this.vine, this.hanging, this.altLeaves, this.minHeight, this.maxHeight);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
protected GeneratorRedwoodTree(float amountPerChunk, IBlockPosQuery placeOn, IBlockPosQuery replace, IBlockState log, IBlockState leaves, IBlockState vine, IBlockState hanging, int minHeight, int maxHeight)
|
||||
protected GeneratorRedwoodTree(float amountPerChunk, IBlockPosQuery placeOn, IBlockPosQuery replace, IBlockState log, IBlockState leaves, IBlockState vine, IBlockState hanging, IBlockState altLeaves, int minHeight, int maxHeight)
|
||||
{
|
||||
super(amountPerChunk, placeOn, replace, log, leaves, vine, hanging, minHeight, maxHeight);
|
||||
super(amountPerChunk, placeOn, replace, log, leaves, vine, hanging, altLeaves, minHeight, maxHeight);
|
||||
}
|
||||
|
||||
public boolean canPlaceHere(World world, BlockPos pos, int height, int radius)
|
||||
|
|
|
@ -43,21 +43,22 @@ public class GeneratorTaigaTree extends GeneratorTreeBase
|
|||
this.leaves = Blocks.leaves.getDefaultState().withProperty(BlockOldLeaf.VARIANT, BlockPlanks.EnumType.SPRUCE);
|
||||
this.vine = Blocks.vine.getDefaultState();
|
||||
this.hanging = null;
|
||||
this.altLeaves = null;
|
||||
this.trunkWidth = 1;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GeneratorTaigaTree create() {
|
||||
return new GeneratorTaigaTree(this.amountPerChunk, this.placeOn, this.replace, this.log, this.leaves, this.vine, this.hanging, this.minHeight, this.maxHeight, this.trunkWidth);
|
||||
return new GeneratorTaigaTree(this.amountPerChunk, this.placeOn, this.replace, this.log, this.leaves, this.vine, this.hanging, this.altLeaves, this.minHeight, this.maxHeight, this.trunkWidth);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private int trunkWidth;
|
||||
|
||||
public GeneratorTaigaTree(float amountPerChunk, IBlockPosQuery placeOn, IBlockPosQuery replace, IBlockState log, IBlockState leaves, IBlockState vine, IBlockState hanging, int minHeight, int maxHeight, int trunkWidth)
|
||||
public GeneratorTaigaTree(float amountPerChunk, IBlockPosQuery placeOn, IBlockPosQuery replace, IBlockState log, IBlockState leaves, IBlockState vine, IBlockState hanging, IBlockState altLeaves, int minHeight, int maxHeight, int trunkWidth)
|
||||
{
|
||||
super(amountPerChunk, placeOn, replace, log, leaves, vine, hanging, minHeight, maxHeight);
|
||||
super(amountPerChunk, placeOn, replace, log, leaves, vine, hanging, altLeaves, minHeight, maxHeight);
|
||||
this.trunkWidth = trunkWidth;
|
||||
}
|
||||
|
||||
|
|
|
@ -47,11 +47,12 @@ public abstract class GeneratorTreeBase extends BOPGeneratorBase
|
|||
protected IBlockState leaves;
|
||||
protected IBlockState vine;
|
||||
protected IBlockState hanging;
|
||||
protected IBlockState altLeaves;
|
||||
protected int minHeight;
|
||||
protected int maxHeight;
|
||||
protected IProperty logAxisProperty;
|
||||
|
||||
protected GeneratorTreeBase(float amountPerChunk, IBlockPosQuery placeOn, IBlockPosQuery replace, IBlockState log, IBlockState leaves, IBlockState vine, IBlockState hanging, int minHeight, int maxHeight) {
|
||||
protected GeneratorTreeBase(float amountPerChunk, IBlockPosQuery placeOn, IBlockPosQuery replace, IBlockState log, IBlockState leaves, IBlockState vine, IBlockState hanging, IBlockState altLeaves, int minHeight, int maxHeight) {
|
||||
super(amountPerChunk);
|
||||
this.placeOn = placeOn;
|
||||
this.replace = replace;
|
||||
|
@ -59,6 +60,7 @@ public abstract class GeneratorTreeBase extends BOPGeneratorBase
|
|||
this.leaves = leaves;
|
||||
this.vine = vine;
|
||||
this.hanging = hanging;
|
||||
this.altLeaves = altLeaves;
|
||||
this.minHeight = minHeight;
|
||||
this.maxHeight = maxHeight;
|
||||
this.logAxisProperty = GeneratorUtils.getAxisProperty(log);
|
||||
|
@ -72,6 +74,7 @@ public abstract class GeneratorTreeBase extends BOPGeneratorBase
|
|||
protected IBlockState leaves;
|
||||
protected IBlockState vine;
|
||||
protected IBlockState hanging;
|
||||
protected IBlockState altLeaves;
|
||||
protected int minHeight;
|
||||
protected int maxHeight;
|
||||
|
||||
|
@ -122,6 +125,19 @@ public abstract class GeneratorTreeBase extends BOPGeneratorBase
|
|||
return this.self();
|
||||
}
|
||||
|
||||
public T altLeaves(IBlockState a) {this.altLeaves = a; return this.self();}
|
||||
public T altLeaves(BOPTrees a) {this.altLeaves = BlockBOPLeaves.paging.getVariantState(a).withProperty(BlockLeaves.CHECK_DECAY, false); return this.self();}
|
||||
public T altLeaves(BlockPlanks.EnumType a)
|
||||
{
|
||||
if (a.getMetadata() < 4)
|
||||
{
|
||||
this.altLeaves = Blocks.leaves.getDefaultState().withProperty(BlockLeaves.CHECK_DECAY, false).withProperty(BlockOldLeaf.VARIANT, a);
|
||||
} else {
|
||||
this.altLeaves = Blocks.leaves2.getDefaultState().withProperty(BlockLeaves.CHECK_DECAY, false).withProperty(BlockNewLeaf.VARIANT, a);
|
||||
}
|
||||
return this.self();
|
||||
}
|
||||
|
||||
public T minHeight(int a) {this.minHeight = a; return this.self();}
|
||||
public T maxHeight(int a) {this.maxHeight = a; return this.self();}
|
||||
|
||||
|
@ -185,4 +201,14 @@ public abstract class GeneratorTreeBase extends BOPGeneratorBase
|
|||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean setAltLeaves(World world, BlockPos pos)
|
||||
{
|
||||
if (this.replace.matches(world, pos))
|
||||
{
|
||||
world.setBlockState(pos, this.altLeaves, 2);
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
|
@ -40,22 +40,23 @@ public class GeneratorTwigletTree extends GeneratorTreeBase
|
|||
this.leaves = Blocks.leaves.getDefaultState();
|
||||
this.vine = null;
|
||||
this.hanging = null;
|
||||
this.altLeaves = null;
|
||||
this.leafChanceEven = 0.2F;
|
||||
this.leafChanceOdd = 0.9F;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GeneratorTwigletTree create() {
|
||||
return new GeneratorTwigletTree(this.amountPerChunk, this.placeOn, this.replace, this.log, this.leaves, this.vine, this.hanging, this.minHeight, this.maxHeight, this.leafChanceEven, this.leafChanceOdd);
|
||||
return new GeneratorTwigletTree(this.amountPerChunk, this.placeOn, this.replace, this.log, this.leaves, this.vine, this.hanging, this.altLeaves, this.minHeight, this.maxHeight, this.leafChanceEven, this.leafChanceOdd);
|
||||
}
|
||||
}
|
||||
|
||||
private float leafChanceEven;
|
||||
private float leafChanceOdd;
|
||||
|
||||
public GeneratorTwigletTree(float amountPerChunk, IBlockPosQuery placeOn, IBlockPosQuery replace, IBlockState log, IBlockState leaves, IBlockState vine, IBlockState hanging, int minHeight, int maxHeight, float leafChanceEven, float leafChanceOdd)
|
||||
public GeneratorTwigletTree(float amountPerChunk, IBlockPosQuery placeOn, IBlockPosQuery replace, IBlockState log, IBlockState leaves, IBlockState vine, IBlockState hanging, IBlockState altLeaves, int minHeight, int maxHeight, float leafChanceEven, float leafChanceOdd)
|
||||
{
|
||||
super(amountPerChunk, placeOn, replace, log, leaves, vine, hanging, minHeight, maxHeight);
|
||||
super(amountPerChunk, placeOn, replace, log, leaves, vine, hanging, altLeaves, minHeight, maxHeight);
|
||||
this.leafChanceEven = leafChanceEven;
|
||||
this.leafChanceOdd = leafChanceOdd;
|
||||
}
|
||||
|
|
|
@ -47,7 +47,7 @@ public class GenLayerRiverMixBOP extends BOPGenLayer
|
|||
{
|
||||
if (riverValues[i] == BiomeGenBase.river.biomeID)
|
||||
{
|
||||
if (biomeIds[i] == BiomeGenBase.icePlains.biomeID || (BOPBiomes.frozen_desert.isPresent() && biomeIds[i] == BOPBiomes.frozen_desert.get().biomeID) || (BOPBiomes.frost_forest.isPresent() && biomeIds[i] == BOPBiomes.frost_forest.get().biomeID) || (BOPBiomes.alps.isPresent() && biomeIds[i] == BOPBiomes.alps.get().biomeID))
|
||||
if (biomeIds[i] == BiomeGenBase.icePlains.biomeID || (BOPBiomes.frozen_desert.isPresent() && biomeIds[i] == BOPBiomes.frozen_desert.get().biomeID) || (BOPBiomes.snowy_forest.isPresent() && biomeIds[i] == BOPBiomes.snowy_forest.get().biomeID) || (BOPBiomes.alps.isPresent() && biomeIds[i] == BOPBiomes.alps.get().biomeID))
|
||||
{
|
||||
out[i] = BiomeGenBase.frozenRiver.biomeID;
|
||||
}
|
||||
|
|
|
@ -23,6 +23,12 @@
|
|||
{ "model": "biomesoplenty:duckweed", "y": 90 },
|
||||
{ "model": "biomesoplenty:duckweed", "y": 180 },
|
||||
{ "model": "biomesoplenty:duckweed", "y": 270 }
|
||||
],
|
||||
"variant=flower": [
|
||||
{ "model": "biomesoplenty:lily_flower" },
|
||||
{ "model": "biomesoplenty:lily_flower", "y": 90 },
|
||||
{ "model": "biomesoplenty:lily_flower", "y": 180 },
|
||||
{ "model": "biomesoplenty:lily_flower", "y": 270 }
|
||||
]
|
||||
}
|
||||
}
|
|
@ -307,7 +307,7 @@ tile.leaves_2.pink_cherry_leaves.name=Pink Cherry Leaves
|
|||
tile.leaves_2.white_cherry_leaves.name=White Cherry Leaves
|
||||
tile.leaves_2.maple_leaves.name=Maple Leaves
|
||||
tile.leaves_3.hellbark_leaves.name=Hellbark Leaves
|
||||
tile.leaves_3.flowering_leaves.name=Flowering Leaves
|
||||
tile.leaves_3.flowering_leaves.name=Flowering Oak Leaves
|
||||
tile.leaves_3.jacaranda_leaves.name=Jacaranda Leaves
|
||||
tile.leaves_3.sacred_oak_leaves.name=Sacred Oak Leaves
|
||||
tile.leaves_4.mangrove_leaves.name=Mangrove Leaves
|
||||
|
@ -481,6 +481,7 @@ tile.waterlily.duckweed.name=Duckweed
|
|||
tile.waterlily.lily_medium.name=Medium Lily Pad
|
||||
tile.waterlily.lily_small.name=Small Lily Pad
|
||||
tile.waterlily.lily_tiny.name=Tiny Lily Pad
|
||||
tile.waterlily.lily_flower.name=Flowered Lily Pad
|
||||
tile.willow_fence.name=Willow Fence
|
||||
tile.willow_fence_gate.name=Willow Fence Gate
|
||||
tile.willow_wood_slab.name=Willow Wood Slab
|
||||
|
|
|
@ -297,7 +297,7 @@ tile.leaves_0.orange_autumn_leaves.name=橙秋葉
|
|||
tile.leaves_0.bamboo_leaves.name=竹葉
|
||||
tile.leaves_0.magic_leaves.name=魔葉
|
||||
tile.leaves_1.umbran_leaves.name=暗影葉
|
||||
tile.leaves_1.dead_leaves.name=死亡葉
|
||||
tile.leaves_1.dead_leaves.name=枯葉
|
||||
tile.leaves_1.fir_leaves.name=冷杉葉
|
||||
tile.leaves_1.ethereal_leaves.name=空靈葉
|
||||
tile.leaves_2.origin_leaves.name=原葉
|
||||
|
@ -335,7 +335,7 @@ tile.log_3.mahogany_log.name=桃花心木原木
|
|||
tile.log_3.ebony_log.name=檀木原木
|
||||
tile.log_3.eucalyptus_log.name=尤加利原木
|
||||
tile.log_4.giant_flower_stem.name=巨大花柄
|
||||
tile.log_4.dead_log.name=死亡原木
|
||||
tile.log_4.dead_log.name=枯原木
|
||||
tile.magic_fence.name=魔木柵欄
|
||||
tile.magic_fence_gate.name=魔木柵欄門
|
||||
tile.magic_wood_slab.name=魔木半磚
|
||||
|
@ -397,8 +397,8 @@ tile.plant_0.dampgrass.name=濕草
|
|||
tile.plant_0.koru.name=蕨芽
|
||||
tile.plant_0.cloverpatch.name=苜蓿草
|
||||
tile.plant_0.leafpile.name=落葉堆
|
||||
tile.plant_0.deadleafpile.name=死葉堆
|
||||
tile.plant_0.deadgrass.name=死草
|
||||
tile.plant_0.deadleafpile.name=枯葉堆
|
||||
tile.plant_0.deadgrass.name=枯草
|
||||
tile.plant_0.desertgrass.name=沙漠草
|
||||
tile.plant_0.desertsprouts.name=沙漠芽
|
||||
tile.plant_1.dunegrass.name=沙丘草
|
||||
|
@ -427,7 +427,7 @@ tile.sapling_0.orange_autumn_sapling.name=橙秋苗
|
|||
tile.sapling_0.bamboo_sapling.name=竹筍
|
||||
tile.sapling_0.magic_sapling.name=魔樹苗
|
||||
tile.sapling_0.umbran_sapling.name=暗影樹苗
|
||||
tile.sapling_0.dead_sapling.name=死亡樹苗
|
||||
tile.sapling_0.dead_sapling.name=枯樹苗
|
||||
tile.sapling_0.fir_sapling.name=冷杉樹苗
|
||||
tile.sapling_0.ethereal_sapling.name=空靈樹苗
|
||||
tile.sapling_1.origin_sapling.name=原樹苗
|
||||
|
@ -479,6 +479,7 @@ tile.waterlily.duckweed.name=浮萍
|
|||
tile.waterlily.lily_medium.name=中荷葉
|
||||
tile.waterlily.lily_small.name=小荷葉
|
||||
tile.waterlily.lily_tiny.name=迷你荷葉
|
||||
tile.waterlily.lily_flower.name=荷花
|
||||
tile.willow_fence.name=柳木柵欄
|
||||
tile.willow_fence_gate.name=柳木柵欄門
|
||||
tile.willow_wood_slab.name=柳木半磚
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"parent": "block/crop",
|
||||
"parent": "block/cross",
|
||||
"textures": {
|
||||
"crop": "biomesoplenty:blocks/cattail"
|
||||
"cross": "biomesoplenty:blocks/cattail"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,35 @@
|
|||
{
|
||||
"ambientocclusion": false,
|
||||
"textures": {
|
||||
"particle": "biomesoplenty:items/lily_flower",
|
||||
"lilypad": "minecraft:blocks/waterlily",
|
||||
"flower": "biomesoplenty:blocks/waterlily"
|
||||
},
|
||||
"elements": [
|
||||
{ "from": [ 0, 0.25, 0 ],
|
||||
"to": [ 16, 0.25, 16 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 16, 16, 0, 0 ], "texture": "#lilypad", "tintindex": 0 },
|
||||
"up": { "uv": [ 16, 0, 0, 16 ], "texture": "#lilypad", "tintindex": 0 }
|
||||
}
|
||||
},
|
||||
{ "from": [ 0.8, 0.25, 8 ],
|
||||
"to": [ 15.2, 16.25, 8 ],
|
||||
"rotation": { "origin": [ 8, 8, 8 ], "axis": "y", "angle": 45, "rescale": true },
|
||||
"shade": false,
|
||||
"faces": {
|
||||
"north": { "uv": [ 16, 0, 0, 16 ], "texture": "#flower", "tintindex": 1 },
|
||||
"south": { "uv": [ 0, 0, 16, 16 ], "texture": "#flower", "tintindex": 1 }
|
||||
}
|
||||
},
|
||||
{ "from": [ 8, 0.25, 0.8 ],
|
||||
"to": [ 8, 16.25, 15.2 ],
|
||||
"rotation": { "origin": [ 8, 8, 8 ], "axis": "y", "angle": 45, "rescale": true },
|
||||
"shade": false,
|
||||
"faces": {
|
||||
"west": { "uv": [ 0, 0, 16, 16 ], "texture": "#flower", "tintindex": 1 },
|
||||
"east": { "uv": [ 16, 0, 0, 16 ], "texture": "#flower", "tintindex": 1 }
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
|
@ -1,8 +1,8 @@
|
|||
{
|
||||
"parent": "block/cube_bottom_top",
|
||||
"textures": {
|
||||
"particle": "biomesoplenty:blocks/dirt_origin",
|
||||
"bottom": "biomesoplenty:blocks/dirt_origin",
|
||||
"particle": "blocks/dirt",
|
||||
"bottom": "blocks/dirt",
|
||||
"top": "biomesoplenty:blocks/grass_origin_top",
|
||||
"side": "biomesoplenty:blocks/grass_origin_side"
|
||||
}
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
{
|
||||
"parent": "block/cube_bottom_top",
|
||||
"textures": {
|
||||
"particle": "biomesoplenty:blocks/dirt_origin",
|
||||
"bottom": "biomesoplenty:blocks/dirt_origin",
|
||||
"particle": "blocks/dirt",
|
||||
"bottom": "blocks/dirt",
|
||||
"top": "biomesoplenty:blocks/grass_origin_top",
|
||||
"side": "biomesoplenty:blocks/grass_origin_side_snowed"
|
||||
}
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
{
|
||||
"parent": "block/cube_bottom_top",
|
||||
"textures": {
|
||||
"particle": "biomesoplenty:blocks/overgrown_netherrack_bottom",
|
||||
"bottom": "biomesoplenty:blocks/overgrown_netherrack_bottom",
|
||||
"particle": "blocks/netherrack",
|
||||
"bottom": "blocks/netherrack",
|
||||
"top": "biomesoplenty:blocks/overgrown_netherrack_top",
|
||||
"side": "biomesoplenty:blocks/overgrown_netherrack_side"
|
||||
}
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
{
|
||||
"parent": "block/cube_bottom_top",
|
||||
"textures": {
|
||||
"particle": "biomesoplenty:blocks/spectral_moss_bottom",
|
||||
"bottom": "biomesoplenty:blocks/spectral_moss_bottom",
|
||||
"particle": "blocks/end_stone",
|
||||
"bottom": "blocks/end_stone",
|
||||
"top": "biomesoplenty:blocks/spectral_moss_top",
|
||||
"side": "biomesoplenty:blocks/spectral_moss_side"
|
||||
}
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"parent": "block/crop",
|
||||
"parent": "block/cross",
|
||||
"textures": {
|
||||
"crop": "biomesoplenty:blocks/tall_cattail_lower"
|
||||
"cross": "biomesoplenty:blocks/tall_cattail_lower"
|
||||
}
|
||||
}
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"parent": "block/crop",
|
||||
"parent": "block/cross",
|
||||
"textures": {
|
||||
"crop": "biomesoplenty:blocks/tall_cattail_upper"
|
||||
"cross": "biomesoplenty:blocks/tall_cattail_upper"
|
||||
}
|
||||
}
|
|
@ -0,0 +1,18 @@
|
|||
{
|
||||
"parent": "builtin/generated",
|
||||
"textures": {
|
||||
"layer0": "biomesoplenty:items/lily_flower"
|
||||
},
|
||||
"display": {
|
||||
"thirdperson": {
|
||||
"rotation": [ -90, 0, 0 ],
|
||||
"translation": [ 0, 1, -3 ],
|
||||
"scale": [ 0.55, 0.55, 0.55 ]
|
||||
},
|
||||
"firstperson": {
|
||||
"rotation": [ 0, -135, 25 ],
|
||||
"translation": [ 0, 4, 2 ],
|
||||
"scale": [ 1.7, 1.7, 1.7 ]
|
||||
}
|
||||
}
|
||||
}
|
Before Width: | Height: | Size: 593 B After Width: | Height: | Size: 556 B |
Before Width: | Height: | Size: 354 B |
Before Width: | Height: | Size: 595 B After Width: | Height: | Size: 672 B |
Before Width: | Height: | Size: 759 B |
Before Width: | Height: | Size: 544 B After Width: | Height: | Size: 592 B |
Before Width: | Height: | Size: 623 B After Width: | Height: | Size: 586 B |
Before Width: | Height: | Size: 452 B After Width: | Height: | Size: 554 B |
Before Width: | Height: | Size: 404 B |
Before Width: | Height: | Size: 528 B After Width: | Height: | Size: 502 B |
Before Width: | Height: | Size: 649 B After Width: | Height: | Size: 567 B |
Before Width: | Height: | Size: 665 B After Width: | Height: | Size: 667 B |
Before Width: | Height: | Size: 558 B After Width: | Height: | Size: 518 B |
Before Width: | Height: | Size: 387 B After Width: | Height: | Size: 301 B |
After Width: | Height: | Size: 612 B |
After Width: | Height: | Size: 346 B |
Before Width: | Height: | Size: 466 B After Width: | Height: | Size: 439 B |