+ # Check if we've lost
+ self._game_over_text = []
+ if gamestate.seeds == 0 and len(self._turnips) == 0:
+ self._draw_you_lose(gamestate)
+ elif gamestate.harvested >= gamestate.turnip_target:
+ self._draw_you_win(gamestate)
+
+ def _draw_you_lose(self, gamestate):
+ overlay = pygame.surface.Surface(
+ (SCREEN_SIZE[0], 240), pgl.SWSURFACE).convert_alpha()
+ overlay.fill((0, 0, 0, 128))
+ self._game_over_text.append((overlay, (0, 250)))
+ self._game_over_text.append(
+ (shadowed_text("You Lost", FONTS["bold"], 48), (400, 280)))
+ self._game_over_text.append(
+ (shadowed_text("You have no seeds and no turnips growing",
+ FONTS["sans"], 24), (300, 350)))
+ self._game_over_text.append(
+ (shadowed_text("Press a key to return to the menu",
+ FONTS["sans"], 24), (350, 400)))
+
+ def _draw_you_win(self, gamestate):
+ overlay = pygame.surface.Surface(
+ (SCREEN_SIZE[0], 240), pgl.SWSURFACE).convert_alpha()
+ overlay.fill((0, 0, 0, 128))
+ self._game_over_text.append((overlay, (0, 250)))
+ self._game_over_text.append(
+ (shadowed_text("You Win", FONTS["bold"], 48), (400, 280)))
+ self._game_over_text.append(
+ (shadowed_text(
+ ("You have Successfully Harvested %d turnips" %
+ gamestate.harvested),
+ FONTS["sans"], 24),
+ (300, 350)))
+ self._game_over_text.append(
+ (shadowed_text("Press a key to return to the menu",
+ FONTS["sans"], 24), (350, 400)))