From 1ece7bce0f02b4d700814eee2f3d51ed6d9fa653 Mon Sep 17 00:00:00 2001 From: s475275 Date: Sun, 26 Mar 2023 20:08:11 +0200 Subject: [PATCH] =?UTF-8?q?=C5=9Amieciarka=20mo=C5=BCe=20wje=C5=BCd=C5=BCa?= =?UTF-8?q?=C4=87=20do=20dom=C3=B3w?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- res/tiles.png | Bin 15800 -> 14735 bytes src/agent.py | 2 +- src/simulation.py | 4 ++-- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/res/tiles.png b/res/tiles.png index 8ff64a6750d2528ee5f081b16891a1b99c7f1e43..c5f4674a4c52af1620d4778d258c30fdc4802fc1 100644 GIT binary patch delta 14339 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 biM;Vpvs7HGuDl!%JRXX2s%&)R#|to5$0 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

w_l;C(-(_L4l7`#^IG?SF4j5*Ix9aBhomS`@ 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 IB#ndq4+^Qa4*&oF diff --git a/src/agent.py b/src/agent.py index 164815d..1bacb73 100644 --- a/src/agent.py +++ b/src/agent.py @@ -1,6 +1,6 @@ class Agent: def __init__(self): - graph = [] + self.graph = [] def inform(self, coordinate_set): pass diff --git a/src/simulation.py b/src/simulation.py index 4318ccf..c5003d7 100644 --- a/src/simulation.py +++ b/src/simulation.py @@ -36,7 +36,7 @@ class TruckEntity(Entity): proposed_pos = self.position + move_vector move_valid = True - if proposed_pos not in self.state.roads_pos: + if proposed_pos not in self.state.roads_pos and proposed_pos not in self.state.houses_pos: move_valid = False if proposed_pos.x < 0 or proposed_pos.x >= self.state.world_limits.x: move_valid = False @@ -76,7 +76,6 @@ class SimulationState: if tile == "O": self.truck_origin = pg.Vector2(x, y) - self.entities.append(TruckEntity(self, self.truck_origin)) self.roads_pos.append(pg.Vector2(x, y)) if tile == "R": self.roads_pos.append(pg.Vector2(x, y)) @@ -95,6 +94,7 @@ class SimulationState: if tile == "Z": self.mixed_dump_pos = pg.Vector2(x, y) self.entities.append(DumpEntity(self, pg.Vector2(x, y), 'mixed')) + self.entities.append(TruckEntity(self, self.truck_origin)) self.world_limits = pg.Vector2(max_x, max_y)