diff options
author | Mattes D <github@xoft.cz> | 2015-09-25 15:24:52 +0200 |
---|---|---|
committer | Mattes D <github@xoft.cz> | 2015-09-25 15:24:52 +0200 |
commit | 02f65168b13ffa12f655315db0b35e8f56c838ad (patch) | |
tree | 47cff3719935d8e26a940a72a8015128ebaa9603 /src | |
parent | Merge pull request #2492 from SafwatHalaby/compileSh (diff) | |
parent | Lilypads drop when not on source water. (diff) | |
download | cuberite-02f65168b13ffa12f655315db0b35e8f56c838ad.tar cuberite-02f65168b13ffa12f655315db0b35e8f56c838ad.tar.gz cuberite-02f65168b13ffa12f655315db0b35e8f56c838ad.tar.bz2 cuberite-02f65168b13ffa12f655315db0b35e8f56c838ad.tar.lz cuberite-02f65168b13ffa12f655315db0b35e8f56c838ad.tar.xz cuberite-02f65168b13ffa12f655315db0b35e8f56c838ad.tar.zst cuberite-02f65168b13ffa12f655315db0b35e8f56c838ad.zip |
Diffstat (limited to 'src')
-rw-r--r-- | src/Blocks/BlockLilypad.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/Blocks/BlockLilypad.h b/src/Blocks/BlockLilypad.h index b2fb69309..18a576017 100644 --- a/src/Blocks/BlockLilypad.h +++ b/src/Blocks/BlockLilypad.h @@ -23,6 +23,22 @@ public: UNUSED(a_Meta); return 7; } + + + virtual bool CanBeAt(cChunkInterface & a_ChunkInterface, int a_RelX, int a_RelY, int a_RelZ, const cChunk & a_Chunk) override + { + if ((a_RelY < 1) || (a_RelY >= cChunkDef::Height)) + { + return false; + } + BLOCKTYPE UnderType; + NIBBLETYPE UnderMeta; + a_Chunk.GetBlockTypeMeta(a_RelX, a_RelY - 1, a_RelZ, UnderType, UnderMeta); + return ( + ((UnderType == E_BLOCK_STATIONARY_WATER) || (UnderType == E_BLOCK_WATER)) && // Water is below... + (UnderMeta == 0) // ... and it's a source + ); + } }; |