summaryrefslogtreecommitdiffstats
path: root/src/Simulator
diff options
context:
space:
mode:
authorTiger Wang <ziwei.tiger@hotmail.co.uk>2014-12-18 01:22:46 +0100
committerTiger Wang <ziwei.tiger@hotmail.co.uk>2014-12-18 01:22:46 +0100
commitdd1df3b6f740fad699855de26d3f7f512008671b (patch)
treed5dba26fd9cc2241eeb4bd5cd19af24c1684422d /src/Simulator
parentMerge pull request #1677 from mc-server/GlobalFixes (diff)
downloadcuberite-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')
-rw-r--r--src/Simulator/IncrementalRedstoneSimulator.cpp6
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);
}
}
}