diff options
author | Tiger Wang <ziwei.tiger@hotmail.co.uk> | 2014-12-18 01:22:46 +0100 |
---|---|---|
committer | Tiger Wang <ziwei.tiger@hotmail.co.uk> | 2014-12-18 01:22:46 +0100 |
commit | dd1df3b6f740fad699855de26d3f7f512008671b (patch) | |
tree | d5dba26fd9cc2241eeb4bd5cd19af24c1684422d /src/Simulator/IncrementalRedstoneSimulator.cpp | |
parent | Merge pull request #1677 from mc-server/GlobalFixes (diff) | |
download | cuberite-dd1df3b6f740fad699855de26d3f7f512008671b.tar cuberite-dd1df3b6f740fad699855de26d3f7f512008671b.tar.gz cuberite-dd1df3b6f740fad699855de26d3f7f512008671b.tar.bz2 cuberite-dd1df3b6f740fad699855de26d3f7f512008671b.tar.lz cuberite-dd1df3b6f740fad699855de26d3f7f512008671b.tar.xz cuberite-dd1df3b6f740fad699855de26d3f7f512008671b.tar.zst cuberite-dd1df3b6f740fad699855de26d3f7f512008671b.zip |
Diffstat (limited to 'src/Simulator/IncrementalRedstoneSimulator.cpp')
-rw-r--r-- | src/Simulator/IncrementalRedstoneSimulator.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/Simulator/IncrementalRedstoneSimulator.cpp b/src/Simulator/IncrementalRedstoneSimulator.cpp index 8a56287a8..544a0689d 100644 --- a/src/Simulator/IncrementalRedstoneSimulator.cpp +++ b/src/Simulator/IncrementalRedstoneSimulator.cpp @@ -2074,9 +2074,11 @@ void cIncrementalRedstoneSimulator::SetSourceUnpowered(int a_RelSourceX, int a_R for (const auto & itr : BlocksPotentiallyUnpowered) { - if (!AreCoordsPowered(itr.x, itr.y, itr.z)) + auto Neighbour = a_Chunk->GetRelNeighborChunk(itr.x, itr.z); + if (!AreCoordsPowered(itr.x, itr.y, itr.z) && (Neighbour->GetBlock(itr) != E_BLOCK_REDSTONE_REPEATER_ON)) { - SetSourceUnpowered(itr.x, itr.y, itr.z, a_Chunk->GetRelNeighborChunk(itr.x, itr.z)); + // Repeaters time themselves with regards to unpowering; ensure we don't do it for them + SetSourceUnpowered(itr.x, itr.y, itr.z, Neighbour); } } } |