Я бы предложил использовать функции для каждого местоположения, чтобы вы могли вызывать одну и ту же функцию несколько раз или внутри других функций.
Например:
def road():
choice = ''
while choice not in ['j','h']:
choice = raw_input('You are travelling down a long road, there is a fork in the route, one side goes to a jungle, and the other leads to a hill biome, which side do you choose? J for Jungle, H for Hill ').lower()
if choice == 'j':
jungle()
elif choice == 'h':
hill()
def jungle():
choice = ''
while choice not in ['c','a']:
choice = raw_input('In the jungle, a king cobra appears behind you, as you look forward, an ape leaps from a tree onto the ground. Do you take your chances with the venomous king cobra, or the enormous ape? C for cobra, A for ape ').lower()
if choice == 'c':
print 'Sorry, you were bit by the cobra and died'
print 'Please try again'
return
elif choice == 'a':
print 'You were almost mauled by the ape, luckily, it fleed the scene after loosing sight of you'
next_func_here()
while True:
print 'Adventure Game Starts Here!'
road()
print 'restarting...'
Таким образом, вы можете сохранитьдобавление функций быстро и легко, а также легче отлаживать. Цикл while
означает, что если road()
выходит, он возвращается к началу и перезапускает road()
.