개인과제로 했던 '간단한' 1:1 몬스터 배틀 게임을
고도화하는 팀 과제에서 몬스터와 캐릭터를 만드는 역할을 배정받았다
어제 개인과제 제출하고 튜터님이 해주신 리뷰에서 캐릭터를 딕셔너리화 해서 사용해 보라고 하셨던게 생각이 나서 실천해보았다
# 캐릭터 딕셔너리
character_dict = {"1" : Character(f"name={character_name}", 300, 20, 0, 15, 25, 1, 5, 5, 5),
"2" : Character(f"name={character_name}", 200, 50, 0, 30, 40, 1, 5, 5, 5),
"3": Character(f"name={character_name}", 150, 100, 0, 10, 50, 1, 5, 5, 5)}
이렇게 각 케릭터를 딕셔너리화 해주었다 그리고
1: 다수 의 배틀방식으로 고도화를 진행하기 위해
몬스터도 똑같은 방법으로 많이 만들어봤다
# 일반 몬스터 딕셔너리
monster_dict = {"monster1" : Monster("들짐승",50,0,10,0,1,20),
"monster2" : Monster("늑대인간",100,0,15,0,3,30),
"monster3" : Monster("고블린",120,0,20,0,4,35),
"monster4" : Monster("거대독거미",200,0,40,0,6,50),
"monster5" : Monster("빨간슬라임",200,0,40,0,6,50),
"monster6" : Monster("케로베로스",250,0,50,0,7,60),
"monster7" : Monster("오우거", 300,0,55,0,7,60),
"monster8" : Monster("서큐버스",440,0,70,0,8,85),
"monster9" : Monster("드라큘라",450,0,80,0,9,90),
}
이렇게 만들고 나니 또 문제가 생겼다
딕셔너리를 불러올때
print("직업선택 ? ? 1: 전사 2: 궁수 3: 마법사 " )
select_character = str(input(" "))
if select_character == "1":
character = character_dict["1"]
elif select_character == "2":
character = character_dict["2"]
elif select_character == "3":
character = character_dict["3"]
else:
print("잘못된 입력입니다. 다시 선택해주세요")
이렇게 먼저 하기전에 character_dict("1") 이런식으로 불러오니 오류가 나왔다
예전에 딕셔너리 예제문제를 풀다가 했던게 생각이 나서 다시 가서 예제문제를 풀어보면서 문제를 파악하게됐다