All pastes #37163 Raw Edit

Anonymous

public text v1 · immutable
#37163 ·published 2006-01-18 02:49 UTC
rendered paste body
 import java.awt.Color;

public class SpiralFishEnviroment
{
	private static final int ENV_ROWS =11;
	private static final int ENV_COLS = ENV_ROWS;
	private static final int NUM_STEPS = ENV_ROWS * ENV_COLS + 2 ;
	private static final int DELAY = (50/ENV_ROWS*(ENV_ROWS+10)) ;

	public static void main(String[] args)
	    {
	        Location locstart = new Location(0,ENV_COLS -1);
	        BoundedEnv env = new BoundedEnv(ENV_ROWS, ENV_COLS);
            SpiralFish s1 = new SpiralFish(env, locstart, Direction.SOUTH, Color.CYAN);

	        SimpleMBSDisplay display = new SimpleMBSDisplay(env, DELAY);
	        display.showEnv();	        
	        
	        System.out.println("Enviroment is " + ENV_ROWS + " by " + ENV_COLS);
	        System.out.println("Number of steps till completion is " + NUM_STEPS);
	        System.out.println("Run Delay is " + DELAY);
	        
	        
	        Location loc1 = new Location(env.numRows() - env.numCols(),env.numCols() - 1);
	        Location loc2 = new Location(env.numRows() -1,env.numCols() -2);
	        Location loc3 = new Location(env.numRows() - 2,env.numCols() - env.numRows());
	        Location loc4 = new Location(env.numRows() - env.numCols(),env.numCols() - 10);
	        Location loc5 = new Location(env.numRows() - (env.numRows() -1),env.numCols() -2);
	        Location loc6 = new Location(env.numRows() - 2,env.numCols() -3);
	        Location loc7 = new Location(env.numRows() - 3,env.numCols() -10);
	        Location loc8 = new Location(env.numRows() - 10,env.numCols() -9);
	        Location loc9 = new Location(env.numRows() - 9,env.numCols() -3);
	        Location loc10 = new Location(env.numRows() - 3,env.numCols() -4);
	        Location loc11 = new Location(env.numRows() - 4,env.numCols() -9);
	        Location loc12 = new Location(env.numRows() - 9,env.numCols() -8);
	        Location loc13 = new Location(env.numRows() - 8,env.numCols() -4);
	        Location loc14 = new Location(env.numRows() - 4,env.numCols() -5);
	        Location loc15 = new Location(env.numRows() - 5,env.numCols() -8);
	        Location loc16 = new Location(env.numRows() - 8,env.numCols() -7);
	        Location loc17 = new Location(env.numRows() - 7,env.numCols() -5);
	        Location loc18 = new Location(env.numRows() - 5,env.numCols() -6);
	        Location loc19 = new Location(env.numRows() - 6,env.numCols() -7);
	        Location loc20 = new Location(env.numRows() - 7,env.numCols() -6);
	        Location locend = new Location(env.numRows() - 6,env.numCols() -6);

	        // Run the simulation for the specified number of steps.
	        for ( int i = 0; i < NUM_STEPS; i++ )
	        {
	            s1.act();



	            display.showEnv();
	            
	            if (s1.nextLocation().equals(loc1)) { 
	            	s1.changeDirection(Direction.SOUTH);
				}
	            if (s1.nextLocation().equals(loc2)) { 
	            	s1.changeDirection(Direction.WEST);
				}
	            if (s1.nextLocation().equals(loc3)) { 
	            	s1.changeDirection(Direction.NORTH);
				}
	            if (s1.nextLocation().equals(loc4)) { 
	            	s1.changeDirection(Direction.EAST);
				}
	            if (s1.nextLocation().equals(loc5)) { 
	            	s1.changeDirection(Direction.SOUTH);
				}
	            if (s1.nextLocation().equals(loc6)) { 
	            	s1.changeDirection(Direction.WEST);
				}
	            if (s1.nextLocation().equals(loc7)) { 
	            	s1.changeDirection(Direction.NORTH);
				}
	            if (s1.nextLocation().equals(loc8)) { 
	            	s1.changeDirection(Direction.EAST);
				}
	            if (s1.nextLocation().equals(loc9)) { 
	            	s1.changeDirection(Direction.SOUTH);
				}
	            if (s1.nextLocation().equals(loc10)) { 
	            	s1.changeDirection(Direction.WEST);
				}
	            if (s1.nextLocation().equals(loc11)) { 
	            	s1.changeDirection(Direction.NORTH);
				}
	            if (s1.nextLocation().equals(loc12)) { 
	            	s1.changeDirection(Direction.EAST);
				}
	            if (s1.nextLocation().equals(loc13)) { 
	            	s1.changeDirection(Direction.SOUTH);
				}
	            if (s1.nextLocation().equals(loc14)) { 
	            	s1.changeDirection(Direction.WEST);
				}
	            if (s1.nextLocation().equals(loc15)) { 
	            	s1.changeDirection(Direction.NORTH);
				}
	            if (s1.nextLocation().equals(loc16)) { 
	            	s1.changeDirection(Direction.EAST);
				}
	            if (s1.nextLocation().equals(loc17)) { 
	            	s1.changeDirection(Direction.SOUTH);
				}
	            if (s1.nextLocation().equals(loc18)) { 
	            	s1.changeDirection(Direction.WEST);
				}
	            if (s1.nextLocation().equals(loc19)) { 
	            	s1.changeDirection(Direction.NORTH);
				}
	            if (s1.nextLocation().equals(loc20)) { 
	            	s1.changeDirection(Direction.EAST);
				}
	            if (s1.location().equals(locend)) { 
	            
	               System.out.println("End!");
				
	            }
	        }
	    }
}