From eaafd92dc29de966ef43c53204e338284e09e0e9 Mon Sep 17 00:00:00 2001 From: John Doe Date: Sat, 28 Mar 2026 16:53:22 +0100 Subject: [PATCH] Enhance asset loading by removing unnecessary surface parameter and adding texture variants for grass and flowers --- engine/graphics.py | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/engine/graphics.py b/engine/graphics.py index 028480f..40a7d3b 100644 --- a/engine/graphics.py +++ b/engine/graphics.py @@ -72,15 +72,23 @@ class Graphics(): print(f"Loading theme assets {theme_index}...") self.theme_assets_cache[theme_index] = { "floor_tile": self.render_engine.create_color_surface((128, 128, 128)), - "tunnel": self.render_engine.load_image("Rat/BMP_TUNNEL.png", surface=True), + "tunnel": self.render_engine.load_image("Rat/BMP_TUNNEL.png"), "grasses": [ self.render_engine.load_image(f"Rat/BMP_{theme_index}_GRASS_{i+1}.png", surface=True) for i in range(4) ], + "grass_textures": [ + self.render_engine.load_image(f"Rat/BMP_{theme_index}_GRASS_{i+1}.png") + for i in range(4) + ], "flowers": [ self.render_engine.load_image(f"Rat/BMP_{theme_index}_FLOWER_{i+1}.png", surface=True) for i in range(4) ], + "flower_textures": [ + self.render_engine.load_image(f"Rat/BMP_{theme_index}_FLOWER_{i+1}.png") + for i in range(4) + ], "caves": { direction: self.render_engine.load_image( f"Rat/BMP_{theme_index}_CAVE_{direction}.png", @@ -119,7 +127,9 @@ class Graphics(): self.floor_tile = theme_assets["floor_tile"] self.tunnel = theme_assets["tunnel"] self.grasses = theme_assets["grasses"] + self.grass_textures = theme_assets["grass_textures"] self.flowers = theme_assets["flowers"] + self.flower_textures = theme_assets["flower_textures"] self.caves = theme_assets["caves"] self.explosions = theme_assets["explosions"] self.edges = theme_assets["edges"] @@ -183,9 +193,14 @@ class Graphics(): def random_wall(): return random.choice(self.grasses) + def random_wall_texture(): + return random.choice(self.grass_textures) + def random_flower(): return random.choice(self.flowers) + def random_flower_texture(): + return random.choice(self.flower_textures) for y, row in enumerate(self.map.tiles): for x, cell in enumerate(row): px = x * self.cell_size @@ -276,9 +291,9 @@ class Graphics(): if left: if right: if random.randrange(10) != 0: - draw(random_wall(), px + half_cell, py + half_cell) + draw_cave(random_wall_texture(), px + half_cell, py + half_cell, None) else: - draw(random_flower(), px + half_cell, py + half_cell) + draw_cave(random_flower_texture(), px + half_cell, py + half_cell, None) else: draw_cave(self.caves["RIGHT"], px, py, "RIGHT") else: