Refactor code structure for improved readability and maintainability

This commit is contained in:
2026-05-09 16:35:25 +02:00
parent ac80210ba5
commit c7ff5ae4cf
12 changed files with 287 additions and 21 deletions
+10 -8
View File
@@ -409,7 +409,7 @@ class MiceMaze(
def advance_level(self):
print(f"[flow] advance_level called from level={self.current_level + 1} points={self.points}")
if not self._is_dat_campaign():
self.load_level(self.current_level, preserve_points=True, show_menu=True, menu_screen="level_intro")
self.load_level(self.current_level, preserve_points=True, show_menu=False)
return
if self._is_last_dat_level():
@@ -421,7 +421,7 @@ class MiceMaze(
next_level = self.current_level + 1
print(f"[flow] advancing to level={next_level + 1}")
self.load_level(next_level, preserve_points=True, show_menu=True, menu_screen="level_intro")
self.load_level(next_level, preserve_points=True, show_menu=False)
def reset_game(self):
print(
@@ -437,8 +437,9 @@ class MiceMaze(
self.start_menu_animation_started_at = time.monotonic()
self.load_level(0, preserve_points=False, show_menu=True, menu_screen="start")
else:
print("[flow] reset_game -> restart from level 1 after defeat")
self.load_level(0, preserve_points=False, show_menu=False)
print("[flow] reset_game -> defeat, returning to start menu")
self.start_menu_animation_started_at = time.monotonic()
self.load_level(0, preserve_points=False, show_menu=True, menu_screen="start")
return
if self.game_status == "paused":
@@ -943,9 +944,10 @@ class MiceMaze(
if self.game_end[1] == GAME_END_DEFEAT:
self.render_engine.dialog(
"Game Over: Mice are too many!",
image=self.assets["BMP_WEWIN"],
subtitle=f"Reached level: {self.current_level + 1}\nPress Return to restart from level 1",
scores=self.combined_scores
image=self.assets.get("lose", self.assets["BMP_WEWIN"]),
image_scale=0.48,
subtitle=f"Reached level: {self.current_level + 1}\nPress Return to go back to the start menu",
scores=self.combined_scores,
)
elif self.game_end[1] == GAME_END_RUN_COMPLETE:
self.render_engine.dialog(
@@ -957,7 +959,7 @@ class MiceMaze(
else:
self.render_engine.dialog(
f"Level {self.current_level + 1} Clear! Points: {self.points}",
image=self.assets["BMP_WEWIN"],
image=self.assets.get("clear", self.assets["BMP_WEWIN"]),
subtitle="Press Return for the next level",
scores=self.combined_scores
)