From 827637cf28b71d4d955b0b85fb0ad9a1a3e3087d Mon Sep 17 00:00:00 2001 From: romue Date: Mon, 17 May 2021 17:42:19 +0200 Subject: [PATCH] removed assets parameter in renderer.py --- environments/factory/renderer.py | 10 ++++++---- environments/factory/simple_factory_getting_dirty.py | 2 +- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/environments/factory/renderer.py b/environments/factory/renderer.py index 302dacd..ca47233 100644 --- a/environments/factory/renderer.py +++ b/environments/factory/renderer.py @@ -8,7 +8,7 @@ class Renderer: WHITE = (200, 200, 200) PINK = (0.5, 255, 118, 117) - def __init__(self, grid_w=16, grid_h=16, cell_size=30, fps=4, grid_lines=True, view_radius=2, assets=['wall', 'dirt', 'agent']): + def __init__(self, grid_w=16, grid_h=16, cell_size=30, fps=4, grid_lines=True, view_radius=2): self.grid_h = grid_h self.grid_w = grid_w self.cell_size = cell_size @@ -19,7 +19,9 @@ class Renderer: self.screen_size = (grid_h*cell_size, grid_w*cell_size) self.screen = pygame.display.set_mode(self.screen_size) self.clock = pygame.time.Clock() - self.assets = {name: self.load_asset(name, 0.96) for name in assets} + assets = list((Path(__file__).parent / 'assets').glob('*.png')) + self.assets = {path.stem: self.load_asset(str(path), 0.95) for path in assets} + print(self.assets) self.fill_bg() def fill_bg(self): @@ -40,9 +42,9 @@ class Renderer: return img, rect - def load_asset(self, name, factor=1.0): + def load_asset(self, path, factor=1.0): s = int(factor*self.cell_size) - wall_img = pygame.image.load(str(Path(__file__).parent / 'assets' / f'{name}.png')).convert_alpha() + wall_img = pygame.image.load(path).convert_alpha() wall_img = pygame.transform.scale(wall_img, (s, s)) return wall_img diff --git a/environments/factory/simple_factory_getting_dirty.py b/environments/factory/simple_factory_getting_dirty.py index d047fbf..4e4745d 100644 --- a/environments/factory/simple_factory_getting_dirty.py +++ b/environments/factory/simple_factory_getting_dirty.py @@ -31,7 +31,7 @@ class GettingDirty(BaseFactory): def render(self): if not self.renderer: # lazy init h, w = self.state.shape[1:] - self.renderer = Renderer(w, h, view_radius=0, assets=['wall', 'agent', 'dirt']) + self.renderer = Renderer(w, h, view_radius=0) self.renderer.render( # todo: nur fuers prinzip, ist hardgecoded Dreck aktuell OrderedDict(wall=np.argwhere(self.state[0] > 0), # Ordered dict defines the drawing order! important dirt=np.argwhere(self.state[DIRT_INDEX] > 0),