我使用Python 2.7和Python入門艱難的歷程書我的Python迷你遊戲。它混淆了我:-(
但是,我得到了一些創造性的想法,我想在這個練習中的一些變化:http://learnpythonthehardway.org/book/ex35.html
所以我寫我自己的代碼:
from sys import exit
times_in_exchange_path = 0
asked_for_help = 0
def exchange_path():
print "Hola! You are about to get to the very dangerous point, kid!"
print "You are independent from now. With luck..."
action = raw_input('...')
if 'what' in action:
print 'I said you are on your own now. No one is gonna help you',
print "with anything..."
exchange_path()
elif 'creepy' in action:
print "I found it creepy, too. Kid. Take me out of here with you."
print "Is that OK?"
haunted = False
decision = raw_input()
if decision == 'agree':
print "Finally. I'm free!"
haunted = True
times_in_exchange_path = times_in_exchange_path + 1
start()
else:
dead("I will make you know what pain really is!!?! >:(")
else:
dead("A shadow barged into you, and you broke your neck.")
def gold_room():
print "This room is full of gold. How much do you take?"
choice = raw_input("> ")
try:
how_much = int(choice)
except:
dead("Man, learn to type a number.")
if how_much < 50:
print "Nice, you're not greedy, you win!"
if haunted:
print "\nHowever... I can't just let you get away easily like this."
print '"Why??" - I asked'
print "You belong to the gold mine now!!"
print '"What do you mean??" - I replied in fear'
print "Power requires sacrifice. Muhahahhaha!"
dead(" ")
else:
exit(0)
else:
dead("You greedy bastard! It's a trap for you!")
def bear_room():
print "There is a bear here."
print "The bear has a bunch of honey."
print "The fat bear is in front of another door."
print "How are you going to move the bear?\n"
bear_moved = False
if haunted:
print "...Wait. The bear suddenly shouts at you, break the window",
print "and runs far far away."
print "Let's go to the door, kid...\n\n"
gold_room()
else:
while True:
choice = raw_input("> ")
if choice == "take honey":
dead("The bear looks at you then slaps your face off.")
elif choice == "taunt bear" and not bear_moved:
print "The bear has moved from the door. You can go through",
print "it now."
bear_moved = True
elif choice == "taunt bear" and bear_moved:
dead("The bear gets pissed off and chews your leg off.")
elif choice == "open door" and bear_moved:
gold_room()
else:
print "I got no idea what that means."
def cthulhu_room():
print "Here you see the great evil Cthulhu."
print "He, it, whatever stares at you and goes insane."
print "Do you flee for your life or he eats your head?"
cthulhu_dead = False
choice = raw_input("> ")
if cthulhu_dead:
print "There's nothing here, kid. Except of the light and a dead body."
print "Let's go!\n...\n\n"
start()
else:
if "flee" in choice:
start()
elif "head" in choice:
dead("Well that was tasty!")
elif "fight" in choice:
if haunted:
print "With mysterious distraction, the Cthulhu turns his back",
print "at you. You use the shiny magical spear nearby to kill",
print "the monster."
cthulhu_dead = True
print "\n...\n"
start()
else:
dead("Awesome tasty head you have!")
else:
cthulhu_room()
def dead(why):
print why, "\n\nGood job! You died."
exit(0)
def first_assist():
asked_for_help += 1
if asked_for_help in range(4, 6):
print "Stop! You are attracting them!"
print "A portal shows up and you are walking into it...\n\n"
elif asked_for_help > 5:
dead("Those demons rise from the ground. And burn you down!")
else:
print "Hi! I am your beautiful assistance."
print "As you got lost in here, I will show you the way."
print "You have to know that all three paths are dangerous, and there",
print "is no way out of here.\nSo, try to survive with glory."
print '"left", "right" and "front" are the first three spells you use.'
print "There's a mighty power near here. Have a pure heart, and know",
print "that you will never have to touch that evil power..."
print "Good luck from here... Be wise."
start()
def start():
print "You are in a dark room."
print "There is a door to your right and left."
print 'And a middle path, full of darkness, in front of you.'
print "Which one do you dare to take?"
choice = raw_input("> ")
if choice == "left":
bear_room()
elif choice == "right":
cthulhu_room()
elif choice == "front":
if times_in_exchange_path == 0:
exchange_path()
else:
print "You feel something stopping you from entering this place. \n"
start()
elif "help" in choice:
first_assist()
else:
dead("You stumble around the room until you starve.")
start()
但由於種種原因,我的代碼不能正常工作
它首先打印出的畫面是這樣的線路:
你在黑暗的房間裏。
有一個門,你的右側和左側
和中間路徑,充滿了黑暗
的你敢哪一個拿?
然後,無論我輸入什麼,程序都會出現錯誤。我不知道爲什麼。
請幫我解決這個遊戲。
非常感謝你。 :-)
它以何種方式無法正常工作?它會給你一個錯誤信息嗎?它掛着嗎?它是否會造成普遍的混亂和死亡? –
啊,是的。舊的原因('混亂')和'dead.raise()'的情況。恨這種事發生。 –