개발일지 <내일배움캠프> 20230329 TIL

임재훈·2023년 3월 29일
0

개인과제로 했던 '간단한' 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") 이런식으로 불러오니 오류가 나왔다

예전에 딕셔너리 예제문제를 풀다가 했던게 생각이 나서 다시 가서 예제문제를 풀어보면서 문제를 파악하게됐다

0개의 댓글