diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/Chunk.cpp | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/src/Chunk.cpp b/src/Chunk.cpp index 2e83f2b72..3897ea3a8 100644 --- a/src/Chunk.cpp +++ b/src/Chunk.cpp @@ -1018,20 +1018,23 @@ void cChunk::GrowMelonPumpkin(int a_RelX, int a_RelY, int a_RelZ, BLOCKTYPE a_Bl // Check if there's soil under the neighbor. We already know the neighbors are valid. Place produce if ok BLOCKTYPE Soil; - UnboundedRelGetBlock(a_RelX + x, a_RelY - 1, a_RelZ + z, Soil, BlockMeta); + VERIFY(UnboundedRelGetBlock(a_RelX + x, a_RelY - 1, a_RelZ + z, Soil, BlockMeta)); switch (Soil) { case E_BLOCK_DIRT: case E_BLOCK_GRASS: case E_BLOCK_FARMLAND: { - // DEBUG: This is here to catch FS #349 - melons growing over other crops. - LOG("Growing melon / pumpkin overwriting %s, growing on %s", + // Place a randomly-facing produce: + NIBBLETYPE Meta = (ProduceType == E_BLOCK_MELON) ? 0 : static_cast<NIBBLETYPE>(a_TickRandom.randInt(4) % 4); + LOGD("Growing melon / pumpkin at {%d, %d, %d} (<%d, %d> from stem), overwriting %s, growing on top of %s, meta %d", + a_RelX + x + m_PosX * cChunkDef::Width, a_RelY, a_RelZ + z + m_PosZ * cChunkDef::Width, + x, z, ItemTypeToString(BlockType[CheckType]).c_str(), - ItemTypeToString(Soil).c_str() + ItemTypeToString(Soil).c_str(), + Meta ); - // Place a randomly-facing produce: - UnboundedRelFastSetBlock(a_RelX + x, a_RelY, a_RelZ + z, ProduceType, (NIBBLETYPE)(a_TickRandom.randInt(4) % 4)); + VERIFY(UnboundedRelFastSetBlock(a_RelX + x, a_RelY, a_RelZ + z, ProduceType, Meta)); break; } } |