1
0

Pressure plates can be placed on fences and hoppers (#3796)

This commit is contained in:
Bond-009 2017-06-22 21:11:46 +02:00 committed by Mattes D
parent ea6660721b
commit 8484d05d65

View File

@ -23,12 +23,31 @@ public:
virtual bool CanBeAt(cChunkInterface & a_ChunkInterface, int a_RelX, int a_RelY, int a_RelZ, const cChunk & a_Chunk) override
{
if (a_RelY <= 0)
if (a_RelY - 1 <= 0)
{
return false;
}
return (cBlockInfo::FullyOccupiesVoxel(a_Chunk.GetBlock(a_RelX, a_RelY - 1, a_RelZ)));
// TODO: check if the block is upside-down slab or upside-down stairs
BLOCKTYPE Block = a_Chunk.GetBlock(a_RelX, a_RelY - 1, a_RelZ);
switch (Block)
{
case E_BLOCK_ACACIA_FENCE:
case E_BLOCK_BIRCH_FENCE:
case E_BLOCK_DARK_OAK_FENCE:
case E_BLOCK_FENCE:
case E_BLOCK_HOPPER:
case E_BLOCK_JUNGLE_FENCE:
case E_BLOCK_NETHER_BRICK_FENCE:
case E_BLOCK_SPRUCE_FENCE:
{
return true;
}
default:
{
return (!cBlockInfo::IsTransparent(Block));
}
}
}
virtual ColourID GetMapBaseColourID(NIBBLETYPE a_Meta) override