diff options
author | Tiger Wang <ziwei.tiger@hotmail.co.uk> | 2014-02-09 01:04:42 +0100 |
---|---|---|
committer | Tiger Wang <ziwei.tiger@hotmail.co.uk> | 2014-02-09 01:04:42 +0100 |
commit | f86f066615f4e4807941f863f6e749dc12ac01be (patch) | |
tree | a792dc877470a98030569204b3d32575da404d6d /src/Simulator/RedstoneSimulator.cpp | |
parent | Fixed a boat ASSERT (diff) | |
parent | Fixed a gcc warning in ManualBindings. (diff) | |
download | cuberite-f86f066615f4e4807941f863f6e749dc12ac01be.tar cuberite-f86f066615f4e4807941f863f6e749dc12ac01be.tar.gz cuberite-f86f066615f4e4807941f863f6e749dc12ac01be.tar.bz2 cuberite-f86f066615f4e4807941f863f6e749dc12ac01be.tar.lz cuberite-f86f066615f4e4807941f863f6e749dc12ac01be.tar.xz cuberite-f86f066615f4e4807941f863f6e749dc12ac01be.tar.zst cuberite-f86f066615f4e4807941f863f6e749dc12ac01be.zip |
Diffstat (limited to 'src/Simulator/RedstoneSimulator.cpp')
-rw-r--r-- | src/Simulator/RedstoneSimulator.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/Simulator/RedstoneSimulator.cpp b/src/Simulator/RedstoneSimulator.cpp index 05badf0d4..6b7ae3196 100644 --- a/src/Simulator/RedstoneSimulator.cpp +++ b/src/Simulator/RedstoneSimulator.cpp @@ -1112,12 +1112,13 @@ bool cRedstoneSimulator::IsPistonPowered(int a_BlockX, int a_BlockY, int a_Block // Pistons cannot be powered through their front face; this function verifies that a source meets this requirement int OldX = a_BlockX, OldY = a_BlockY, OldZ = a_BlockZ; + eBlockFace Face = cPiston::MetaDataToDirection(a_Meta); for (PoweredBlocksList::const_iterator itr = m_PoweredBlocks.begin(); itr != m_PoweredBlocks.end(); ++itr) { if (!itr->a_BlockPos.Equals(Vector3i(a_BlockX, a_BlockY, a_BlockZ))) { continue; } - AddFaceDirection(a_BlockX, a_BlockY, a_BlockZ, a_Meta); // Piston meta is based on what direction they face, so we can do this + AddFaceDirection(a_BlockX, a_BlockY, a_BlockZ, Face); if (!itr->a_SourcePos.Equals(Vector3i(a_BlockX, a_BlockY, a_BlockZ))) { @@ -1133,7 +1134,7 @@ bool cRedstoneSimulator::IsPistonPowered(int a_BlockX, int a_BlockY, int a_Block { if (!itr->a_BlockPos.Equals(Vector3i(a_BlockX, a_BlockY, a_BlockZ))) { continue; } - AddFaceDirection(a_BlockX, a_BlockY, a_BlockZ, a_Meta); + AddFaceDirection(a_BlockX, a_BlockY, a_BlockZ, Face); if (!itr->a_MiddlePos.Equals(Vector3i(a_BlockX, a_BlockY, a_BlockZ))) { |