Removed Arctic and Glacier biomes, improved Cold/Frozen Desert biomes. (Be sure to fix biome IDs in your configs!)
This commit is contained in:
parent
9e045fbfe5
commit
df59c70cca
7 changed files with 38 additions and 119 deletions
|
@ -19,7 +19,6 @@ public class BOPBiomes
|
|||
|
||||
// normal biomes which have weights
|
||||
public static Optional<BiomeGenBase> alps = Optional.absent();
|
||||
public static Optional<BiomeGenBase> arctic = Optional.absent();
|
||||
public static Optional<BiomeGenBase> bamboo_forest = Optional.absent();
|
||||
public static Optional<BiomeGenBase> bayou = Optional.absent();
|
||||
public static Optional<BiomeGenBase> bog = Optional.absent();
|
||||
|
@ -79,7 +78,6 @@ public class BOPBiomes
|
|||
public static Optional<BiomeGenBase> xeric_shrubland = Optional.absent();
|
||||
|
||||
// edge-biomes, sub-biomes and mutated-biomes
|
||||
public static Optional<BiomeGenBase> glacier = Optional.absent();
|
||||
public static Optional<BiomeGenBase> mountain_foothills = Optional.absent();
|
||||
public static Optional<BiomeGenBase> canyon_ravine = Optional.absent();
|
||||
|
||||
|
|
|
@ -26,6 +26,7 @@ public class BiomeGenAlps extends BOPBiome
|
|||
this.setEnableSnow();
|
||||
this.setTemperatureRainfall(0.0F, 0.5F);
|
||||
|
||||
this.canGenerateRivers = false;
|
||||
this.canSpawnInBiome = false;
|
||||
this.canGenerateVillages = false;
|
||||
|
||||
|
|
|
@ -1,64 +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.util.BlockPos;
|
||||
import biomesoplenty.api.biome.BOPBiome;
|
||||
import biomesoplenty.api.biome.generation.GeneratorStage;
|
||||
import biomesoplenty.api.block.BOPBlocks;
|
||||
import biomesoplenty.common.block.BlockBOPDirt;
|
||||
import biomesoplenty.common.block.BlockBOPGrass;
|
||||
import biomesoplenty.common.enums.BOPClimates;
|
||||
import biomesoplenty.common.enums.BOPGems;
|
||||
import biomesoplenty.common.world.BOPWorldSettings;
|
||||
import biomesoplenty.common.world.feature.GeneratorOreSingle;
|
||||
|
||||
public class BiomeGenArctic extends BOPBiome
|
||||
{
|
||||
public BiomeGenArctic()
|
||||
{
|
||||
// terrain
|
||||
this.terrainSettings.avgHeight(64).heightVariation(6, 4).octaves(0, 0, 2, 0, 0, 5).sidewaysNoise(0.2F);
|
||||
|
||||
this.topBlock = BOPBlocks.grass.getDefaultState().withProperty(BlockBOPGrass.VARIANT, BlockBOPGrass.BOPGrassType.SILTY);
|
||||
this.fillerBlock = BOPBlocks.dirt.getDefaultState().withProperty(BlockBOPDirt.VARIANT, BlockBOPDirt.BOPDirtType.SILTY);
|
||||
|
||||
this.setColor(14540253);
|
||||
this.setEnableSnow();
|
||||
this.setTemperatureRainfall(0.05F, 0.5F);
|
||||
|
||||
this.canSpawnInBiome = false;
|
||||
this.canGenerateVillages = false;
|
||||
|
||||
this.addWeight(BOPClimates.ICE_CAP, 30);
|
||||
|
||||
this.spawnableCreatureList.clear();
|
||||
|
||||
// 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");}
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getGrassColorAtPos(BlockPos pos)
|
||||
{
|
||||
return 11176526;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getFoliageColorAtPos(BlockPos pos)
|
||||
{
|
||||
return 11903827;
|
||||
}
|
||||
}
|
|
@ -8,7 +8,12 @@
|
|||
|
||||
package biomesoplenty.common.biome.overworld;
|
||||
|
||||
import java.util.Random;
|
||||
|
||||
import net.minecraft.block.state.IBlockState;
|
||||
import net.minecraft.init.Blocks;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraft.world.chunk.ChunkPrimer;
|
||||
import biomesoplenty.api.biome.BOPBiome;
|
||||
import biomesoplenty.api.biome.generation.GeneratorStage;
|
||||
import biomesoplenty.api.block.BOPBlocks;
|
||||
|
@ -17,6 +22,7 @@ import biomesoplenty.common.enums.BOPGems;
|
|||
import biomesoplenty.common.util.biome.GeneratorUtils.ScatterYMethod;
|
||||
import biomesoplenty.common.util.block.BlockQuery.BlockQueryBlock;
|
||||
import biomesoplenty.common.util.block.BlockQuery.IBlockPosQuery;
|
||||
import biomesoplenty.common.util.config.BOPConfig.IConfigObj;
|
||||
import biomesoplenty.common.world.BOPWorldSettings;
|
||||
import biomesoplenty.common.world.feature.GeneratorBlobs;
|
||||
import biomesoplenty.common.world.feature.GeneratorOreSingle;
|
||||
|
@ -25,6 +31,9 @@ import biomesoplenty.common.world.feature.GeneratorSplotches;
|
|||
public class BiomeGenColdDesert extends BOPBiome
|
||||
{
|
||||
|
||||
public IBlockState usualTopBlock;
|
||||
public IBlockState alternateTopBlock;
|
||||
|
||||
public static enum ColdDesertType {FROZEN, COLD;}
|
||||
|
||||
public BiomeGenColdDesert(ColdDesertType type)
|
||||
|
@ -38,45 +47,66 @@ public class BiomeGenColdDesert extends BOPBiome
|
|||
this.topBlock = Blocks.gravel.getDefaultState();
|
||||
this.fillerBlock = Blocks.stone.getDefaultState();
|
||||
|
||||
this.enableRain = false;
|
||||
this.canGenerateRivers = false;
|
||||
|
||||
this.usualTopBlock = this.topBlock;
|
||||
|
||||
this.setDisableRain();
|
||||
this.enableSnow = false;
|
||||
|
||||
if (type == ColdDesertType.FROZEN)
|
||||
{
|
||||
this.alternateTopBlock = BOPBlocks.hard_ice.getDefaultState();
|
||||
this.setTemperatureRainfall(0.0F, 0.0F);
|
||||
this.addWeight(BOPClimates.FROZEN_DESERT, 20);
|
||||
this.addWeight(BOPClimates.FROZEN_DESERT, 10);
|
||||
this.setColor(0xB3D7E3);
|
||||
}
|
||||
else
|
||||
{
|
||||
this.alternateTopBlock = Blocks.snow.getDefaultState();
|
||||
this.setTemperatureRainfall(0.2F, 0.0F);
|
||||
this.addWeight(BOPClimates.COLD_DESERT, 20);
|
||||
this.addWeight(BOPClimates.COLD_DESERT, 10);
|
||||
this.setColor(0xB3AF9B);
|
||||
}
|
||||
|
||||
this.spawnableCreatureList.clear();
|
||||
|
||||
// gravel, stone and boulders
|
||||
IBlockPosQuery surface = new BlockQueryBlock(Blocks.stone, Blocks.gravel, BOPBlocks.hard_ice);
|
||||
IBlockPosQuery surface = new BlockQueryBlock(Blocks.stone, Blocks.gravel);
|
||||
if (type == ColdDesertType.FROZEN)
|
||||
{
|
||||
this.addGenerator("hard_ice_patches", GeneratorStage.SAND, (new GeneratorSplotches.Builder()).amountPerChunk(13).splotchSize(24).placeOn(surface).replace(surface).with(BOPBlocks.hard_ice.getDefaultState()).scatterYMethod(ScatterYMethod.AT_SURFACE).create());
|
||||
this.addGenerator("stone_patches", GeneratorStage.SAND, (new GeneratorSplotches.Builder()).amountPerChunk(3).splotchSize(16).placeOn(surface).replace(surface).with(Blocks.stone.getDefaultState()).scatterYMethod(ScatterYMethod.AT_SURFACE).create());
|
||||
}
|
||||
else
|
||||
{
|
||||
this.addGenerator("stone_patches", GeneratorStage.SAND, (new GeneratorSplotches.Builder()).amountPerChunk(6).splotchSize(24).placeOn(surface).replace(surface).with(Blocks.stone.getDefaultState()).scatterYMethod(ScatterYMethod.AT_SURFACE).create());
|
||||
}
|
||||
this.addGenerator("boulders", GeneratorStage.SAND_PASS2, (new GeneratorBlobs.Builder()).amountPerChunk(0.2F).placeOn(surface).with(Blocks.stone.getDefaultState()).minRadius(0.3F).maxRadius(3.2F).numBalls(4).scatterYMethod(ScatterYMethod.AT_SURFACE).create());
|
||||
this.addGenerator("boulders", GeneratorStage.SAND_PASS2, (new GeneratorBlobs.Builder()).amountPerChunk(0.2F).placeOn(surface).with(Blocks.cobblestone.getDefaultState()).minRadius(0.3F).maxRadius(3.2F).numBalls(4).scatterYMethod(ScatterYMethod.AT_SURFACE).create());
|
||||
|
||||
// gem
|
||||
this.addGenerator("tanzanite", GeneratorStage.SAND, (new GeneratorOreSingle.Builder()).amountPerChunk(12).with(BOPGems.TANZANITE).create());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void configure(IConfigObj conf)
|
||||
{
|
||||
super.configure(conf);
|
||||
|
||||
this.usualTopBlock = this.topBlock;
|
||||
this.alternateTopBlock = conf.getBlockState("alternateTopBlock", this.alternateTopBlock);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void applySettings(BOPWorldSettings settings)
|
||||
{
|
||||
if (!settings.generateBopGems) {this.removeGenerator("tanzanite");}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void genTerrainBlocks(World world, Random rand, ChunkPrimer primer, int x, int z, double noise)
|
||||
{
|
||||
this.topBlock = (noise + rand.nextDouble() * 3.0D > 1.8D) ? this.alternateTopBlock : this.usualTopBlock;
|
||||
super.genTerrainBlocks(world, rand, primer, x, z, noise);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -1,36 +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 biomesoplenty.api.block.BOPBlocks;
|
||||
|
||||
public class BiomeGenGlacier extends BiomeGenArctic
|
||||
{
|
||||
public BiomeGenGlacier()
|
||||
{
|
||||
super();
|
||||
|
||||
this.canSpawnInBiome = false;
|
||||
|
||||
// clear weights - this biome shouldn't spawn except as arctic sub-biome
|
||||
clearWeights();
|
||||
|
||||
// terrain - higher than arctic
|
||||
this.terrainSettings.avgHeight(88).heightVariation(6, 6).octaves(1, 1, 3, 1, 1, 0);
|
||||
this.avgDirtDepth = 16;
|
||||
|
||||
this.setColor(0xB0BBD9);
|
||||
|
||||
this.canGenerateVillages = false;
|
||||
|
||||
this.topBlock = BOPBlocks.hard_ice.getDefaultState();
|
||||
this.fillerBlock = BOPBlocks.hard_ice.getDefaultState();
|
||||
|
||||
}
|
||||
}
|
|
@ -9,7 +9,6 @@
|
|||
package biomesoplenty.common.init;
|
||||
|
||||
import static biomesoplenty.api.biome.BOPBiomes.alps;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.arctic;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.bamboo_forest;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.bayou;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.birch_forest_extension;
|
||||
|
@ -38,7 +37,6 @@ import static biomesoplenty.api.biome.BOPBiomes.frost_forest;
|
|||
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.grove;
|
||||
import static biomesoplenty.api.biome.BOPBiomes.heathland;
|
||||
|
@ -102,7 +100,6 @@ import biomesoplenty.api.biome.BOPBiome;
|
|||
import biomesoplenty.api.biome.BOPBiomes;
|
||||
import biomesoplenty.api.biome.IExtendedBiome;
|
||||
import biomesoplenty.common.biome.overworld.BiomeGenAlps;
|
||||
import biomesoplenty.common.biome.overworld.BiomeGenArctic;
|
||||
import biomesoplenty.common.biome.overworld.BiomeGenBambooForest;
|
||||
import biomesoplenty.common.biome.overworld.BiomeGenBayou;
|
||||
import biomesoplenty.common.biome.overworld.BiomeGenBog;
|
||||
|
@ -124,7 +121,6 @@ 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.BiomeGenGrove;
|
||||
import biomesoplenty.common.biome.overworld.BiomeGenHeathland;
|
||||
|
@ -332,7 +328,6 @@ public class ModBiomes implements BOPBiomes.IBiomeRegistry
|
|||
|
||||
// normal biomes which have weights
|
||||
alps = registerBOPBiome(new BiomeGenAlps(), "Alps");
|
||||
arctic = registerBOPBiome(new BiomeGenArctic(), "Arctic");
|
||||
bamboo_forest = registerBOPBiome(new BiomeGenBambooForest(), "Bamboo Forest");
|
||||
bayou = registerBOPBiome(new BiomeGenBayou(), "Bayou");
|
||||
bog = registerBOPBiome(new BiomeGenBog(), "Bog");
|
||||
|
@ -395,10 +390,7 @@ 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"); // TODO: implement glacier
|
||||
|
||||
setSubBiome(Optional.of(BiomeGenBase.frozenOcean), arctic); // add some arctic regions in frozen oceans
|
||||
setSubBiome(arctic, glacier);
|
||||
setSubBiome(canyon, canyon_ravine);
|
||||
|
||||
}
|
||||
|
@ -408,7 +400,6 @@ 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.arctic, Type.SNOWY, Type.WASTELAND, Type.COLD, Type.DEAD);
|
||||
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);
|
||||
|
@ -468,7 +459,6 @@ public class ModBiomes implements BOPBiomes.IBiomeRegistry
|
|||
registerBiomeToDictionary(BOPBiomes.xeric_shrubland, Type.PLAINS, Type.SPARSE, Type.DRY, Type.LUSH, Type.HOT, Type.SANDY);
|
||||
|
||||
// edge-biomes, sub-biomes and mutated-biomes
|
||||
registerBiomeToDictionary(BOPBiomes.glacier, Type.SNOWY, Type.HILLS, Type.COLD, Type.DEAD);
|
||||
registerBiomeToDictionary(BOPBiomes.mountain_foothills, Type.HILLS, Type.MOUNTAIN);
|
||||
registerBiomeToDictionary(BOPBiomes.canyon_ravine, Type.SANDY, Type.HILLS, Type.DRY, Type.HOT);
|
||||
|
||||
|
|
|
@ -47,7 +47,7 @@ public class GenLayerRiverMixBOP extends BOPGenLayer
|
|||
{
|
||||
if (riverValues[i] == BiomeGenBase.river.biomeID)
|
||||
{
|
||||
if (biomeIds[i] == BiomeGenBase.icePlains.biomeID || (BOPBiomes.arctic.isPresent() && biomeIds[i] == BOPBiomes.arctic.get().biomeID))
|
||||
if (biomeIds[i] == BiomeGenBase.icePlains.biomeID || (BOPBiomes.cold_desert.isPresent() && biomeIds[i] == BOPBiomes.cold_desert.get().biomeID) || (BOPBiomes.frozen_desert.isPresent() && biomeIds[i] == BOPBiomes.frozen_desert.get().biomeID))
|
||||
{
|
||||
out[i] = BiomeGenBase.frozenRiver.biomeID;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue