Most of this is just package refactors. However GreedyStrategy is now HeuristicStrategy, which takes a bunch of Heuristics, applies them to pretty much every possible move, and then picks the best one.
You can get a List of all the Heuristics by asking Heuristic.getHeuristics().
HeuristicStrategy also has a special constructor that takes a Set mapping to the indices of getHeurstics(). Basically I did that so that it would be really easy to map a bunch of check boxes to it.
Heuristics all also have a getDescription and getName method that you could use.
Most of this is just package refactors. However GreedyStrategy is now HeuristicStrategy, which takes a bunch of Heuristics, applies them to pretty much every possible move, and then picks the best one.
You can get a List of all the Heuristics by asking Heuristic.getHeuristics().
HeuristicStrategy also has a special constructor that takes a Set mapping to the indices of getHeurstics(). Basically I did that so that it would be really easy to map a bunch of check boxes to it.
Heuristics all also have a getDescription and getName method that you could use.