mirror of
https://git.huckle.dev/Huckles-Minecraft-Archive/LCE-Revelations.git
synced 2026-05-26 22:44:38 +00:00
Fix pistons permanently breaking server-wide on dedicated servers
triggerEvent() set ignoreUpdate to true at the start but three early return paths (lines 221, 225, 250) skipped the reset at the end. Once any of these paths was hit (common with fast redstone clocks where the signal state changes between event queuing and processing), the TLS flag stayed true permanently, blocking all piston neighbor updates for the rest of the server session.
This commit is contained in:
@@ -218,10 +218,12 @@ bool PistonBaseTile::triggerEvent(Level *level, int x, int y, int z, int param1,
|
||||
if (extend && param1 == TRIGGER_CONTRACT)
|
||||
{
|
||||
level->setData(x, y, z, facing | EXTENDED_BIT, UPDATE_CLIENTS);
|
||||
ignoreUpdate(false);
|
||||
return false;
|
||||
}
|
||||
else if (!extend && param1 == TRIGGER_EXTEND)
|
||||
{
|
||||
ignoreUpdate(false);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@@ -247,6 +249,7 @@ bool PistonBaseTile::triggerEvent(Level *level, int x, int y, int z, int param1,
|
||||
}
|
||||
else
|
||||
{
|
||||
ignoreUpdate(false);
|
||||
return false;
|
||||
}
|
||||
PIXEndNamedEvent();
|
||||
|
||||
Reference in New Issue
Block a user