def inventory(player): inventory = player.data["inventory"] pt = PrettyTable() if bool(inventory): pt.field_names = ["Item", "Count"] for i in inventory: pt.add_row([i, inventory[i][0]]) else: pt.field_names = ["Your inventory is empty!"] print(pt) menu.main_menu(player=player)
def handle_special(choice, player): if choice == back_val: return menu.main_menu(player=player) elif choice == quit_val: player.backup() print("Thanks for playing! See you soon!") return quit()
def shop(player, items=list(item_dict.keys())): items = add_back(items) item_choices = [{ "type": "list", "name": "item", "choices": [{ "name": i } for i in items], "message": "What would you like to buy?" }, { "type": "input", "name": "quantity", "message": "How many would you like to buy?", "validate": lambda answer: validate_amount(answer), "filter": lambda answer: int(answer), }, { "type": "confirm", "name": "confirmation", "message": "Are you sure you want to purchase these items?", "default": True }] item = prompt(item_choices[0])["item"] handle_special(item, player) amount = prompt(item_choices[1])["quantity"] ok = prompt(item_choices[2])["confirmation"] if ok: player.buy(item_dict[item], amount) remove_special(items, 1) return menu.main_menu(player=player)
def stats(player): data = player.data pt = PrettyTable() pt.field_names = [ "Money", "Bank Account", "Age", "Experience", "Jobs Worked", "Years", "Months" ] pt.add_row([ "$" + str(data["money"]), "$" + str(data["bank_account"]), str(data["age"]) + " years", str(data["xp"]) + " XP", str(data["jobs_worked"]) + " jobs", str(data["years"]), str(data["months"]) ]) print(colored(pt, "blue")) menu.main_menu(player=player)
def work(player, jobs=list(jobs_list.keys())): if not player.data["monthly_jobs"]: print("You have worked too much this month!") return menu.main_menu(player=player) jobs = add_back(jobs) job_choices = [ { "type": "list", "name": "job", "choices": [{"name": i} for i in jobs], "message": "What job would you like to take on?" } ] job = prompt(job_choices)["job"] handle_special(job, player) player.work(jobs_list[job]) remove_special(jobs, 1) return menu.main_menu(player=player)
def settings(player): player.edit() menu.main_menu(player=player)