1
0

Generated tall flowers have flower type meta in both blocks

This commit is contained in:
peterbell10 2017-06-19 17:11:24 +01:00 committed by Lukas Pioch
parent b0f3336533
commit 9201c7be7a
3 changed files with 7 additions and 4 deletions

View File

@ -49,7 +49,10 @@ public:
NIBBLETYPE Meta = a_BlockMeta & 0x7; NIBBLETYPE Meta = a_BlockMeta & 0x7;
if (Meta == E_META_BIG_FLOWER_DOUBLE_TALL_GRASS) if (Meta == E_META_BIG_FLOWER_DOUBLE_TALL_GRASS)
{ {
a_Pickups.push_back(cItem(E_ITEM_SEEDS)); if (GetRandomProvider().RandBool(1.0 / 24.0))
{
a_Pickups.push_back(cItem(E_ITEM_SEEDS));
}
} }
else if (Meta != E_META_BIG_FLOWER_LARGE_FERN) else if (Meta != E_META_BIG_FLOWER_LARGE_FERN)
{ {

View File

@ -1139,7 +1139,7 @@ bool cChunk::GrowTallGrass(int a_RelX, int a_RelY, int a_RelZ)
default: return false; default: return false;
} }
return UnboundedRelFastSetBlock(a_RelX, a_RelY, a_RelZ, E_BLOCK_BIG_FLOWER, LargeFlowerMeta) && return UnboundedRelFastSetBlock(a_RelX, a_RelY, a_RelZ, E_BLOCK_BIG_FLOWER, LargeFlowerMeta) &&
UnboundedRelFastSetBlock(a_RelX, a_RelY + 1, a_RelZ, E_BLOCK_BIG_FLOWER, 8); UnboundedRelFastSetBlock(a_RelX, a_RelY + 1, a_RelZ, E_BLOCK_BIG_FLOWER, 0x8 | LargeFlowerMeta);
} }

View File

@ -260,7 +260,7 @@ void cFinishGenClumpTopBlock::TryPlaceFoliageClump(cChunkDesc & a_ChunkDesc, int
a_ChunkDesc.SetBlockTypeMeta(x, Top + 1, z, a_BlockType, a_BlockMeta); a_ChunkDesc.SetBlockTypeMeta(x, Top + 1, z, a_BlockType, a_BlockMeta);
if (a_IsDoubleTall) if (a_IsDoubleTall)
{ {
a_ChunkDesc.SetBlockTypeMeta(x, Top + 2, z, E_BLOCK_BIG_FLOWER, 8); a_ChunkDesc.SetBlockTypeMeta(x, Top + 2, z, E_BLOCK_BIG_FLOWER, 0x8 | a_BlockMeta);
a_ChunkDesc.SetHeight(x, z, static_cast<HEIGHTTYPE>(Top + 2)); a_ChunkDesc.SetHeight(x, z, static_cast<HEIGHTTYPE>(Top + 2));
} }
else else
@ -554,7 +554,7 @@ void cFinishGenTallGrass::GenFinish(cChunkDesc & a_ChunkDesc)
{ {
NIBBLETYPE Meta = (m_Noise.IntNoise2DInt(xx * 100, zz * 100) / 7 % 100) > 25 ? 2 : 3; NIBBLETYPE Meta = (m_Noise.IntNoise2DInt(xx * 100, zz * 100) / 7 % 100) > 25 ? 2 : 3;
a_ChunkDesc.SetBlockTypeMeta(x, y, z, E_BLOCK_BIG_FLOWER, Meta); a_ChunkDesc.SetBlockTypeMeta(x, y, z, E_BLOCK_BIG_FLOWER, Meta);
a_ChunkDesc.SetBlockTypeMeta(x, y + 1, z, E_BLOCK_BIG_FLOWER, 8); a_ChunkDesc.SetBlockTypeMeta(x, y + 1, z, E_BLOCK_BIG_FLOWER, 0x8 | Meta);
a_ChunkDesc.SetHeight(x, z, static_cast<HEIGHTTYPE>(y + 1)); a_ChunkDesc.SetHeight(x, z, static_cast<HEIGHTTYPE>(y + 1));
} }
} }