From 080d23d7b62e6db87d38744df9b4db6672743887 Mon Sep 17 00:00:00 2001 From: Owen Feldman Date: Mon, 20 Apr 2026 19:15:29 -0400 Subject: [PATCH] Way to get money --- RELEASE_NOTES.txt | 3 ++- game.py | 6 ++++-- systems/world.py | 48 +++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 54 insertions(+), 3 deletions(-) diff --git a/RELEASE_NOTES.txt b/RELEASE_NOTES.txt index 7d2d842..bb73014 100644 --- a/RELEASE_NOTES.txt +++ b/RELEASE_NOTES.txt @@ -1,3 +1,4 @@ Major update! Added saving to the web version! -Added happiness level and fullness level \ No newline at end of file +Added happiness level and fullness level +Added method to get money \ No newline at end of file diff --git a/game.py b/game.py index f377177..3719355 100644 --- a/game.py +++ b/game.py @@ -1,6 +1,6 @@ from data.cat import Cat from systems.ui import clear, title -from systems.world import shelter, house, shop +from systems.world import shelter, house, shop, work import systems.ui as ui import data.save import data.text @@ -86,12 +86,14 @@ class Game: while True: match ui.select( "Please choose an option", - ["Go to your house", "Go to the shop", "Options"], + ["Go to your house", "Go to the shop", "Go to work", "Options"], ): case "Go to your house": house(self.cat) case "Go to the shop": shop(self.cat) + case "Go to work": + work(self.cat) case "Options": if self.options_menu(): return diff --git a/systems/world.py b/systems/world.py index 36ec27d..249d9c9 100644 --- a/systems/world.py +++ b/systems/world.py @@ -4,6 +4,8 @@ import re import data.text import random import systems.items +import time +import string def check_cat_name(name): @@ -225,3 +227,49 @@ def house(cat: Cat): storage(cat) case "Leave your house": break + + +def work(cat: Cat): + length = 2 + total_earned = 0 + lost = False + print("Welcome to work!") + print("The rules:") + print( + "Each round, a string of letters will appear, when it says go, type them from memory. If you miss one, you lose, each round gets more money." + ) + if not ui.confirm("Would you like to start?"): + return + for i in range(3, 0, -1): + print(i) + time.sleep(1) + ui.clear() + print("Start!") + while not lost: + seconds = 1 + (length * 0.5) + letters = random.choices(string.ascii_lowercase, k=length) + print(f"Round {len(letters)-1}") + print("Memorize:", " ".join(letters)) + for i in range(round(seconds), 0, -1): + print(i) + time.sleep(1) + ui.clear() + print(f"Round {len(letters)-1}") + print("Type!") + pos = 0 + for i in letters: + key = ui.getch() + print(key, end=" ", flush=True) + if key != letters[pos]: + print(f"\nThe correct key was: {letters[pos]}") + lost = True + break + pos += 1 + if not lost: + total_earned += 3 + print("\nCorrect!") + time.sleep(1) + ui.clear() + length += 1 + cat.money += total_earned + print(f"Game finished! You earned ${total_earned}, you now have ${cat.money}!")