import java.awt.*;
import java.io.*;
import AgentWorld.*;

public class RunAgentWorld 
{
  public static void main(String args[])
  {
    try 
    {  AgentWindow aw = new AgentWindow(true);

       aw.addAnonymousAssassins(2); // These are red.
       // The agent's with memory are used (except for ShavlikPlayer,
       // for which only a memoryless version was written).
       aw.addPlayer(new AsherPlayer(aw,    false, true), "Asher",    Color.blue);
       aw.addPlayer(new BebeauPlayer(aw,   false, true), "Bebeau",   Color.white);
       aw.addPlayer(new DomowiczPlayer(aw, false, true), "Domowicz", Color.orange);
       aw.addPlayer(new GoecksPlayer(aw,   false, true), "Goecks",   Color.magenta);
       aw.addPlayer(new HadrianPlayer(aw,  false, true), "Hadrian",  Color.cyan);
       aw.addPlayer(new JaideepPlayer(aw,  false, true), "Jaideep",  Color.lightGray);
       aw.addPlayer(new LaurentPlayer(aw,  false, true), "Laurent",  Color.gray);
       aw.addPlayer(new LindseyPlayer(aw,  false, true), "Lindsey",  Color.pink);
       aw.addPlayer(new SeeronkPlayer(aw,  false, true), "Seeronk",  Color.green);
       aw.addPlayer(new ShavlikPlayer(aw,  false),       "Shavlik",  Color.yellow);
       aw.addPlayer(new WinstoncPlayer(aw, false, true), "Winstonc", Color.black);

       aw.addMinerals(  100);
       aw.addVegetables(100);

       aw.playThisManyGamesEachOfThisManyTimeSteps(100, 1000);
    }
    
    catch(Exception e)
    {
      Utils.println("Exception encountered in main method: " + e);
      Utils.println("The following indicates the location of the problem:");
      e.printStackTrace(System.err);
      Utils.exit(-1);
    }
  }

}
