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:
parent
e772b55e83
commit
b36f9cd3b5
@ -155,30 +155,35 @@ public class CargoNet extends Network {
|
|||||||
|
|
||||||
final Map<Integer, List<Location>> output = new HashMap<>();
|
final Map<Integer, List<Location>> output = new HashMap<>();
|
||||||
|
|
||||||
Set<Location> combinedOutputNodes = outputNodes;
|
Set<Location> combinedOutputNodes = new HashSet<>();
|
||||||
|
combinedOutputNodes.addAll(outputNodes);
|
||||||
combinedOutputNodes.addAll(advancedOutputNodes);
|
combinedOutputNodes.addAll(advancedOutputNodes);
|
||||||
|
|
||||||
List<Location> list = new ArrayList<>();
|
List<Location> list = new ArrayList<>();
|
||||||
int lastFrequency = -1;
|
int lastFrequency = -1;
|
||||||
|
|
||||||
for (Location outputNode: combinedOutputNodes) {
|
for (Location outputNode: combinedOutputNodes) {
|
||||||
Integer frequency = getFrequency(outputNode);
|
Integer frequency = getFrequency(outputNode);
|
||||||
list.add(outputNode);
|
list.add(outputNode);
|
||||||
|
|
||||||
if (frequency != lastFrequency && lastFrequency != -1) {
|
if (frequency != lastFrequency && lastFrequency != -1) {
|
||||||
output.merge(frequency, list, (list1, list2) -> {
|
output.merge(lastFrequency, list, (prev, next) -> {
|
||||||
list1.addAll(list2);
|
prev.addAll(next);
|
||||||
return list1;
|
return prev;
|
||||||
});
|
});
|
||||||
|
|
||||||
list.clear();
|
list.clear();
|
||||||
}
|
}
|
||||||
|
|
||||||
lastFrequency = frequency;
|
lastFrequency = frequency;
|
||||||
}
|
}
|
||||||
if (!list.isEmpty())
|
|
||||||
output.merge(lastFrequency, list, (list1, list2) -> {
|
if (!list.isEmpty()) {
|
||||||
list1.addAll(list2);
|
output.merge(lastFrequency, list, (prev, next) -> {
|
||||||
return list1;
|
prev.addAll(next);
|
||||||
|
return prev;
|
||||||
});
|
});
|
||||||
|
}
|
||||||
|
|
||||||
//Chest Terminal Stuff
|
//Chest Terminal Stuff
|
||||||
final Set<Location> providers = new HashSet<>();
|
final Set<Location> providers = new HashSet<>();
|
||||||
|
Loading…
Reference in New Issue
Block a user