diff options
author | Mattes D <github@xoft.cz> | 2014-02-04 22:10:44 +0100 |
---|---|---|
committer | Mattes D <github@xoft.cz> | 2014-02-04 22:10:44 +0100 |
commit | dad49c6fddaa361cd4f98b095cfeb0e2d2e1a435 (patch) | |
tree | 01bca60c90c1d5a6a5d00429a95bb99b3dfa9ac1 /src/Simulator/RedstoneSimulator.cpp | |
parent | Fixed chest placement. (diff) | |
parent | Fix gcc not having operator ++ on enums (diff) | |
download | cuberite-dad49c6fddaa361cd4f98b095cfeb0e2d2e1a435.tar cuberite-dad49c6fddaa361cd4f98b095cfeb0e2d2e1a435.tar.gz cuberite-dad49c6fddaa361cd4f98b095cfeb0e2d2e1a435.tar.bz2 cuberite-dad49c6fddaa361cd4f98b095cfeb0e2d2e1a435.tar.lz cuberite-dad49c6fddaa361cd4f98b095cfeb0e2d2e1a435.tar.xz cuberite-dad49c6fddaa361cd4f98b095cfeb0e2d2e1a435.tar.zst cuberite-dad49c6fddaa361cd4f98b095cfeb0e2d2e1a435.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))) { |