end of an era. stop randomizing movements

This commit is contained in:
Leijurv 2018-09-22 09:04:10 -07:00
parent e16bc5eca4
commit 15fa12fe08
No known key found for this signature in database
GPG Key ID: 44A3EA646EADAC6A

View File

@ -39,7 +39,6 @@ import net.minecraft.util.math.BlockPos;
import java.util.Collection;
import java.util.HashSet;
import java.util.Optional;
import java.util.Random;
/**
* The actual A* pathfinding
@ -50,8 +49,6 @@ public class AStarPathFinder extends AbstractNodeCostSearch implements Helper {
private final Optional<HashSet<BetterBlockPos>> favoredPositions;
private final Random random = new Random();
public AStarPathFinder(BlockPos start, Goal goal, Optional<Collection<BetterBlockPos>> favoredPositions) {
super(start, goal);
this.favoredPositions = favoredPositions.map(HashSet::new); // <-- okay this is epic
@ -107,8 +104,7 @@ public class AStarPathFinder extends AbstractNodeCostSearch implements Helper {
logDebug("Took " + (System.nanoTime() / 1000000L - startTime) + "ms, " + numMovementsConsidered + " movements considered");
return Optional.of(new Path(startNode, currentNode, numNodes, goal));
}
Movement[] possibleMovements = getConnectedPositions(currentNodePos, calcContext);//movement that we could take that start at currentNodePos, in random order
shuffle(possibleMovements);
Movement[] possibleMovements = getConnectedPositions(currentNodePos, calcContext);//movement that we could take that start at currentNodePos
for (Movement movementToGetToNeighbor : possibleMovements) {
if (movementToGetToNeighbor == null) {
continue;
@ -248,14 +244,4 @@ public class AStarPathFinder extends AbstractNodeCostSearch implements Helper {
MovementParkour.generate(pos, EnumFacing.SOUTH, calcContext),
};
}
private <T> void shuffle(T[] list) {
int len = list.length;
for (int i = 0; i < len; i++) {
int j = random.nextInt(len);
T t = list[j];
list[j] = list[i];
list[i] = t;
}
}
}