笨方法學python Lesson 45

個人小遊戲  未完待續python

# -*- coding:utf-8 -*-

def start():
    print u"昨晚你喝了爛醉,醒來發現躺在一個陌生的地方,不像是朋友送來的旅館。這恐怖房間必非久留之地。"
    print u"你必須逃離這間房子。"
    print "Are you ready? Here wo go."
    game_start = BeginRoom()
    game_start.enter()

def game_over(reason = ""):
    print reason, u"你死了,從新開始吧騷年!\n\n\n\n\n\n\n\n"
    start()

def input_right():
    print u"一道天雷劈下,落下來一張黃紙。"
    print u"黃紙上寫着:看不懂人話的活着也沒什麼意思,不是嗎?"
    game_over()

class BeginRoom(object):
    
    def enter(self):
        print u"你驚恐地瞪大了眼睛望着四方,屋裏很空,只有一個大衣櫃、一張桌子,桌子上有一些食物。\n你昏睡了幾天,餓極了。\
你剛要拿起食物吃掉的時候,看到旁邊有一張紙條。\n紙條的反正面都寫滿了字。"
        
        print u"紙條的正面是:"
        print "-" * 20
        print u"歡迎你!你是第六個來到這兒的人。\n做爲主人,我有必要爲客人準備東西。\n這些食物就當是個人一點意思。"
        print u"快吃吧,你必定餓極了。\n吃飽了纔有力氣回家。\n還有,千萬記住,屋外面有恐怖的東西,別出去。\n會有人來救你!"
        print u"\t\t\t——主人"

        print u"紙條的反面是:"
        print "-" * 20 
        print u"正面的話是假的!別相信他!\n快跑,衣櫃裏有通道!\n食物被下了毒,你吃掉會死!\n別呆在屋裏,一下子會有殭屍圍住你的!"
        print u"\t\t\t——無名人"
        
        your_choice = raw_input("你相信哪一個呢?正面是1反面是2,選擇相信誰呢?考慮清楚哦,這個可不是擲硬幣那麼好玩的喲\n考慮好了的話,就輸入你的選擇吧!"\
                               .decode("utf-8").encode("gbk"))
                               
        if your_choice == "1": 
            print u"你沒心沒肺的吃掉了食物。"
            game_over(u"食物很可口,問題是有毒。")
        elif your_choice == "2":
            print u"你顫抖着打開了衣櫃,果真看到了一條密道。"
            print u"你當心的走進密道,懼怕有什麼恐怖的東西忽然襲擊。"
            secret_channel = SecretChannel()
            secret_channel.enter()
        else:
            input_right()
            

class SecretChannel(object):
    
    def enter(self):
        print u"密道里有三間屋子。左邊的屋子被上了鎖,中間的門敞開着,右邊的門半掩着。"
        print u"左邊的門縫裏傳來花的香味。\n中間的屋裏空蕩蕩的,有一扇窗戶,窗戶的玻璃灑進陽光。\n右邊的門裏也有一個密道,可是卻陰森無比。"
        print u"又是作選擇的時候了,此次要選哪邊呢?慎重喲。"
        your_choice = raw_input("左邊輸入1,中間輸入2,右邊輸入3".decode("utf-8").encode("gbk"))
        if your_choice == "1":
            print u"你選擇了左邊,可你卻打不開門。在你費勁周折仍是迫不得已的時候,一隻殭屍忽然從你身後出現。" 
            game_over(u"要是有豌豆就行了,你不由在想。")
        elif your_choice == "2":
            print u"你選擇了中間,進去後卻發現門後忽然跳出來一隻殭屍。"
            game_over(u"要是有豌豆就行了,你不由在想。")
        elif your_choice == "3":
            print u"你選擇了右邊,勇氣可嘉!"
            print u"你摸着黑往前走,不知道走到何處,忽然,一盞昏暗的燈亮了,燈下是一個路標,一個指往左邊,一個指往右邊。不知不覺間,你已經走到了房間的另外一頭。"
            print u"你毫無頭緒的看了看左右兩邊。左邊有幾盞燈,不知通往何方。右邊沒有燈,是無盡的黑暗。說不定某殭屍正等着吃了你!"
            print u"你隱約看到右邊的盡頭是一扇門,說不定能逃出去!"
            print u"可是這麼作太冒險了!你猶豫不決。"
            print u"可是在這裏站着確定是不行的,你在想,是該作決定了。"
            second_room = SecondRoom()
            second_room.enter()
        else:
            input_right()

class SecondRoom(object):
    
    def enter(self):
        print u"往左仍是往右呢?不妨扔個硬幣吧。正面我就往左去輸1,反面我就往右去輸2。"
        your_choice = raw_input("> ")
        if your_choice == "1":
            print u"你一貫懼怕黑暗,好歹有條光明的路,你堅決果斷地跑了過去。"
            print u"正當你以爲能夠逃跑的時候,燈光都滅掉了,你感受喉嚨被一直繩子樣的東西越勒越緊,直到失去了意識。"
            game_over()
        elif your_choice == "2":
            print u"你怕黑,就去左邊的走廊偷偷拿了一盞燈,轉身跑向了右邊,直到一扇門前。"
            print u"門前寫着:我有三個愛個人女兒,他們的年齡加起來等於13,他們的年齡乘起來和個人年齡同樣。可愛的她們只有一個頭發是黑色的。"
            print u"我有一個忠心耿耿的管家,他知道個人年齡,卻對我三個女兒的年齡不能肯定。他很想知道我大女兒的年齡。你能幫幫他嗎?"
            guess_age()
        else:
            input_right()

def guess_age():
    your_choice = raw_input("要不要幫他呢?幫他的話,輸入1吧,不然,輸入2試試看看能不能不理他直接走。".decode("utf-8").encode("gbk"))
    if your_choice == "1":
        print u"真是好孩紙,像你這麼熱心的人很少見了呢。"
        print u"來,幫幫我可憐的管家吧,他快被這個問題逼瘋了呢。"
        print u"成功了的話,我會達成你的願望哦~"
        i = 1
        while True:
            your_guess = raw_input("> ")
            if your_guess == "9":
                print u"哇!真厲害,%d 次就猜出來啦!"
                print u"今天我心情不錯,就實現你的願望吧。閉上眼睛吧,騷年"
                print u"你不禁自主地閉上了眼睛,但以爲耳邊好像風聲陣陣。"
                print u"當你睜開眼睛的時候,發現已經躺在了家裏的沙發上,剛剛的一切,彷彿都是一場夢,卻那麼真實。"
                break 
            elif your_guess.isdigit():
                print u"你猜錯了哦,繼續吧騷年。"
                i += 1
            else:
                print u"輸入數字啊,可憐的管家想知道我大女兒的年齡。"
            
    elif your_choice == "2":
        print u"沒想到你這麼冷血!那麼,活在世上還有什麼意思呢?"
        game_over(u"突然,你的身後撲上來了一羣殭屍")
        
start()
相關文章
相關標籤/搜索