Trees will generate in the new biomes.

Only the generic trees, the special variants haven't yet been implemented.
master
madmaxoft 2013-11-28 22:08:42 +01:00
parent 057821d9b7
commit f6df5cea87
2 changed files with 101 additions and 14 deletions

View File

@ -260,20 +260,57 @@ int cStructGenTrees::GetNumTrees(
int Add = 0;
switch (cChunkDef::GetBiome(a_Biomes, x, z))
{
case biPlains: Add = 1; break;
case biExtremeHills: Add = 3; break;
case biForest: Add = 30; break;
case biTaiga: Add = 30; break;
case biSwampland: Add = 8; break;
case biIcePlains: Add = 1; break;
case biIceMountains: Add = 1; break;
case biMushroomIsland: Add = 3; break;
case biMushroomShore: Add = 3; break;
case biForestHills: Add = 20; break;
case biTaigaHills: Add = 20; break;
case biExtremeHillsEdge: Add = 5; break;
case biJungle: Add = 120; break;
case biJungleHills: Add = 90; break;
case biOcean: Add = 2; break;
case biDesert: Add = 0; break;
case biPlains: Add = 1; break;
case biExtremeHills: Add = 3; break;
case biForest: Add = 30; break;
case biTaiga: Add = 30; break;
case biSwampland: Add = 8; break;
case biIcePlains: Add = 1; break;
case biIceMountains: Add = 1; break;
case biMushroomIsland: Add = 3; break;
case biMushroomShore: Add = 3; break;
case biForestHills: Add = 20; break;
case biTaigaHills: Add = 20; break;
case biExtremeHillsEdge: Add = 5; break;
case biJungle: Add = 120; break;
case biJungleHills: Add = 90; break;
case biJungleEdge: Add = 90; break;
case biBirchForest: Add = 30; break;
case biBirchForestHills: Add = 20; break;
case biRoofedForest: Add = 50; break;
case biColdTaiga: Add = 20; break;
case biColdTaigaHills: Add = 15; break;
case biMegaTaiga: Add = 30; break;
case biMegaTaigaHills: Add = 25; break;
case biExtremeHillsPlus: Add = 3; break;
case biSavanna: Add = 8; break;
case biSavannaPlateau: Add = 12; break;
case biMesa: Add = 2; break;
case biMesaPlateauF: Add = 8; break;
case biMesaPlateau: Add = 8; break;
case biSunflowerPlains: Add = 1; break;
case biDesertM: Add = 0; break;
case biExtremeHillsM: Add = 4; break;
case biFlowerForest: Add = 30; break;
case biTaigaM: Add = 30; break;
case biSwamplandM: Add = 8; break;
case biIcePlainsSpikes: Add = 1; break;
case biJungleM: Add = 120; break;
case biJungleEdgeM: Add = 90; break;
case biBirchForestM: Add = 30; break;
case biBirchForestHillsM: Add = 20; break;
case biRoofedForestM: Add = 40; break;
case biColdTaigaM: Add = 30; break;
case biMegaSpruceTaiga: Add = 30; break;
case biMegaSpruceTaigaHills: Add = 30; break;
case biExtremeHillsPlusM: Add = 4; break;
case biSavannaM: Add = 8; break;
case biSavannaPlateauM: Add = 12; break;
case biMesaBryce: Add = 4; break;
case biMesaPlateauFM: Add = 12; break;
case biMesaPlateauM: Add = 12; break;
}
NumTrees += Add;
}

View File

@ -161,6 +161,9 @@ void GetTreeImageByBiome(int a_BlockX, int a_BlockY, int a_BlockZ, cNoise & a_No
case biMushroomIsland:
case biMushroomShore:
case biForestHills:
case biDeepOcean:
case biStoneBeach:
case biColdBeach:
{
// Apple or birch trees:
if (a_Noise.IntNoise3DInt(a_BlockX, a_BlockY + 16 * a_Seq, a_BlockZ + 16 * a_Seq) < 0x5fffffff)
@ -193,6 +196,7 @@ void GetTreeImageByBiome(int a_BlockX, int a_BlockY, int a_BlockZ, cNoise & a_No
case biJungle:
case biJungleHills:
case biJungleEdge:
{
// Apple bushes, large jungle trees, small jungle trees
if (a_Noise.IntNoise3DInt(a_BlockX, a_BlockY + 16 * a_Seq, a_BlockZ + 16 * a_Seq) < 0x6fffffff)
@ -203,6 +207,52 @@ void GetTreeImageByBiome(int a_BlockX, int a_BlockY, int a_BlockZ, cNoise & a_No
{
GetJungleTreeImage(a_BlockX, a_BlockY, a_BlockZ, a_Noise, a_Seq, a_LogBlocks, a_OtherBlocks);
}
break;
}
case biBirchForest:
case biBirchForestHills:
{
GetBirchTreeImage(a_BlockX, a_BlockY, a_BlockZ, a_Noise, a_Seq, a_LogBlocks, a_OtherBlocks);
break;
}
case biRoofedForest:
case biColdTaiga:
case biColdTaigaHills:
case biMegaTaiga:
case biMegaTaigaHills:
case biExtremeHillsPlus:
case biSavanna:
case biSavannaPlateau:
case biMesa:
case biMesaPlateauF:
case biMesaPlateau:
case biSunflowerPlains:
case biDesertM:
case biExtremeHillsM:
case biFlowerForest:
case biTaigaM:
case biSwamplandM:
case biIcePlainsSpikes:
case biJungleM:
case biJungleEdgeM:
case biBirchForestM:
case biBirchForestHillsM:
case biRoofedForestM:
case biColdTaigaM:
case biMegaSpruceTaiga:
case biMegaSpruceTaigaHills:
case biExtremeHillsPlusM:
case biSavannaM:
case biSavannaPlateauM:
case biMesaBryce:
case biMesaPlateauFM:
case biMesaPlateauM:
{
// TODO: These need their special trees
GetBirchTreeImage(a_BlockX, a_BlockY, a_BlockZ, a_Noise, a_Seq, a_LogBlocks, a_OtherBlocks);
break;
}
}
}