/* Copyright 2010, Joseph Bergin. All rights reserved.
 * License: Creative Commons Attribution-Noncommercial-Share Alike 3.0 United States License
 */

package alice.kareluser;

import org.alice.apis.moveandturn.AbstractCamera;
import org.alice.apis.moveandturn.MoveDirection;
import org.alice.apis.moveandturn.RollDirection;
import org.alice.apis.moveandturn.SymmetricPerspectiveCamera;
import org.alice.apis.moveandturn.TurnDirection;

import alice.kareltherobot.Direction;
import alice.kareltherobot.KarelWorld;
import alice.kareltherobot.Robot;

/**
 * An empty world for testing.
 * 
 * @author Joseph Bergin
 * 
 */
public class TestWorld extends KarelWorld
{

	public TestWorld()
	{
		
	}
	
	private Robot karel = new Robot(1, 1, Direction.NORTH, KarelWorld.INFINITE);

	/**
	 * Execute some task for the robot
	 * 
	 */
	@Override
	public void run()
	{
//		karel.move();
	}

	/**
	 * Set up the world (stage) for your robot
	 * 
	 */
	@Override
	public void setTheStage()
	{
		AbstractCamera camera = getCamera();
//		camera.turn(TurnDirection.BACKWARD, 30.0/360);
//		camera.move(MoveDirection.FORWARD, 6);
//		camera.turn(TurnDirection.LEFT, 123.75/360);
//		camera.move(MoveDirection.DOWN, 2);
//		camera.turn(TurnDirection.FORWARD, 60.0/360);
		
		moveCameraTo(5, 5, .3);
//		camera.turn(TurnDirection.BACKWARD, 90.0/360);
//		addRobot(karel);
//		camera.pointAt(karel);
//		cameraFollow(camera, karel);
//		this.placeBeepers(1, 1, 3);
//		this.placeWallEastOf(1, 1);
		
//		for(int street = 1; street <= 10; ++street){
//			for(int avenue = 1; avenue <= 10; ++avenue){
//				placeBeepers(street, avenue, 1);
//			}	
//		}		
//		this.saveWorld("manybeepers.kwld");

		this.readWorld("manybeepers.kwld");
	}

}
