As a newbie to Python, one thing I'mm working on is a character generator. As you'll be able to see from the code I've thrown together, I'm trying to make a race selection.
########Race########
#.racechoose (label)
hero_race = input("What is your hero's race? (Human / Elf / Dwarf / Orc) Don't forget to capitalize! ")
if hero_race == 'Human':
print ("Humans are well-rounded, average characters. They have a bonus of + 1 to Speed and + 1 to Int.")
yn = input ("Do you want to be a Human (Y/N)? ")
if yn == 'y' or yn == 'Y':
profile['Race'] = "Human"
print ("Your hero", profile['Name'], "is a human.")
else:
#goto racechoose
elif hero_race == 'Elf':
print("Elves are very fast, and they have a bonus of + 2 to Speed.")
yn = input("Do you want to be an Elf? (y/n) ")
if yn == 'y' or yn == 'Y':
profile['Race'] = "Elf"
print("Your hero ", profile['Name'], "is an Elf.")
else:
#goto racechoose
elif hero_race == 'Dwarf':
print("Dwarves are small, but strong. Dwarves get a bonus of + 2 Muscle.")
yn = input("Do you want to be a Dwarf? (Y/N) ")
if yn == 'y' or yn =='Y':
profile['Race'] = 'Dwarf'
print("Your hero ", profile['Name'], "is a Dwarf.")
else:
#goto racechoose
else: #orc
print("Orcs are brute muscle. Orcs get a bonus of + 3 to Muscle, but - 1 to Int.")
yn = input("Do you want to be an Orc? (Y/N) ")
if yn == 'y' or yn == 'Y':
profile['Race'] = 'Orc'
print("Your hero ", profile['Name'], "is an Orc.")
else:
#goto racechoose
Please ignore the goto and label comments - I've just recently stopped using blitzbasic and am now trying to find label and goto commands for python.
Anyway, I get "Expected an indented block" on the elif hero race Elf line, and I'd like to know how to indent this code correctly. Thanks!
labelandgotoin Python. No self-respecting higher level programming language should have something like that.