AsciiMain.java 938 B
package main;
import model.Board;
import model.Move;
import model.Solver;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Deque;
public class AsciiMain
{
public static void main(String[] args) throws IOException
{
System.out.println("Enter level filename:");
String filename = new BufferedReader(new InputStreamReader(System.in)).readLine();
Board level = new Board(filename);
System.out.println("Starting board:");
System.out.println(level);
System.out.println("Solving...");
Solver solver = new Solver(level);
Deque<Move> moves = solver.solve(true);
if(moves == null)
{
System.out.println("This level has no solution!");
}
else
{
System.out.println("Solved! The solution is composed of "+moves.size()+" steps.");
for (Move m : moves)
{
System.out.println(m);
level.play(m);
System.out.println(level);
}
}
}
}