From addd28d162bd8544eaa146dd9d602813a797677a Mon Sep 17 00:00:00 2001 From: iamsosmart19 Date: Thu, 24 Mar 2022 10:42:55 +1100 Subject: [PATCH] Added wall blocking, seat delay --- main.py | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/main.py b/main.py index 4517e7d..069cb9b 100644 --- a/main.py +++ b/main.py @@ -9,6 +9,7 @@ import math from queue import PriorityQueue as pq DEBUG=True +# DEBUG=False class SquareType(Enum): AISLE = 0 @@ -62,7 +63,6 @@ def nextSquare(passenger, grid): if passenger.inter == None: dest = passenger.dest - print("dest") else: dest = passenger.inter @@ -75,8 +75,9 @@ def nextSquare(passenger, grid): mn = mooreNeighbourhood(passenger.curr) for (i, man) in enumerate(mn): - q.put((1, man, i)) - dist[man[0]][man[1]] = 1 + 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: + q.put((1, man, i)) + dist[man[0]][man[1]] = 1 while not q.empty(): u = q.get() @@ -84,7 +85,7 @@ def nextSquare(passenger, grid): return mn[u[2]] for x in mooreNeighbourhood(u[1]): 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 else: alt = dist[u[1][0]][u[1][1]] + 1 @@ -141,8 +142,7 @@ passengers = GenPassList() # passengers.reverse() rnd.shuffle(passengers) toad = 0 -btime = 10 #passengers board every btime ticks - +btime = 3 #passengers board every btime ticks def nunty(x): @@ -212,7 +212,6 @@ def tick(t): man.shuffled-=1 if DEBUG: time.sleep(0.05) - # time.sleep(0.05) os.system("clear") if done and toad >= len(passengers): print("Number of ticks: " + str(t))