Adjusted Bamboo Forests to Forstride's liking

This commit is contained in:
Adubbz 2013-05-01 19:23:58 +10:00
parent 4f85088533
commit ef4dd081cc
10 changed files with 258 additions and 258 deletions

View file

@ -71,7 +71,7 @@ public class BiomeGenBambooForest extends BiomeGenBase
*/ */
public int getBiomeGrassColor() public int getBiomeGrassColor()
{ {
return 9430372; return 10739795;
} }
/** /**
@ -79,6 +79,6 @@ public class BiomeGenBambooForest extends BiomeGenBase
*/ */
public int getBiomeFoliageColor() public int getBiomeFoliageColor()
{ {
return 9430372; return 10739795;
} }
} }

View file

@ -27,7 +27,7 @@ public class WorldGenBambooTree extends WorldGenerator
public WorldGenBambooTree(boolean par1) public WorldGenBambooTree(boolean par1)
{ {
this(par1, 18, 0, 0, false); this(par1, 10, 0, 0, false);
} }
public WorldGenBambooTree(boolean par1, int par2, int par3, int par4, boolean par5) public WorldGenBambooTree(boolean par1, int par2, int par3, int par4, boolean par5)
@ -41,7 +41,7 @@ public class WorldGenBambooTree extends WorldGenerator
public boolean generate(World par1World, Random par2Random, int par3, int par4, int par5) public boolean generate(World par1World, Random par2Random, int par3, int par4, int par5)
{ {
int var6 = par2Random.nextInt(3) + this.minTreeHeight; int var6 = par2Random.nextInt(12) + this.minTreeHeight;
boolean var7 = true; boolean var7 = true;
if (par4 >= 1 && par4 + var6 + 1 <= 256) if (par4 >= 1 && par4 + var6 + 1 <= 256)

View file

@ -1,116 +1,116 @@
package biomesoplenty.worldgen.structure; package biomesoplenty.worldgen.structure;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.Iterator; import java.util.Iterator;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Map.Entry; import java.util.Map.Entry;
import java.util.Random; import java.util.Random;
import biomesoplenty.api.Biomes; import biomesoplenty.api.Biomes;
import net.minecraft.entity.monster.EntityWitch; import net.minecraft.entity.monster.EntityWitch;
import net.minecraft.util.MathHelper; import net.minecraft.util.MathHelper;
import net.minecraft.world.biome.BiomeGenBase; import net.minecraft.world.biome.BiomeGenBase;
import net.minecraft.world.biome.SpawnListEntry; import net.minecraft.world.biome.SpawnListEntry;
import net.minecraft.world.gen.structure.MapGenStructure; import net.minecraft.world.gen.structure.MapGenStructure;
import net.minecraft.world.gen.structure.StructureStart; import net.minecraft.world.gen.structure.StructureStart;
public class BOPMapGenScatteredFeature extends MapGenStructure public class BOPMapGenScatteredFeature extends MapGenStructure
{ {
private static List biomelist = Arrays.asList(new BiomeGenBase[] { private static List biomelist = Arrays.asList(new BiomeGenBase[] {
BiomeGenBase.desert, BiomeGenBase.desertHills, BiomeGenBase.jungle, BiomeGenBase.jungleHills, BiomeGenBase.swampland, BiomeGenBase.desert, BiomeGenBase.desertHills, BiomeGenBase.jungle, BiomeGenBase.jungleHills, BiomeGenBase.swampland,
Biomes.badlands.get(), Biomes.dunes.get(), Biomes.oasis.get(), Biomes.desertNew.get(), Biomes.badlands.get(), Biomes.dunes.get(), Biomes.oasis.get(), Biomes.desertNew.get(),
Biomes.bayou.get(), Biomes.bog.get(), Biomes.deadSwamp.get(), Biomes.fen.get(), Biomes.swampwoods.get(), Biomes.swamplandNew.get(), Biomes.bayou.get(), Biomes.bog.get(), Biomes.deadSwamp.get(), Biomes.fen.get(), Biomes.swampwoods.get(), Biomes.swamplandNew.get(),
Biomes.rainforest.get(), Biomes.temperateRainforest.get(), Biomes.tropicalRainforest.get(), Biomes.jungleNew.get() Biomes.rainforest.get(), Biomes.temperateRainforest.get(), Biomes.tropicalRainforest.get(), Biomes.jungleNew.get()
}); });
/** contains possible spawns for scattered features */ /** contains possible spawns for scattered features */
private List scatteredFeatureSpawnList; private List scatteredFeatureSpawnList;
/** the maximum distance between scattered features */ /** the maximum distance between scattered features */
private int maxDistanceBetweenScatteredFeatures; private int maxDistanceBetweenScatteredFeatures;
/** the minimum distance between scattered features */ /** the minimum distance between scattered features */
private int minDistanceBetweenScatteredFeatures; private int minDistanceBetweenScatteredFeatures;
public BOPMapGenScatteredFeature() public BOPMapGenScatteredFeature()
{ {
this.scatteredFeatureSpawnList = new ArrayList(); this.scatteredFeatureSpawnList = new ArrayList();
this.maxDistanceBetweenScatteredFeatures = 32; this.maxDistanceBetweenScatteredFeatures = 32;
this.minDistanceBetweenScatteredFeatures = 8; this.minDistanceBetweenScatteredFeatures = 8;
this.scatteredFeatureSpawnList.add(new SpawnListEntry(EntityWitch.class, 1, 1, 1)); this.scatteredFeatureSpawnList.add(new SpawnListEntry(EntityWitch.class, 1, 1, 1));
} }
public BOPMapGenScatteredFeature(Map par1Map) public BOPMapGenScatteredFeature(Map par1Map)
{ {
this(); this();
Iterator iterator = par1Map.entrySet().iterator(); Iterator iterator = par1Map.entrySet().iterator();
while (iterator.hasNext()) while (iterator.hasNext())
{ {
Entry entry = (Entry)iterator.next(); Entry entry = (Entry)iterator.next();
if (((String)entry.getKey()).equals("distance")) if (((String)entry.getKey()).equals("distance"))
{ {
this.maxDistanceBetweenScatteredFeatures = MathHelper.parseIntWithDefaultAndMax((String)entry.getValue(), this.maxDistanceBetweenScatteredFeatures, this.minDistanceBetweenScatteredFeatures + 1); this.maxDistanceBetweenScatteredFeatures = MathHelper.parseIntWithDefaultAndMax((String)entry.getValue(), this.maxDistanceBetweenScatteredFeatures, this.minDistanceBetweenScatteredFeatures + 1);
} }
} }
} }
protected boolean canSpawnStructureAtCoords(int par1, int par2) protected boolean canSpawnStructureAtCoords(int par1, int par2)
{ {
int k = par1; int k = par1;
int l = par2; int l = par2;
if (par1 < 0) if (par1 < 0)
{ {
par1 -= this.maxDistanceBetweenScatteredFeatures - 1; par1 -= this.maxDistanceBetweenScatteredFeatures - 1;
} }
if (par2 < 0) if (par2 < 0)
{ {
par2 -= this.maxDistanceBetweenScatteredFeatures - 1; par2 -= this.maxDistanceBetweenScatteredFeatures - 1;
} }
int i1 = par1 / this.maxDistanceBetweenScatteredFeatures; int i1 = par1 / this.maxDistanceBetweenScatteredFeatures;
int j1 = par2 / this.maxDistanceBetweenScatteredFeatures; int j1 = par2 / this.maxDistanceBetweenScatteredFeatures;
Random random = this.worldObj.setRandomSeed(i1, j1, 14357617); Random random = this.worldObj.setRandomSeed(i1, j1, 14357617);
i1 *= this.maxDistanceBetweenScatteredFeatures; i1 *= this.maxDistanceBetweenScatteredFeatures;
j1 *= this.maxDistanceBetweenScatteredFeatures; j1 *= this.maxDistanceBetweenScatteredFeatures;
i1 += random.nextInt(this.maxDistanceBetweenScatteredFeatures - this.minDistanceBetweenScatteredFeatures); i1 += random.nextInt(this.maxDistanceBetweenScatteredFeatures - this.minDistanceBetweenScatteredFeatures);
j1 += random.nextInt(this.maxDistanceBetweenScatteredFeatures - this.minDistanceBetweenScatteredFeatures); j1 += random.nextInt(this.maxDistanceBetweenScatteredFeatures - this.minDistanceBetweenScatteredFeatures);
if (k == i1 && l == j1) if (k == i1 && l == j1)
{ {
BiomeGenBase biomegenbase = this.worldObj.getWorldChunkManager().getBiomeGenAt(k * 16 + 8, l * 16 + 8); BiomeGenBase biomegenbase = this.worldObj.getWorldChunkManager().getBiomeGenAt(k * 16 + 8, l * 16 + 8);
Iterator iterator = biomelist.iterator(); Iterator iterator = biomelist.iterator();
while (iterator.hasNext()) while (iterator.hasNext())
{ {
BiomeGenBase biomegenbase1 = (BiomeGenBase)iterator.next(); BiomeGenBase biomegenbase1 = (BiomeGenBase)iterator.next();
if (biomegenbase == biomegenbase1) if (biomegenbase == biomegenbase1)
{ {
return true; return true;
} }
} }
} }
return false; return false;
} }
protected StructureStart getStructureStart(int par1, int par2) protected StructureStart getStructureStart(int par1, int par2)
{ {
return new BOPStructureScatteredFeatureStart(this.worldObj, this.rand, par1, par2); return new BOPStructureScatteredFeatureStart(this.worldObj, this.rand, par1, par2);
} }
/** /**
* returns possible spawns for scattered features * returns possible spawns for scattered features
*/ */
public List getScatteredFeatureSpawnList() public List getScatteredFeatureSpawnList()
{ {
return this.scatteredFeatureSpawnList; return this.scatteredFeatureSpawnList;
} }
} }

View file

@ -1,95 +1,95 @@
package biomesoplenty.worldgen.structure; package biomesoplenty.worldgen.structure;
import java.util.Arrays; import java.util.Arrays;
import java.util.Iterator; import java.util.Iterator;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Random; import java.util.Random;
import java.util.Map.Entry; import java.util.Map.Entry;
import biomesoplenty.configuration.BOPConfiguration; import biomesoplenty.configuration.BOPConfiguration;
import net.minecraft.util.MathHelper; import net.minecraft.util.MathHelper;
import net.minecraft.world.biome.BiomeGenBase; import net.minecraft.world.biome.BiomeGenBase;
import net.minecraft.world.gen.structure.MapGenStructure; import net.minecraft.world.gen.structure.MapGenStructure;
import net.minecraft.world.gen.structure.MapGenVillage; import net.minecraft.world.gen.structure.MapGenVillage;
import net.minecraft.world.gen.structure.StructureStart; import net.minecraft.world.gen.structure.StructureStart;
public class BOPMapGenVillage extends MapGenStructure public class BOPMapGenVillage extends MapGenStructure
{ {
/** A list of all the biomes villages can spawn in. */ /** A list of all the biomes villages can spawn in. */
public static List villageSpawnBiomes = Arrays.asList(new BiomeGenBase[] {BiomeGenBase.plains, BiomeGenBase.desert}); public static List villageSpawnBiomes = Arrays.asList(new BiomeGenBase[] {BiomeGenBase.plains, BiomeGenBase.desert});
/** World terrain type, 0 for normal, 1 for flat map */ /** World terrain type, 0 for normal, 1 for flat map */
private int terrainType; private int terrainType;
private int maxDistance; private int maxDistance;
private int minDistance; private int minDistance;
public BOPMapGenVillage() public BOPMapGenVillage()
{ {
this.terrainType = 0; this.terrainType = 0;
this.maxDistance = BOPConfiguration.villageDistance; this.maxDistance = BOPConfiguration.villageDistance;
this.minDistance = BOPConfiguration.villageDistance / 4; this.minDistance = BOPConfiguration.villageDistance / 4;
villageSpawnBiomes = MapGenVillage.villageSpawnBiomes; villageSpawnBiomes = MapGenVillage.villageSpawnBiomes;
} }
public BOPMapGenVillage(Map par1Map) public BOPMapGenVillage(Map par1Map)
{ {
this(); this();
Iterator iterator = par1Map.entrySet().iterator(); Iterator iterator = par1Map.entrySet().iterator();
while (iterator.hasNext()) while (iterator.hasNext())
{ {
Entry entry = (Entry)iterator.next(); Entry entry = (Entry)iterator.next();
if (((String)entry.getKey()).equals("size")) if (((String)entry.getKey()).equals("size"))
{ {
this.terrainType = MathHelper.parseIntWithDefaultAndMax((String)entry.getValue(), this.terrainType, 0); this.terrainType = MathHelper.parseIntWithDefaultAndMax((String)entry.getValue(), this.terrainType, 0);
} }
else if (((String)entry.getKey()).equals("distance")) else if (((String)entry.getKey()).equals("distance"))
{ {
this.maxDistance = MathHelper.parseIntWithDefaultAndMax((String)entry.getValue(), this.maxDistance, this.minDistance + 1); this.maxDistance = MathHelper.parseIntWithDefaultAndMax((String)entry.getValue(), this.maxDistance, this.minDistance + 1);
} }
} }
} }
protected boolean canSpawnStructureAtCoords(int par1, int par2) protected boolean canSpawnStructureAtCoords(int par1, int par2)
{ {
int k = par1; int k = par1;
int l = par2; int l = par2;
if (par1 < 0) if (par1 < 0)
{ {
par1 -= this.maxDistance - 1; par1 -= this.maxDistance - 1;
} }
if (par2 < 0) if (par2 < 0)
{ {
par2 -= this.maxDistance - 1; par2 -= this.maxDistance - 1;
} }
int i1 = par1 / this.maxDistance; int i1 = par1 / this.maxDistance;
int j1 = par2 / this.maxDistance; int j1 = par2 / this.maxDistance;
Random random = this.worldObj.setRandomSeed(i1, j1, 10387312); Random random = this.worldObj.setRandomSeed(i1, j1, 10387312);
i1 *= this.maxDistance; i1 *= this.maxDistance;
j1 *= this.maxDistance; j1 *= this.maxDistance;
i1 += random.nextInt(this.maxDistance - this.minDistance); i1 += random.nextInt(this.maxDistance - this.minDistance);
j1 += random.nextInt(this.maxDistance - this.minDistance); j1 += random.nextInt(this.maxDistance - this.minDistance);
if (k == i1 && l == j1) if (k == i1 && l == j1)
{ {
boolean flag = this.worldObj.getWorldChunkManager().areBiomesViable(k * 16 + 8, l * 16 + 8, 0, villageSpawnBiomes); boolean flag = this.worldObj.getWorldChunkManager().areBiomesViable(k * 16 + 8, l * 16 + 8, 0, villageSpawnBiomes);
if (flag) if (flag)
{ {
return true; return true;
} }
} }
return false; return false;
} }
protected StructureStart getStructureStart(int par1, int par2) protected StructureStart getStructureStart(int par1, int par2)
{ {
return new BOPStructureVillageStart(this.worldObj, this.rand, par1, par2, this.terrainType); return new BOPStructureVillageStart(this.worldObj, this.rand, par1, par2, this.terrainType);
} }
} }

View file

@ -1,43 +1,43 @@
package biomesoplenty.worldgen.structure; package biomesoplenty.worldgen.structure;
import java.util.Random; import java.util.Random;
import biomesoplenty.api.Biomes; import biomesoplenty.api.Biomes;
import net.minecraft.world.World; import net.minecraft.world.World;
import net.minecraft.world.biome.BiomeGenBase; import net.minecraft.world.biome.BiomeGenBase;
import net.minecraft.world.gen.structure.ComponentScatteredFeatureDesertPyramid; import net.minecraft.world.gen.structure.ComponentScatteredFeatureDesertPyramid;
import net.minecraft.world.gen.structure.ComponentScatteredFeatureJunglePyramid; import net.minecraft.world.gen.structure.ComponentScatteredFeatureJunglePyramid;
import net.minecraft.world.gen.structure.ComponentScatteredFeatureSwampHut; import net.minecraft.world.gen.structure.ComponentScatteredFeatureSwampHut;
import net.minecraft.world.gen.structure.StructureStart; import net.minecraft.world.gen.structure.StructureStart;
public class BOPStructureScatteredFeatureStart extends StructureStart public class BOPStructureScatteredFeatureStart extends StructureStart
{ {
public BOPStructureScatteredFeatureStart(World world, Random random, int x, int z) public BOPStructureScatteredFeatureStart(World world, Random random, int x, int z)
{ {
BiomeGenBase biome = world.getBiomeGenForCoords(x * 16 + 8, z * 16 + 8); BiomeGenBase biome = world.getBiomeGenForCoords(x * 16 + 8, z * 16 + 8);
if (biome != BiomeGenBase.jungle && biome != BiomeGenBase.jungleHills && biome != Biomes.rainforest.get() && if (biome != BiomeGenBase.jungle && biome != BiomeGenBase.jungleHills && biome != Biomes.rainforest.get() &&
biome != Biomes.temperateRainforest.get() && biome != Biomes.tropicalRainforest.get() && biome != Biomes.jungleNew.get()) biome != Biomes.temperateRainforest.get() && biome != Biomes.tropicalRainforest.get() && biome != Biomes.jungleNew.get())
{ {
if (biome == BiomeGenBase.swampland || biome == Biomes.bayou.get() || biome == Biomes.bog.get() if (biome == BiomeGenBase.swampland || biome == Biomes.bayou.get() || biome == Biomes.bog.get()
|| biome == Biomes.deadSwamp.get() || biome == Biomes.fen.get() || biome == Biomes.swampwoods.get() || biome == Biomes.deadSwamp.get() || biome == Biomes.fen.get() || biome == Biomes.swampwoods.get()
|| biome == Biomes.swamplandNew.get()) || biome == Biomes.swamplandNew.get())
{ {
ComponentScatteredFeatureSwampHut componentscatteredfeatureswamphut = new ComponentScatteredFeatureSwampHut(random, x * 16, z * 16); ComponentScatteredFeatureSwampHut componentscatteredfeatureswamphut = new ComponentScatteredFeatureSwampHut(random, x * 16, z * 16);
this.components.add(componentscatteredfeatureswamphut); this.components.add(componentscatteredfeatureswamphut);
} }
else else
{ {
ComponentScatteredFeatureDesertPyramid componentscatteredfeaturedesertpyramid = new ComponentScatteredFeatureDesertPyramid(random, x * 16, z * 16); ComponentScatteredFeatureDesertPyramid componentscatteredfeaturedesertpyramid = new ComponentScatteredFeatureDesertPyramid(random, x * 16, z * 16);
this.components.add(componentscatteredfeaturedesertpyramid); this.components.add(componentscatteredfeaturedesertpyramid);
} }
} }
else else
{ {
ComponentScatteredFeatureJunglePyramid componentscatteredfeaturejunglepyramid = new ComponentScatteredFeatureJunglePyramid(random, x * 16, z * 16); ComponentScatteredFeatureJunglePyramid componentscatteredfeaturejunglepyramid = new ComponentScatteredFeatureJunglePyramid(random, x * 16, z * 16);
this.components.add(componentscatteredfeaturejunglepyramid); this.components.add(componentscatteredfeaturejunglepyramid);
} }
this.updateBoundingBox(); this.updateBoundingBox();
} }
} }

Binary file not shown.

Before

Width:  |  Height:  |  Size: 260 B

After

Width:  |  Height:  |  Size: 725 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 584 B

After

Width:  |  Height:  |  Size: 581 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 289 B

After

Width:  |  Height:  |  Size: 410 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 612 B

After

Width:  |  Height:  |  Size: 583 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 653 B

After

Width:  |  Height:  |  Size: 624 B