def test_normal_usage(s): base = stats.build_table(100, 10, 20, 20) item = stats.build_table(20, -5, 10, -10) assert stats.stack(base, item)['HP'] == 120 assert stats.stack(base, item)['PW'] == 5 assert stats.stack(base, item)['DF'] == 30 assert stats.stack(base, item)['SP'] == 10
def test_multiple_items(s): base = stats.build_table(100, 10, 20, 20) item = stats.build_table(20, -5, 10, 5) armor = stats.build_table(10, 0, 40, -10) potion = stats.build_table(120, 10, -5, 0) special = stats.build_table(0, 50, 0, 0) assert stats.stack(base, item, armor, potion, special)['HP'] == 250 assert stats.stack(base, item, armor, potion, special)['PW'] == 65 assert stats.stack(base, item, armor, potion, special)['DF'] == 65 assert stats.stack(base, item, armor, potion, special)['SP'] == 15
def begin(): malt.show("\nYou wander inside an old, decrepit dungeon...") malt.pause() # Generate a new character character = stats.stack(generate.monster(), generate.accessory()) keys = 0 ### while True: try: (character, keys) = enter_room(character, keys) except exceptions.YouAreDeadException as e: if e.game_won: malt.show("You have conquered the dungeon!") else: malt.show("You gave your life to destroy the dungeon.") malt.show("Thank you for your sacrifice.") break if character['HP'] < 0 or keys >= MAX_KEYS: break ### ### if character['HP'] > 0: malt.show("You have conquered the dungeon!") else: malt.show("You gave your life to destroy the dungeon.") malt.show("Thank you for your sacrifice.")
def test_negative_stack(s): base = stats.build_table(100, 10, 20, 5) item = stats.build_table(0, 0, 10, -10) assert stats.stack(base, item)['SP'] == 0