Skip to content

Commit de887d1

Browse files
committed
Last minute bug fixes
1 parent 7c19748 commit de887d1

File tree

2 files changed

+5
-4
lines changed

2 files changed

+5
-4
lines changed

Metro/Metro_RP2350_Chips_Challenge/game.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -268,7 +268,8 @@ def _handle_commands(self):
268268
self.request_password()
269269
elif command == PREVIOUS_LEVEL:
270270
if self._gamelogic.current_level_number > 1:
271-
if self._savestate.is_level_unlocked(self._gamelogic.current_level_number - 1):
271+
if (self._gamelogic.current_level_number - 1 == 1 or
272+
self._savestate.is_level_unlocked(self._gamelogic.current_level_number - 1)):
272273
self.reset_level()
273274
self._gamelogic.dec_level()
274275
self.save_level()
@@ -412,10 +413,10 @@ def request_password(self):
412413
level = self._savestate.find_unlocked_level(password)
413414
if not 0 < level <= self._gamelogic.last_level:
414415
self.show_message("That is not a valid level number.")
415-
elif (level and password and
416+
elif (level > 1 and password and
416417
self._gamelogic.current_level.passwords[level] != password):
417418
self.show_message("You must enter a valid password.")
418-
elif (self._savestate.is_level_unlocked(level) and
419+
elif (level != 1 and self._savestate.is_level_unlocked(level) and
419420
self._savestate.find_unlocked_level(level) is None
420421
and self._savestate.find_unlocked_level(password) is None):
421422
self.show_message("You must enter a valid password.")

Metro/Metro_RP2350_Chips_Challenge/savestate.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ def load(self):
6060
with open("/sd/" + SAVESTATE_FILE, "r") as f:
6161
data = json.load(f)
6262
self._levels = data["levels"]
63-
except OSError:
63+
except (OSError, ValueError):
6464
pass
6565

6666
def set_level_score(self, level, score, time_left):

0 commit comments

Comments
 (0)