package ch.epfl.maze.main;

import ch.epfl.maze.graphics.Display;
import ch.epfl.maze.simulation.Simulation;
import ch.epfl.maze.util.SimulationGenerator;

/**
 * Mini-project main program that will run the simulations on a {@code Display}.
 *
 * @author EPFL
 */
public class Program {

    public static final String DEFAULT_SIM = "maze";

    /**
     * Runs one of the two available simulations
     *
     * @see ch.epfl.maze.util.SimulationGenerator#getMazeSimulation()
     * @see ch.epfl.maze.util.SimulationGenerator#getMultiPreyDaedalusSimulation()
     */
    public static void main(String[] args) {
        String simName = args.length > 0 ? args[0] : DEFAULT_SIM;
        Simulation simulation = SimulationGenerator.getSimulation(simName);

        Display display = new Display(simulation);
        display.run();
    }

}