diff options
author | Matej Dipčár <492666@mail.muni.cz> | 2022-09-21 15:00:05 +0200 |
---|---|---|
committer | Matej Dipčár <492666@mail.muni.cz> | 2022-09-23 02:15:48 +0200 |
commit | 44024669c0f76e7c8e453dd4cbd0f36aee409be9 (patch) | |
tree | 51759796810b296613c3c87839854cb2881f7165 /src/main/java/gregtech/api | |
parent | cc5a1189c04cfb7ccc0ae29d9e104c729ac8802b (diff) | |
download | GT5-Unofficial-44024669c0f76e7c8e453dd4cbd0f36aee409be9.tar.gz GT5-Unofficial-44024669c0f76e7c8e453dd4cbd0f36aee409be9.tar.bz2 GT5-Unofficial-44024669c0f76e7c8e453dd4cbd0f36aee409be9.zip |
Move advanced redstone API to Wireless Base
Diffstat (limited to 'src/main/java/gregtech/api')
-rw-r--r-- | src/main/java/gregtech/api/GregTech_API.java | 52 |
1 files changed, 0 insertions, 52 deletions
diff --git a/src/main/java/gregtech/api/GregTech_API.java b/src/main/java/gregtech/api/GregTech_API.java index 053d8c6236..ed8610982d 100644 --- a/src/main/java/gregtech/api/GregTech_API.java +++ b/src/main/java/gregtech/api/GregTech_API.java @@ -42,7 +42,6 @@ import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Utility; import gregtech.api.world.GT_Worldgen; -import gregtech.common.covers.redstone.GT_Cover_AdvancedRedstoneReceiverBase; import gregtech.common.items.GT_IntegratedCircuit_Item; import java.util.ArrayList; import java.util.Collection; @@ -55,7 +54,6 @@ import java.util.List; import java.util.Locale; import java.util.Map; import java.util.TreeMap; -import java.util.UUID; import java.util.concurrent.ConcurrentHashMap; import java.util.function.BiFunction; import java.util.function.IntFunction; @@ -180,56 +178,6 @@ public class GregTech_API { */ public static final Map<String, Map<Integer, Map<Long, Byte>>> sAdvancedWirelessRedstone = new ConcurrentHashMap<>(); - public static Byte getAdvancedRedstone(UUID uuid, int frequency, GT_Cover_AdvancedRedstoneReceiverBase.GateMode mode) { - Map<Integer, Map<Long, Byte>> frequencies = GregTech_API.sAdvancedWirelessRedstone.get(String.valueOf(uuid)); - if (frequencies == null) return 0; - - Map<Long, Byte> signals = frequencies.get(frequency); - if (signals == null) signals = new ConcurrentHashMap<>(); - - switch (mode) { - case AND: - return (byte) (signals.values().stream() - .map(signal -> signal > 0) - .reduce(true, (signalA, signalB) -> signalA && signalB) ? 15 : 0); - case NAND: - return (byte) (signals.values().stream() - .map(signal -> signal > 0) - .reduce(true, (signalA, signalB) -> signalA && signalB) ? 0 : 15); - case OR: - return (byte) (signals.values().stream() - .map(signal -> signal > 0) - .reduce(false, (signalA, signalB) -> signalA || signalB) ? 15 : 0); - case NOR: - return (byte) (signals.values().stream() - .map(signal -> signal > 0) - .reduce(false, (signalA, signalB) -> signalA || signalB) ? 0 : 15); - default: - return 0; - } - } - - public static void resetAdvancedRedstoneFrequency(UUID uuid, int frequency) { - Map<Integer, Map<Long, Byte>> frequencies = GregTech_API.sAdvancedWirelessRedstone.get(String.valueOf(uuid)); - if (frequencies == null) return; - frequencies.computeIfPresent(frequency, (k, longByteMap) -> new ConcurrentHashMap<>()); - } - - public static void removeAdvancedRedstone(UUID uuid, int frequency, long hash) { - Map<Integer, Map<Long, Byte>> frequencies = GregTech_API.sAdvancedWirelessRedstone.get(String.valueOf(uuid)); - if (frequencies == null) return; - frequencies.computeIfPresent(frequency, (freq, longByteMap) -> { - longByteMap.remove(hash); - return longByteMap.isEmpty() ? null : longByteMap; - }); - } - - public static void setAdvancedRedstone(UUID uuid, int frequency, long hash, byte value) { - Map<Integer, Map<Long, Byte>> frequencies = GregTech_API.sAdvancedWirelessRedstone.computeIfAbsent(String.valueOf(uuid), k -> new ConcurrentHashMap<>()); - Map<Long, Byte> signals = frequencies.computeIfAbsent(frequency, k -> new ConcurrentHashMap<>()); - signals.put(hash, value); - } - /** * x hashed into first 20 bytes * y hashed into second 20 bytes |