개발일지05_개인프로젝트

백우진·2022년 4월 25일
0

오늘부터 Python을 이용한 게임만들기 프로젝트가 3일동안 이어진다.

내가 개발할 게임은 어릴적 학교에서 친구들과 자주하던 "숫자 야구"를 개발할 예정이다.

게임 구현 필수 포함 사항으로는 아래와 같아

  1. 파이썬 GUI 프로그램 개발 라이브러리인 Pygame을 활용 (O)
  2. 이미지 리소스 삽입해보기 (야구장 그림을 배경그림으로 삽입할 예정)
  3. 게임의 이기고 지는 규칙 설계/구현 (컴퓨터가 중복없이 랜덤하게 추출한 값을 맞추면 승리)
  4. 현재 게임의 진행 상태 표기 (입력할때마다 볼카운트를 보여줌)
  5. Stage별로 난이도 설정 (숫자 3개와 4개의 숫자 야구 준비)
  6. 제한시간 기능 (9턴안에 맞추지 못하면 실패)
  7. 마우스, 키보드 이벤트 처리 (텍스트 박스의 입력을 통해 값 저장)

괄호와 같이 구현을 할 예정이다.


현재는 위의 캡쳐와 같이 숫자를 입력하면 볼카운트를 보여주는 기능까지 작업을 완료하였다.

아래 간단하게 난수를 생성하여 저장한 뒤 볼카운트를 계산해주는 알고리즘을 첨부하겠다.

class threeNumber(object):
    number_list = []
    random_number = random.randint(0,9)


    for i in range(3):
        while random_number in number_list:
            random_number = random.randint(0,9)
        number_list.append(random_number)

    print(number_list)

    def cal(self,first,second,third):
        ball_count=[0,0]
        if first==self.number_list[0]:
            ball_count[0]+=1
        else:
            if first == self.number_list[1]:
                ball_count[1] += 1
            elif first == self.number_list[2]:
                ball_count[1] += 1
        if second == self.number_list[1]:
            ball_count[0] += 1
        else:
            if second == self.number_list[0]:
                ball_count[1] += 1
            elif second == self.number_list[2]:
                ball_count[1] += 1
        if third == self.number_list[2]:
            ball_count[0] += 1
        else:
            if third == self.number_list[0]:
                ball_count[1] += 1
            elif third == self.number_list[1]:
                ball_count[1] += 1
        return ball_count

0개의 댓글