import com.codingame.gameengine.runner.SoloGameRunner;

public class Main
{
  public static void main(String[] args)
  {
    int argc = args.length;
    SoloGameRunner gameRunner = new SoloGameRunner();

    if (argc > 0) gameRunner.setAgent(args[0]);
    //else gameRunner.setAgent(Player.class);
    else gameRunner.setAgent(PlayerAStar.class);
    //else gameRunner.setAgent(PlayerRandom.class);


    if (argc > 1) 
      gameRunner.setTestCase(args[1]);
    else {
      //gameRunner.setTestCase("test1.json"); // T,V - A few steps away
      //gameRunner.setTestCase("test2.json");  // T,V - Definitely more steps away
      //gameRunner.setTestCase("test3.json");  // T,V - Through the land of bridges

      //gameRunner.setTestCase("test4.json");  // T,V - Deadwater Drop
      //gameRunner.setTestCase("test5.json");  // T,V - Riverrun

      gameRunner.setTestCase("test6.json");  // T - Snow maze
      //gameRunner.setTestCase("test7.json");  // V - Snow maze

      //gameRunner.setTestCase("test8.json");  // V - Baldur's Gate, medium, AR0016SR
      //gameRunner.setTestCase("test9.json");  // T - 8x8 rooms, large, wide
      //gameRunner.setTestCase("test10.json"); // V - 8x8 rooms, large, tall
      //gameRunner.setTestCase("test11.json"); // T - 8x8 rooms, small, 3 components
      //gameRunner.setTestCase("test12.json"); // V - 8x8 rooms, small, 4 components
      //gameRunner.setTestCase("test13.json"); // T - Maze, medium, few components and landmarks
      //gameRunner.setTestCase("test14.json"); // V - Maze, medium, more components and landmarks
      //gameRunner.setTestCase("test15.json"); // T - Less landmarks than components, medium
      //gameRunner.setTestCase("test16.json"); // V - Less landmarks than components, large
      //gameRunner.setTestCase("test17.json"); // T - New York, 15 landmarks
      //gameRunner.setTestCase("test18.json"); // V - New York, 20 landmarks
      //gameRunner.setTestCase("test19.json"); // T,V - Paris
      // gameRunner.setTestCase("test20.json"); // T,V - Baldur's Gate, large, AR0013SR
      //gameRunner.setTestCase("test21.json"); // V - Random 40%, large
      //gameRunner.setTestCase("test22.json"); // T,V - Maze with narrow corridors, large
      //
    }
    gameRunner.start();
  }
}
