Skip to main content
Tweeted twitter.com/#!/StackCodeReview/status/472644432806678528
added 2 characters in body; edited title
Source Link
Jamal
  • 34.9k
  • 13
  • 133
  • 237

Can my pythonPython maze game be better in any way?

How could I improve or make this program more user friendly? I have not been programming very long, so please don't give me a task that is too complicated.

Can my python maze game be better in any way?

How could I improve or make this program more user friendly? I have not been programming very long, please don't give me a task that is too complicated.

Can my Python maze game be better in any way?

How could I improve or make this program more user friendly? I have not been programming very long, so please don't give me a task that is too complicated.

show appreciation by up voting good answers and accepting the best answer
Source Link
Malachi
  • 28.7k
  • 11
  • 86
  • 188

How to make Can my python maze game be better in any way?

Considering that I am a beginner at programming, howHow could I improve or make this program more user friendly? As I have not been programming for avery long time, please don't give me a task that is too complicated! Thank You!.

How to make my python maze game better?

Considering that I am a beginner at programming, how could I improve or make this program more user friendly? As I have not been programming for a long time, please don't give a task that is too complicated! Thank You!

Can my python maze game be better in any way?

How could I improve or make this program more user friendly? I have not been programming very long, please don't give me a task that is too complicated.

Source Link
Joseph
  • 125
  • 1
  • 1
  • 4

How to make my python maze game better?

Considering that I am a beginner at programming, how could I improve or make this program more user friendly? As I have not been programming for a long time, please don't give a task that is too complicated! Thank You!

from random import randint
import time
global word
word = "a"
shield = 5
#The main function
def main():
    #This will trigger the introduction
    intro()
    while TakeTurn() == False:
        if shield == 1:
            word1 = "shield"
        else:
            word1 = "shields"
        print ("You have", shield, word1,)
        if shield < 1:
            print ("Sorry! You ran out of shields! You lose!")
        else:
            print ("You win")

#This function is the introduction to the program
def intro():
    time.sleep(2)
    print ("You are lost in a maze, it is dark and you are lost")
    time.sleep(2)
    print ("Im afraid there are monsters here...")
    time.sleep(1.5)
    print ("BOO!")
    time.sleep(1)
    print ("You have five shields to protect you...")
    time.sleep(2)
    print ("Use them well!")
    time.sleep(1)
    print ("Okay, let's go!")

#This function is the actual 'game' and will deterine what happens to the character    
def TakeTurn():
    global word
    global shield
    time.sleep(1.5)
    #This means that when the user reaches 0 shields, they lose.
    if shield < 1:
        return True
    #Whatever the user inputs will not actually affect the outcome
    print ("You have reached", word ,"junction.\nDo you want to turn left (L), turn right (R) or go straight ahead(S)?")
    turning = input()
    #This is a simple instruction that means that the first time you come to a junction, it will say 'a junction' but the second time it will say 'another junction'
    word = "another"
    #This 'if' statement means that the program will only continue if the user has inputed the letters 'L', 'R' or 'S'
    if turning not in ["L","R","S","l","r","s"] :
        time.sleep (0.7)
        print ("Sorry, I didn't understand that")
        TakeTurn()
    else:
        choice = randint (1,10)
    #This is just going to display a random message which will affect the outcome
    time.sleep (1)
    if choice == 1:
        print ("You have found the exit!")
        return True
    elif choice == 2:
        print ("You have found a shield!")
        time.sleep(1)
        shield = shield +1
        return False
    elif choice == 3:
        print ("You have found two shields!")
        time.sleep(1)
        shield = shield +2
        return False
    elif choice == 4:
        print ("You have found three shields!")
        time.sleep(1)
        shield = shield +3
        return False
    elif choice == 5:
        print ("A fairy has jumped into your pants!")
        time.sleep(2)
        print ("You lose two shields")
        time.sleep(1)
        shield = shield -2
        return False
    elif choice == 6:
        treasurechest()
        return False
    elif choice == 7:
        print ("You have tripped over a log!")
        time.sleep(2)
        print ("You lose a shield")
        time.sleep(1)
        shield = shield -1
        return False
    elif choice == 8:
        print ("An angry teenager is staring at you in the eye.")
        time.sleep(2.5)
        print ("He uses laziness...")
        time.sleep(1.5)
        print ("It's super effective!")
        time.sleep(1)
        print ("You lose three shields")
        time.sleep(1)
        shield = shield -3
        return False
    elif choice == 9:
        print ("You have encountered an ogre...")
        time.sleep(1.5)
        print ("He bashes you over the head with a steel bar")
        time.sleep(2)
        print ("You lose two shields")
        time.sleep(1)
        shield = shield -2
        return False
    else:
        print ("A goblin aproaches and says the following:")
        time.sleep(2)
        goblin()
        return False

def goblin():
    global shield
    print ("'Do you want to play my magical roulette?\n There are three different outcomes:'")
    time.sleep(2.5)
    print ("You lose a shield")
    time.sleep (1)
    print ("You gain a shield")
    time.sleep (1)
    print ("Nothing happens")
    time.sleep(1)
    goblin = 0
    while goblin == 0:
        print ("Do you want to play? Y or N?")
        choice2 = input ()
        time.sleep(1)
        if choice2 not in ["Y","N","y","n"]:
            print ("Sorry I didnt understand that")
        elif choice2 not in ["Y","y"]:
            print ("Okay bye")
            TakeTurn()
        else:
            print ("Let's play!")
            time.sleep(1)
            print ("Spinning...")
            time.sleep(1)
            print ("Spinning...")
            time.sleep(1)
            print ("Spinning...")
            time.sleep(1)
            roulette = randint (1,3)
            if roulette == 1:
                print ("Nothing happens")
                goblin = 1
            elif roulette == 2:
                print ("Im going to have to take one of your shields")
                shield = shield -1
                goblin = 1
            else:
                print ("Here! Have a shield!")
                shield = shield +1
                goblin = 1

def treasurechest():
    global shield
    treasure = 1
    while treasure == 1:
        print ("You have found a treasure chest! Do you want to open it? Y or N?")
        chest = input()
        if chest not in ["Y","y","N","n"]:
        print ("Sorry, I didn't understand that")
        elif chest not in ["Y","y"]:
        print ("Okay Bye")
        treasure = 0
        else:
            time.sleep(1)
            print ("Opening...")
            time.sleep(1)
            print ("Opening...")
            time.sleep(1)
            print ("Opening...")
            time.sleep(1)
            chest = randint (1,6)
            if chest == 1:
                print ("You have found a shield!")
                shield = shield +1
                treasure = 0
            elif chest == 2:
                print ("You have found two shields!")
                shield = shield +2
                treasure = 0
            elif chest == 3:
                print ("A dwarf jumps out and steals one of your shields!")
                shield = shield -1
                treasure = 0
            elif chest == 4:
                print ("An evil fairy steals two of your shields!")
                shield = shield -2
                treasure = 0
            elif chest == 5:
                print ("Sorry, the chest is empty")
                treausre = 0
            else:
                print ("A goblin is in the chest and says the following...")
                time.sleep(2)
                goblin()