|
|
|
@ -12,18 +12,18 @@ public class NavigationManager {
@@ -12,18 +12,18 @@ public class NavigationManager {
|
|
|
|
|
private static final int stepHeight = 2; |
|
|
|
|
|
|
|
|
|
public static void pathfind(AbstractCharacter character, Vector3fImmutable goal){ |
|
|
|
|
try { |
|
|
|
|
ArrayList<Vector3fImmutable> path = getOptimizedPath(getPath(character.loc, goal), getPath(goal, character.loc)); |
|
|
|
|
if (path.isEmpty()) { |
|
|
|
|
character.destination = goal; |
|
|
|
|
return; //no points to walk to
|
|
|
|
|
} |
|
|
|
|
//try {
|
|
|
|
|
// ArrayList<Vector3fImmutable> path = getOptimizedPath(getPath(character.loc, goal), getPath(goal, character.loc));
|
|
|
|
|
// if (path.isEmpty()) {
|
|
|
|
|
// character.destination = goal;
|
|
|
|
|
// return; //no points to walk to
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
character.destination = path.get(0); |
|
|
|
|
// character.destination = path.get(0);
|
|
|
|
|
|
|
|
|
|
} catch(Exception e){ |
|
|
|
|
//} catch(Exception e){
|
|
|
|
|
//something failed
|
|
|
|
|
} |
|
|
|
|
//}
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public static ArrayList<Vector3fImmutable> getOptimizedPath(ArrayList<Vector3fImmutable> startToGoal, ArrayList<Vector3fImmutable> goalToStart) { |
|
|
|
|