|  | @ -9,6 +9,7 @@ import math | 
			
		
	
		
		
			
				
					|  |  | from queue import PriorityQueue as pq |  |  | from queue import PriorityQueue as pq | 
			
		
	
		
		
			
				
					|  |  | 
 |  |  | 
 | 
			
		
	
		
		
			
				
					|  |  | DEBUG=True |  |  | DEBUG=True | 
			
		
	
		
		
			
				
					|  |  |  |  |  | # DEBUG=False | 
			
		
	
		
		
			
				
					|  |  | 
 |  |  | 
 | 
			
		
	
		
		
			
				
					|  |  | class SquareType(Enum): |  |  | class SquareType(Enum): | 
			
		
	
		
		
			
				
					|  |  |     AISLE = 0 |  |  |     AISLE = 0 | 
			
		
	
	
		
		
			
				
					|  | @ -62,7 +63,6 @@ def nextSquare(passenger, grid): | 
			
		
	
		
		
			
				
					|  |  | 
 |  |  | 
 | 
			
		
	
		
		
			
				
					|  |  |     if passenger.inter == None: |  |  |     if passenger.inter == None: | 
			
		
	
		
		
			
				
					|  |  |         dest = passenger.dest |  |  |         dest = passenger.dest | 
			
		
	
		
		
			
				
					|  |  |         print("dest") |  |  |  | 
			
		
	
		
		
			
				
					|  |  |     else: |  |  |     else: | 
			
		
	
		
		
			
				
					|  |  |         dest = passenger.inter |  |  |         dest = passenger.inter | 
			
		
	
		
		
			
				
					|  |  | 
 |  |  | 
 | 
			
		
	
	
		
		
			
				
					|  | @ -75,8 +75,9 @@ def nextSquare(passenger, grid): | 
			
		
	
		
		
			
				
					|  |  | 
 |  |  | 
 | 
			
		
	
		
		
			
				
					|  |  |     mn = mooreNeighbourhood(passenger.curr) |  |  |     mn = mooreNeighbourhood(passenger.curr) | 
			
		
	
		
		
			
				
					|  |  |     for (i, man) in enumerate(mn): |  |  |     for (i, man) in enumerate(mn): | 
			
		
	
		
		
			
				
					
					|  |  |         q.put((1, man, i)) |  |  |         if (grid[passenger.curr[0]][passenger.curr[1]].typ != SquareType.SEAT or man[1] == passenger.curr[1]) and grid[man[0]][man[1]].typ != SquareType.WALL: | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |         dist[man[0]][man[1]] = 1 |  |  |             q.put((1, man, i)) | 
			
				
				
			
		
	
		
		
	
		
		
	
		
		
			
				
					|  |  |  |  |  |             dist[man[0]][man[1]] = 1 | 
			
		
	
		
		
			
				
					|  |  | 
 |  |  | 
 | 
			
		
	
		
		
			
				
					|  |  |     while not q.empty(): |  |  |     while not q.empty(): | 
			
		
	
		
		
			
				
					|  |  |         u = q.get() |  |  |         u = q.get() | 
			
		
	
	
		
		
			
				
					|  | @ -84,7 +85,7 @@ def nextSquare(passenger, grid): | 
			
		
	
		
		
			
				
					|  |  |             return mn[u[2]] |  |  |             return mn[u[2]] | 
			
		
	
		
		
			
				
					|  |  |         for x in mooreNeighbourhood(u[1]): |  |  |         for x in mooreNeighbourhood(u[1]): | 
			
		
	
		
		
			
				
					|  |  |             alt = 0 |  |  |             alt = 0 | 
			
		
	
		
		
			
				
					
					|  |  |             if grid[x[0]][x[1]].typ == SquareType.SEAT: |  |  |             if grid[x[0]][x[1]].typ == SquareType.SEAT or grid[u[1][0]][u[1][1]].typ == SquareType.SEAT: | 
			
				
				
			
		
	
		
		
	
		
		
			
				
					|  |  |                 alt = dist[u[1][0]][u[1][1]] + 5 |  |  |                 alt = dist[u[1][0]][u[1][1]] + 5 | 
			
		
	
		
		
			
				
					|  |  |             else: |  |  |             else: | 
			
		
	
		
		
			
				
					|  |  |                 alt = dist[u[1][0]][u[1][1]] + 1 |  |  |                 alt = dist[u[1][0]][u[1][1]] + 1 | 
			
		
	
	
		
		
			
				
					|  | @ -141,8 +142,7 @@ passengers = GenPassList() | 
			
		
	
		
		
			
				
					|  |  | # passengers.reverse() |  |  | # passengers.reverse() | 
			
		
	
		
		
			
				
					|  |  | rnd.shuffle(passengers) |  |  | rnd.shuffle(passengers) | 
			
		
	
		
		
			
				
					|  |  | toad = 0 |  |  | toad = 0 | 
			
		
	
		
		
			
				
					
					|  |  | btime = 10 #passengers board every btime ticks |  |  | btime = 3 #passengers board every btime ticks | 
			
				
				
			
		
	
		
		
			
				
					|  |  | 
 |  |  |  | 
			
		
	
		
		
	
		
		
			
				
					|  |  | 
 |  |  | 
 | 
			
		
	
		
		
			
				
					|  |  | 
 |  |  | 
 | 
			
		
	
		
		
			
				
					|  |  | def nunty(x): |  |  | def nunty(x): | 
			
		
	
	
		
		
			
				
					|  | @ -212,7 +212,6 @@ def tick(t): | 
			
		
	
		
		
			
				
					|  |  |             man.shuffled-=1 |  |  |             man.shuffled-=1 | 
			
		
	
		
		
			
				
					|  |  |     if DEBUG: |  |  |     if DEBUG: | 
			
		
	
		
		
			
				
					|  |  |         time.sleep(0.05) |  |  |         time.sleep(0.05) | 
			
		
	
		
		
			
				
					|  |  |         # time.sleep(0.05) |  |  |  | 
			
		
	
		
		
			
				
					|  |  |         os.system("clear") |  |  |         os.system("clear") | 
			
		
	
		
		
			
				
					|  |  |     if done and toad >= len(passengers): |  |  |     if done and toad >= len(passengers): | 
			
		
	
		
		
			
				
					|  |  |         print("Number of ticks: " + str(t)) |  |  |         print("Number of ticks: " + str(t)) | 
			
		
	
	
		
		
			
				
					|  | 
 |