From 4235feb7fd6995fae9261c3b90516d7e93b78ef0 Mon Sep 17 00:00:00 2001 From: Samuel Barney Date: Mon, 13 Jul 2015 15:18:39 -0600 Subject: Fixed tall grass trying to be placed in cold biomes. --- src/Generating/FinishGen.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/Generating/FinishGen.cpp b/src/Generating/FinishGen.cpp index 59af0fd63..513c2bd49 100644 --- a/src/Generating/FinishGen.cpp +++ b/src/Generating/FinishGen.cpp @@ -322,6 +322,7 @@ void cFinishGenTallGrass::GenFinish(cChunkDesc & a_ChunkDesc) if ( (a_ChunkDesc.GetBlockType(x, y, z) != E_BLOCK_AIR) || ((a_ChunkDesc.GetBlockType(x, y - 1, z) != E_BLOCK_GRASS) && (a_ChunkDesc.GetBlockType(x, y - 1, z) != E_BLOCK_DIRT)) + ) { continue; @@ -337,7 +338,7 @@ void cFinishGenTallGrass::GenFinish(cChunkDesc & a_ChunkDesc) { a_ChunkDesc.SetBlockTypeMeta(x, y, z, E_BLOCK_TALL_GRASS, 2); } - else + else if (!IsBiomeVeryCold(a_ChunkDesc.GetBiome(x, z))) { // If double long grass we have to choose what type we should use: if (a_ChunkDesc.GetBlockType(x, y + 1, z) == E_BLOCK_AIR) @@ -347,6 +348,11 @@ void cFinishGenTallGrass::GenFinish(cChunkDesc & a_ChunkDesc) a_ChunkDesc.SetBlockTypeMeta(x, y + 1, z, E_BLOCK_BIG_FLOWER, 8); } } + else + { + NIBBLETYPE meta = (m_Noise.IntNoise2DInt(xx * 50, zz * 50) / 7 % 2) + 1; + a_ChunkDesc.SetBlockTypeMeta(x, y, z, E_BLOCK_TALL_GRASS, meta); + } } } } -- cgit v1.2.3