aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/main/java/gregtech/common/covers/redstone/GT_Cover_AdvancedRedstoneTransmitterBase.java11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/main/java/gregtech/common/covers/redstone/GT_Cover_AdvancedRedstoneTransmitterBase.java b/src/main/java/gregtech/common/covers/redstone/GT_Cover_AdvancedRedstoneTransmitterBase.java
index 7e5232c59b..ade9e2fb80 100644
--- a/src/main/java/gregtech/common/covers/redstone/GT_Cover_AdvancedRedstoneTransmitterBase.java
+++ b/src/main/java/gregtech/common/covers/redstone/GT_Cover_AdvancedRedstoneTransmitterBase.java
@@ -26,6 +26,7 @@ import net.minecraft.world.World;
import net.minecraftforge.fluids.Fluid;
import javax.annotation.Nonnull;
+import java.util.Objects;
import java.util.UUID;
public class GT_Cover_AdvancedRedstoneTransmitterBase extends GT_CoverBehaviorBase<GT_Cover_AdvancedRedstoneTransmitterBase.TransmitterData> {
@@ -180,12 +181,21 @@ public class GT_Cover_AdvancedRedstoneTransmitterBase extends GT_CoverBehaviorBa
@Nonnull
@Override
public ISerializableObject readFromPacket(ByteArrayDataInput aBuf, EntityPlayerMP aPlayer) {
+ int oldFrequency = frequency;
+ UUID oldUuid = uuid;
+ boolean oldInvert = invert;
+
frequency = aBuf.readInt();
if (aBuf.readBoolean()) {
uuid = new UUID(aBuf.readLong(), aBuf.readLong());
}
invert = aBuf.readBoolean();
+ if (oldFrequency != frequency || !Objects.equals(oldUuid, uuid) || oldInvert != invert) {
+ GregTech_API.resetAdvancedRedstoneFrequency(uuid, frequency);
+ GregTech_API.resetAdvancedRedstoneFrequency(oldUuid, oldFrequency);
+ }
+
return this;
}
}
@@ -284,7 +294,6 @@ public class GT_Cover_AdvancedRedstoneTransmitterBase extends GT_CoverBehaviorBa
privateButton.setChecked(coverVariable.uuid != null);
invertButton.setChecked(coverVariable.invert);
resetTextBox(frequencyBox);
- GregTech_API.resetAdvancedRedstoneFrequency(coverVariable.uuid, coverVariable.frequency);
}
@Override