Enhance asset loading by removing unnecessary surface parameter and adding texture variants for grass and flowers

This commit is contained in:
2026-03-28 16:53:22 +01:00
parent b60ffd87aa
commit eaafd92dc2
+18 -3
View File
@@ -72,15 +72,23 @@ class Graphics():
print(f"Loading theme assets {theme_index}...") print(f"Loading theme assets {theme_index}...")
self.theme_assets_cache[theme_index] = { self.theme_assets_cache[theme_index] = {
"floor_tile": self.render_engine.create_color_surface((128, 128, 128)), "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": [ "grasses": [
self.render_engine.load_image(f"Rat/BMP_{theme_index}_GRASS_{i+1}.png", surface=True) self.render_engine.load_image(f"Rat/BMP_{theme_index}_GRASS_{i+1}.png", surface=True)
for i in range(4) 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": [ "flowers": [
self.render_engine.load_image(f"Rat/BMP_{theme_index}_FLOWER_{i+1}.png", surface=True) self.render_engine.load_image(f"Rat/BMP_{theme_index}_FLOWER_{i+1}.png", surface=True)
for i in range(4) 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": { "caves": {
direction: self.render_engine.load_image( direction: self.render_engine.load_image(
f"Rat/BMP_{theme_index}_CAVE_{direction}.png", f"Rat/BMP_{theme_index}_CAVE_{direction}.png",
@@ -119,7 +127,9 @@ class Graphics():
self.floor_tile = theme_assets["floor_tile"] self.floor_tile = theme_assets["floor_tile"]
self.tunnel = theme_assets["tunnel"] self.tunnel = theme_assets["tunnel"]
self.grasses = theme_assets["grasses"] self.grasses = theme_assets["grasses"]
self.grass_textures = theme_assets["grass_textures"]
self.flowers = theme_assets["flowers"] self.flowers = theme_assets["flowers"]
self.flower_textures = theme_assets["flower_textures"]
self.caves = theme_assets["caves"] self.caves = theme_assets["caves"]
self.explosions = theme_assets["explosions"] self.explosions = theme_assets["explosions"]
self.edges = theme_assets["edges"] self.edges = theme_assets["edges"]
@@ -183,9 +193,14 @@ class Graphics():
def random_wall(): def random_wall():
return random.choice(self.grasses) return random.choice(self.grasses)
def random_wall_texture():
return random.choice(self.grass_textures)
def random_flower(): def random_flower():
return random.choice(self.flowers) return random.choice(self.flowers)
def random_flower_texture():
return random.choice(self.flower_textures)
for y, row in enumerate(self.map.tiles): for y, row in enumerate(self.map.tiles):
for x, cell in enumerate(row): for x, cell in enumerate(row):
px = x * self.cell_size px = x * self.cell_size
@@ -276,9 +291,9 @@ class Graphics():
if left: if left:
if right: if right:
if random.randrange(10) != 0: 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: else:
draw(random_flower(), px + half_cell, py + half_cell) draw_cave(random_flower_texture(), px + half_cell, py + half_cell, None)
else: else:
draw_cave(self.caves["RIGHT"], px, py, "RIGHT") draw_cave(self.caves["RIGHT"], px, py, "RIGHT")
else: else: