From 1e630a53ad62692d6f3075893d115d77921aebd4 Mon Sep 17 00:00:00 2001 From: Matt Caughey Date: Sun, 18 May 2014 14:09:15 -0400 Subject: [PATCH] Made the Spruce Woods a sub-biome of the vanilla Forest, and added the bluebells to the Coniferous Forest --- .../overworld/BiomeGenConiferousForest.java | 4 + .../{ => sub}/BiomeGenSpruceWoods.java | 29 ++++--- .../biomesoplenty/common/core/BOPBiomes.java | 77 ++++++++++++++++++- 3 files changed, 92 insertions(+), 18 deletions(-) rename src/main/java/biomesoplenty/common/biomes/overworld/{ => sub}/BiomeGenSpruceWoods.java (83%) diff --git a/src/main/java/biomesoplenty/common/biomes/overworld/BiomeGenConiferousForest.java b/src/main/java/biomesoplenty/common/biomes/overworld/BiomeGenConiferousForest.java index f6839ba19..0cf2ab17c 100644 --- a/src/main/java/biomesoplenty/common/biomes/overworld/BiomeGenConiferousForest.java +++ b/src/main/java/biomesoplenty/common/biomes/overworld/BiomeGenConiferousForest.java @@ -3,6 +3,7 @@ package biomesoplenty.common.biomes.overworld; import biomesoplenty.api.BOPBlockHelper; import biomesoplenty.common.biomes.BOPBiome; import biomesoplenty.common.world.features.WorldGenBOPDoubleFlora; +import biomesoplenty.common.world.features.WorldGenBOPFlora; import biomesoplenty.common.world.features.WorldGenBOPTallGrass; import biomesoplenty.common.world.features.trees.WorldGenBOPTaiga2; import biomesoplenty.common.world.features.trees.WorldGenBOPTaiga3; @@ -50,6 +51,9 @@ public class BiomeGenConiferousForest extends BOPBiome this.bopWorldFeatures.setFeature("algaePerChunk", 2); this.bopWorldFeatures.setFeature("bopGrassPerChunk", 10); + this.bopWorldFeatures.setFeature("bopFlowersPerChunk", 25); + + this.bopWorldFeatures.weightedFlowerGen.put(new WorldGenBOPFlora(BOPBlockHelper.get("flowers2"), 5), 15); this.bopWorldFeatures.weightedGrassGen.put(new WorldGenBOPTallGrass(Blocks.tallgrass, 1), 0.5D); this.bopWorldFeatures.weightedGrassGen.put(new WorldGenBOPTallGrass(BOPBlockHelper.get("foliage"), 2), 1D); diff --git a/src/main/java/biomesoplenty/common/biomes/overworld/BiomeGenSpruceWoods.java b/src/main/java/biomesoplenty/common/biomes/overworld/sub/BiomeGenSpruceWoods.java similarity index 83% rename from src/main/java/biomesoplenty/common/biomes/overworld/BiomeGenSpruceWoods.java rename to src/main/java/biomesoplenty/common/biomes/overworld/sub/BiomeGenSpruceWoods.java index 15d2e3860..b5d26d3d5 100644 --- a/src/main/java/biomesoplenty/common/biomes/overworld/BiomeGenSpruceWoods.java +++ b/src/main/java/biomesoplenty/common/biomes/overworld/sub/BiomeGenSpruceWoods.java @@ -1,35 +1,36 @@ -package biomesoplenty.common.biomes.overworld; +package biomesoplenty.common.biomes.overworld.sub; + +import java.util.Random; -import biomesoplenty.api.BOPBlockHelper; -import biomesoplenty.common.biomes.BOPBiome; -import biomesoplenty.common.world.features.WorldGenBOPFlora; -import biomesoplenty.common.world.features.WorldGenBOPTallGrass; -import biomesoplenty.common.world.features.trees.WorldGenBOPTaiga2; import net.minecraft.block.Block; import net.minecraft.entity.passive.EntityWolf; import net.minecraft.init.Blocks; import net.minecraft.world.World; import net.minecraft.world.gen.feature.WorldGenAbstractTree; import net.minecraft.world.gen.feature.WorldGenTaiga2; +import biomesoplenty.api.BOPBlockHelper; +import biomesoplenty.common.biomes.BOPSubBiome; +import biomesoplenty.common.world.features.WorldGenBOPTallGrass; +import biomesoplenty.common.world.features.trees.WorldGenBOPTaiga2; -import java.util.Random; - -public class BiomeGenSpruceWoods extends BOPBiome +public class BiomeGenSpruceWoods extends BOPSubBiome { public BiomeGenSpruceWoods(int id) { super(id); + + this.zoom = 0.25D; + this.threshold = 0.25D; this.setColor(6396257); - this.setTemperatureRainfall(0.6F, 0.7F); + this.setTemperatureRainfall(0.7F, 0.8F); this.spawnableCreatureList.add(new SpawnListEntry(EntityWolf.class, 8, 4, 4)); - this.theBiomeDecorator.treesPerChunk = 10; + this.theBiomeDecorator.treesPerChunk = 20; this.theBiomeDecorator.grassPerChunk = 6; this.theBiomeDecorator.mushroomsPerChunk = 4; - this.bopWorldFeatures.setFeature("bopFlowersPerChunk", 100); this.bopWorldFeatures.setFeature("poisonIvyPerChunk", 1); this.bopWorldFeatures.setFeature("sproutsPerChunk", 3); this.bopWorldFeatures.setFeature("berryBushesPerChunk", 3); @@ -42,8 +43,6 @@ public class BiomeGenSpruceWoods extends BOPBiome this.bopWorldFeatures.setFeature("bopGrassPerChunk", 100); - this.bopWorldFeatures.weightedFlowerGen.put(new WorldGenBOPFlora(BOPBlockHelper.get("flowers2"), 5), 15); - this.bopWorldFeatures.weightedGrassGen.put(new WorldGenBOPTallGrass(BOPBlockHelper.get("foliage"), 10), 0.5D); this.bopWorldFeatures.weightedGrassGen.put(new WorldGenBOPTallGrass(BOPBlockHelper.get("foliage"), 11), 0.5D); this.bopWorldFeatures.weightedGrassGen.put(new WorldGenBOPTallGrass(Blocks.tallgrass, 1), 1D); @@ -54,7 +53,7 @@ public class BiomeGenSpruceWoods extends BOPBiome public WorldGenAbstractTree func_150567_a(Random random) { return random.nextInt(3) == 0 ? new WorldGenBOPTaiga2(Blocks.log, Blocks.leaves, 1, 1, false, 9, 9, 6) : - new WorldGenTaiga2(false); + (random.nextInt(2) == 0 ? worldGeneratorTrees : new WorldGenTaiga2(false)); } @Override diff --git a/src/main/java/biomesoplenty/common/core/BOPBiomes.java b/src/main/java/biomesoplenty/common/core/BOPBiomes.java index 2fb00f52c..3b95ff3a2 100644 --- a/src/main/java/biomesoplenty/common/core/BOPBiomes.java +++ b/src/main/java/biomesoplenty/common/core/BOPBiomes.java @@ -1,6 +1,77 @@ package biomesoplenty.common.core; -import static biomesoplenty.api.content.BOPCBiomes.*; +import static biomesoplenty.api.content.BOPCBiomes.alps; +import static biomesoplenty.api.content.BOPCBiomes.alpsForest; +import static biomesoplenty.api.content.BOPCBiomes.arctic; +import static biomesoplenty.api.content.BOPCBiomes.bambooForest; +import static biomesoplenty.api.content.BOPCBiomes.bayou; +import static biomesoplenty.api.content.BOPCBiomes.bog; +import static biomesoplenty.api.content.BOPCBiomes.boneyard; +import static biomesoplenty.api.content.BOPCBiomes.borealForest; +import static biomesoplenty.api.content.BOPCBiomes.brushland; +import static biomesoplenty.api.content.BOPCBiomes.canyon; +import static biomesoplenty.api.content.BOPCBiomes.canyonRavine; +import static biomesoplenty.api.content.BOPCBiomes.chaparral; +import static biomesoplenty.api.content.BOPCBiomes.cherryBlossomGrove; +import static biomesoplenty.api.content.BOPCBiomes.coniferousForest; +import static biomesoplenty.api.content.BOPCBiomes.corruptedSands; +import static biomesoplenty.api.content.BOPCBiomes.crag; +import static biomesoplenty.api.content.BOPCBiomes.deadForest; +import static biomesoplenty.api.content.BOPCBiomes.deadSwamp; +import static biomesoplenty.api.content.BOPCBiomes.deciduousForest; +import static biomesoplenty.api.content.BOPCBiomes.dryRiver; +import static biomesoplenty.api.content.BOPCBiomes.dunes; +import static biomesoplenty.api.content.BOPCBiomes.fen; +import static biomesoplenty.api.content.BOPCBiomes.flowerField; +import static biomesoplenty.api.content.BOPCBiomes.frostForest; +import static biomesoplenty.api.content.BOPCBiomes.fungiForest; +import static biomesoplenty.api.content.BOPCBiomes.glacier; +import static biomesoplenty.api.content.BOPCBiomes.grassland; +import static biomesoplenty.api.content.BOPCBiomes.grove; +import static biomesoplenty.api.content.BOPCBiomes.heathland; +import static biomesoplenty.api.content.BOPCBiomes.highland; +import static biomesoplenty.api.content.BOPCBiomes.jadeCliffs; +import static biomesoplenty.api.content.BOPCBiomes.lavenderFields; +import static biomesoplenty.api.content.BOPCBiomes.lushDesert; +import static biomesoplenty.api.content.BOPCBiomes.lushRiver; +import static biomesoplenty.api.content.BOPCBiomes.lushSwamp; +import static biomesoplenty.api.content.BOPCBiomes.mapleWoods; +import static biomesoplenty.api.content.BOPCBiomes.marsh; +import static biomesoplenty.api.content.BOPCBiomes.meadow; +import static biomesoplenty.api.content.BOPCBiomes.meadowForest; +import static biomesoplenty.api.content.BOPCBiomes.moor; +import static biomesoplenty.api.content.BOPCBiomes.mountain; +import static biomesoplenty.api.content.BOPCBiomes.mysticGrove; +import static biomesoplenty.api.content.BOPCBiomes.oasis; +import static biomesoplenty.api.content.BOPCBiomes.ominousWoods; +import static biomesoplenty.api.content.BOPCBiomes.originValley; +import static biomesoplenty.api.content.BOPCBiomes.outback; +import static biomesoplenty.api.content.BOPCBiomes.phantasmagoricInferno; +import static biomesoplenty.api.content.BOPCBiomes.prairie; +import static biomesoplenty.api.content.BOPCBiomes.quagmire; +import static biomesoplenty.api.content.BOPCBiomes.rainforest; +import static biomesoplenty.api.content.BOPCBiomes.redwoodForest; +import static biomesoplenty.api.content.BOPCBiomes.sacredSprings; +import static biomesoplenty.api.content.BOPCBiomes.scrubland; +import static biomesoplenty.api.content.BOPCBiomes.seasonalForest; +import static biomesoplenty.api.content.BOPCBiomes.shield; +import static biomesoplenty.api.content.BOPCBiomes.shrubland; +import static biomesoplenty.api.content.BOPCBiomes.silkglades; +import static biomesoplenty.api.content.BOPCBiomes.sludgepit; +import static biomesoplenty.api.content.BOPCBiomes.snowyConiferousForest; +import static biomesoplenty.api.content.BOPCBiomes.spruceWoods; +import static biomesoplenty.api.content.BOPCBiomes.steppe; +import static biomesoplenty.api.content.BOPCBiomes.temperateRainforest; +import static biomesoplenty.api.content.BOPCBiomes.thicket; +import static biomesoplenty.api.content.BOPCBiomes.tropicalRainforest; +import static biomesoplenty.api.content.BOPCBiomes.tropics; +import static biomesoplenty.api.content.BOPCBiomes.tundra; +import static biomesoplenty.api.content.BOPCBiomes.undergarden; +import static biomesoplenty.api.content.BOPCBiomes.visceralHeap; +import static biomesoplenty.api.content.BOPCBiomes.volcano; +import static biomesoplenty.api.content.BOPCBiomes.wasteland; +import static biomesoplenty.api.content.BOPCBiomes.wetland; +import static biomesoplenty.api.content.BOPCBiomes.woodland; import java.util.ArrayList; import java.util.List; @@ -68,7 +139,6 @@ import biomesoplenty.common.biomes.overworld.BiomeGenSeasonalForest; import biomesoplenty.common.biomes.overworld.BiomeGenShield; import biomesoplenty.common.biomes.overworld.BiomeGenShrubland; import biomesoplenty.common.biomes.overworld.BiomeGenSludgepit; -import biomesoplenty.common.biomes.overworld.BiomeGenSpruceWoods; import biomesoplenty.common.biomes.overworld.BiomeGenSteppe; import biomesoplenty.common.biomes.overworld.BiomeGenTemperateRainforest; import biomesoplenty.common.biomes.overworld.BiomeGenThicket; @@ -85,6 +155,7 @@ import biomesoplenty.common.biomes.overworld.sub.BiomeGenOasis; import biomesoplenty.common.biomes.overworld.sub.BiomeGenQuagmire; import biomesoplenty.common.biomes.overworld.sub.BiomeGenScrubland; import biomesoplenty.common.biomes.overworld.sub.BiomeGenSilkglades; +import biomesoplenty.common.biomes.overworld.sub.BiomeGenSpruceWoods; import biomesoplenty.common.biomes.overworld.sub.BiomeGenTropics; import biomesoplenty.common.biomes.overworld.sub.BiomeGenVolcano; import biomesoplenty.common.biomes.overworld.tech.BiomeGenDryRiver; @@ -179,7 +250,6 @@ public class BOPBiomes shield = registerOverworldBiome(BiomeGenShield.class, "Shield", TemperatureType.COOL, 7); shrubland = registerOverworldBiome(BiomeGenShrubland.class, "Shrubland", TemperatureType.COOL, 10); sludgepit = registerOverworldBiome(BiomeGenSludgepit.class, "Sludgepit", TemperatureType.WARM, 5); - spruceWoods = registerOverworldBiome(BiomeGenSpruceWoods.class, "Spruce Woods", TemperatureType.WARM, 10); steppe = registerOverworldBiome(BiomeGenSteppe.class, "Steppe", TemperatureType.HOT, 7); temperateRainforest = registerOverworldBiome(BiomeGenTemperateRainforest.class, "Temperate Rainforest", TemperatureType.WARM, 10); thicket = registerOverworldBiome(BiomeGenThicket.class, "Thicket", TemperatureType.COOL, 5); @@ -198,6 +268,7 @@ public class BOPBiomes meadowForest = registerOverworldSubBiome(BiomeGenMeadowForest.class, "Meadow Forest", 10, meadow.biomeID); alpsForest = registerOverworldSubBiome(BiomeGenAlpsForest.class, "Alps Forest", 10, alps.biomeID); canyonRavine = registerOverworldSubBiome(BiomeGenCanyonRavine.class, "Canyon Ravine", 10, canyon.biomeID); + spruceWoods = registerOverworldSubBiome(BiomeGenSpruceWoods.class, "Spruce Woods", 10, BiomeGenBase.forest.biomeID); //Ocean Biomes volcano = registerOverworldSubBiome(BiomeGenVolcano.class, "Volcano", 10, BiomeGenBase.deepOcean.biomeID);