Skip to content

Commit

Permalink
Iterate reversed over actions
Browse files Browse the repository at this point in the history
  • Loading branch information
AlexProgrammerDE committed Apr 13, 2024
1 parent 17061b1 commit da5459d
Showing 1 changed file with 7 additions and 9 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,6 @@
import it.unimi.dsi.fastutil.objects.ObjectArrayList;
import it.unimi.dsi.fastutil.objects.ObjectCollection;
import it.unimi.dsi.fastutil.objects.ObjectHeapPriorityQueue;
import java.util.Collections;
import java.util.List;
import java.util.concurrent.CompletableFuture;
import java.util.function.Consumer;
Expand All @@ -39,18 +38,17 @@
public record RouteFinder(MinecraftGraph graph, GoalScorer scorer) {
private static List<WorldAction> getActionTrace(MinecraftRouteNode current) {
var actions = new ObjectArrayList<WorldAction>();
var previousElement = current;

var currentElement = current;
do {
var previousActions = new ObjectArrayList<>(previousElement.actions());
var previousActions = new ObjectArrayList<>(currentElement.actions());

// So they get executed in the right order
Collections.reverse(previousActions);
for (var action : previousActions) {
actions.add(0, action);
for (var i = previousActions.size() - 1; i >= 0; i--) {
actions.add(0, previousActions.get(i));
}

previousElement = previousElement.parent();
} while (previousElement != null);
currentElement = currentElement.parent();
} while (currentElement != null);

return actions;
}
Expand Down

0 comments on commit da5459d

Please sign in to comment.