summaryrefslogtreecommitdiffstats
path: root/src/Blocks/BlockCauldron.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/Blocks/BlockCauldron.h')
-rw-r--r--src/Blocks/BlockCauldron.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/Blocks/BlockCauldron.h b/src/Blocks/BlockCauldron.h
index 5ec776df6..e0f86f4cb 100644
--- a/src/Blocks/BlockCauldron.h
+++ b/src/Blocks/BlockCauldron.h
@@ -61,8 +61,12 @@ public:
virtual void OnUpdate(cChunkInterface & a_ChunkInterface, cWorldInterface & a_WorldInterface, cBlockPluginInterface & a_PluginInterface, cChunk & a_Chunk, int a_RelX, int a_RelY, int a_RelZ) override
{
- if (IsBiomeNoDownfall(a_Chunk.GetBiomeAt(a_RelX, a_RelZ)) || !a_WorldInterface.IsWeatherWet())
+ int BlockX = a_RelX + a_Chunk.GetPosX() * cChunkDef::Width;
+ int BlockZ = a_RelZ + a_Chunk.GetPosZ() * cChunkDef::Width;
+ if (!a_WorldInterface.IsWeatherWetAt(BlockX, BlockZ) || (a_RelY != a_WorldInterface.GetHeight(BlockX, BlockZ)))
{
+ // It's not raining at our current location or we do not have a direct view of the sky
+ // We cannot eat the rain :(
return;
}