diff options
Diffstat (limited to 'source/Blocks')
-rw-r--r-- | source/Blocks/BlockDropSpenser.h | 2 | ||||
-rw-r--r-- | source/Blocks/BlockHandler.cpp | 8 |
2 files changed, 9 insertions, 1 deletions
diff --git a/source/Blocks/BlockDropSpenser.h b/source/Blocks/BlockDropSpenser.h index e5572da8a..b7f20825d 100644 --- a/source/Blocks/BlockDropSpenser.h +++ b/source/Blocks/BlockDropSpenser.h @@ -31,7 +31,7 @@ public: a_BlockType = m_BlockType; // FIXME: Do not use cPiston class for dispenser placement! - a_BlockMeta = cPiston::RotationPitchToMetaData(a_Player->GetRotation(), 0); + a_BlockMeta = cPiston::RotationPitchToMetaData(a_Player->GetRotation(), a_Player->GetPitch()); return true; } } ; diff --git a/source/Blocks/BlockHandler.cpp b/source/Blocks/BlockHandler.cpp index 451ad6b91..3e97d1e9d 100644 --- a/source/Blocks/BlockHandler.cpp +++ b/source/Blocks/BlockHandler.cpp @@ -354,6 +354,14 @@ void cBlockHandler::DropBlock(cWorld * a_World, cEntity * a_Digger, int a_BlockX if (!Pickups.empty()) { + // Add random offset to the spawn position: + // Commented out until bug with pickups not spawning properly is fixed, see World.cpp + /* + int MicroX = (int)(a_BlockX * 32) + (r1.randInt(16) + r1.randInt(16) - 16); + int MicroY = (int)(a_BlockY * 32) + (r1.randInt(16) + r1.randInt(16) - 16); + int MicroZ = (int)(a_BlockZ * 32) + (r1.randInt(16) + r1.randInt(16) - 16); + */ + a_World->SpawnItemPickups(Pickups, a_BlockX, a_BlockY, a_BlockZ); } } |