From 87c89a172782c5ea8e2114931bd48f9aa03543ce Mon Sep 17 00:00:00 2001 From: Lane Kolbly Date: Fri, 25 Aug 2017 04:56:01 -0500 Subject: Bed piston fix (#3956) * Threaded world interface into ConvertBlockToPickups * Changed how cBlockPiston::PushBlocks sets the old block to air, so that the block exists for the DropBlock call. * Removed unused a_Digger argument. * Removed incorrect comment * This time actually removed a_Digger references. --- src/Blocks/BlockPiston.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'src/Blocks/BlockPiston.cpp') diff --git a/src/Blocks/BlockPiston.cpp b/src/Blocks/BlockPiston.cpp index eda155265..56d335044 100644 --- a/src/Blocks/BlockPiston.cpp +++ b/src/Blocks/BlockPiston.cpp @@ -115,9 +115,7 @@ void cBlockPistonHandler::PushBlocks( for (auto & moveBlockPos : sortedBlocks) { a_World.GetBlockTypeMeta(moveBlockPos.x, moveBlockPos.y, moveBlockPos.z, moveBlock, moveMeta); - a_World.SetBlock(moveBlockPos.x, moveBlockPos.y, moveBlockPos.z, E_BLOCK_AIR, 0); - moveBlockPos += a_PushDir; if (cBlockInfo::IsPistonBreakable(moveBlock)) { // Block is breakable, drop it @@ -130,10 +128,13 @@ void cBlockPistonHandler::PushBlocks( moveBlockPos.x, moveBlockPos.y, moveBlockPos.z ); } + a_World.SetBlock(moveBlockPos.x, moveBlockPos.y, moveBlockPos.z, E_BLOCK_AIR, 0); } else { // Not breakable, just move it + a_World.SetBlock(moveBlockPos.x, moveBlockPos.y, moveBlockPos.z, E_BLOCK_AIR, 0); + moveBlockPos += a_PushDir; a_World.SetBlock(moveBlockPos.x, moveBlockPos.y, moveBlockPos.z, moveBlock, moveMeta); } } -- cgit v1.2.3