text adventure game problem

corvettecraz92 at gmail.com corvettecraz92 at gmail.com
Tue Apr 8 21:01:01 EDT 2008


okay, I'm having this one problem with a text adventure game. It's
kind of hard to explain, but I'll do my best.
[code]

def prompt_kitchen():
    global gold
    gold_taken = False
    while True:
        prompt_kit = raw_input('>')
        if prompt_kit == 'examine cabinet 1' and not gold_taken:
            print '''This cabinet has a lot of cups in it with all
different
designs and shapes. Where are the people anyway? How come there's
nobody here?
In one of the cups you find 8 gold.'''
            gold = gold+8
            gold_taken = True
            pass4()
        elif prompt_kit == 'examine cabinet 1' and gold_taken:
            print \
                  '''This cabinet has a lot of cups in it with all
different
designs and shapes. Where are the people anyway? How come there's
nobody here?'''
            pass4()

def pass4():
    global gold
    print 'You have', gold, 'gold'
    pass
[/code]

Okay, now for my problem.
In the above function, there's the option to examine a cabinet and get
8 gold. (everyone here knows that...but I'm just trying to state my
problem...)
Unfortunately, it kind of doesn't work.
After the first time I 'examine cabinet 1' in my game, I get 8 gold
and I can't get it again.
But, If I leave the room and come back to it, then it's as if I had
never gotten the gold the first time, and I can get it again.
How do I fix this?



More information about the Python-list mailing list