Jun-20-2018, 07:14 PM
import time #importing time fuction Answer1 = ["Push Walls", "PUSH WALLS", "push walls", "Push walls", "push Walls"] #Array of all possible answers. Answer2 = ["Red Green Yellow", "Red, Green, Yellow", "red green yellow", "Red green yellow", "red Green yellow", "red green Yellow", "red, green, yellow", "Red, green, yellow", "red, Green, yellow", "red, green, Yellow", "RED GREEN YELLOW", "RED, GREEN, YELLOW"] #Array of all possible answers. Answer3 = ["Look Up", "look Up", "LOOK UP", "look up"] #Array of all possible answers. lives = 3 correct = False #introduction def intro(): #envelope art env = """ __________________ |\ /| | \ / | | /\____________/\ | |/ \| |__________________| """ print(env) time.sleep(0.5) print("""You have been invited to the worlds leading puzzle room... ...You accept the invitation and are escorted to the the first room.""") time.sleep(0.5) #main story def main(): intro() #introduction ###### room1() #having separate defs for rooms makes adding / removing rooms easier. def room1(): global lives #making lives global so it can be accessed from outoflives() time.sleep(0.5) print(""" On the wall in the first room, there is an alpahbet on the wall... ...It must be a Caesar cipher of +3. The encrypted word is: SXVK ZDOOV """) global correct correct1 = input("Decrypted Cipher:") for x in range(0,5): if (correct1 == Answer1[x]): correct = True print("lol") else: outoflives() correct = False #called if you lose def lose(): print("") time.sleep(2) main() #called if you win def win(): print("") time.sleep(2) main() def outoflives(): global lives if correct == False: while lives != 0: print("The walls close in...") break while lives == 0: print("You died!") lose() break main()---This is a project for school---
The arrays are showing all possible answers. In room1(), this piece of code should compare the answer you put in to all the items in the array:
for x in range(0,5): if (correct1 == Answer1[x]): correct = True print("correct") else: lives = 2 outoflives() correct = FalseIt does. But all the answers except one, will be incorrect. This activates the outflives() multiple times making the output look like:
The walls close in...
The walls close in...
The walls close in...
correct
The walls close in...
I want it to look like:
correct
if you get the correct answer and:
The walls close in...
if you get the wrong answer.
What would be the easeist way to get this to stop?
Thanks,
Dream