1
mirror of https://github.com/StarWishsama/Slimefun4.git synced 2024-09-20 11:45:51 +00:00

Huge stability and performance improvements (Ticks are skipped upon lag)

This commit is contained in:
TheBusyBiscuit 2019-10-04 14:19:57 +02:00
parent e772b55e83
commit b36f9cd3b5

View File

@ -155,30 +155,35 @@ public class CargoNet extends Network {
final Map<Integer, List<Location>> output = new HashMap<>();
Set<Location> combinedOutputNodes = outputNodes;
Set<Location> combinedOutputNodes = new HashSet<>();
combinedOutputNodes.addAll(outputNodes);
combinedOutputNodes.addAll(advancedOutputNodes);
List<Location> list = new ArrayList<>();
int lastFrequency = -1;
for (Location outputNode: combinedOutputNodes) {
Integer frequency = getFrequency(outputNode);
list.add(outputNode);
if (frequency != lastFrequency && lastFrequency != -1) {
output.merge(frequency, list, (list1, list2) -> {
list1.addAll(list2);
return list1;
output.merge(lastFrequency, list, (prev, next) -> {
prev.addAll(next);
return prev;
});
list.clear();
}
lastFrequency = frequency;
}
if (!list.isEmpty())
output.merge(lastFrequency, list, (list1, list2) -> {
list1.addAll(list2);
return list1;
if (!list.isEmpty()) {
output.merge(lastFrequency, list, (prev, next) -> {
prev.addAll(next);
return prev;
});
}
//Chest Terminal Stuff
final Set<Location> providers = new HashSet<>();