본문 바로가기
개발 일지

파이게임으로 RPG 만들기 #04. 애니메이션

by PrintedLove 2021. 5. 17.

안녕하세요 Printed 입니다!

벌써 4편이네요. 끝이 보이기 시작합니다!

 

이번 일지에서는 밋밋하게 굳어있던 플레이어에게 애니메이션을 추가해 보았습니다!

 

 

캐릭터의 동작이 애니메이션으로 실행되는 모습을 볼 수 있습니다.

뒤에 보이는 밤하늘 배경도 추가했습니다.

 

스프라이트 시트에서 불러온 이미지들을 짜집기 해 실행할 때마다 랜덤적으로 달라지도록 만들었습니다.

 

 

아래는 구현을 위한 중요 함수들입니다.

# 배경 이미지 생성함수
def createBackImage(tileSpr):
    image = pygame.Surface((int(WINDOW_SIZE[0] / 2), int(WINDOW_SIZE[1] / 12)))

    for row in range(16):
        for col in range(4):
            star_case = random.randrange(-(col + 2), 3)

            if star_case >= 0:
                image.blit(tileSpr.spr[random.randrange(0, 31)]
                           , (row * TILE_SIZE * 2 + random.randrange(-4, 5)
                            , col * TILE_SIZE * 2 + random.randrange(-4, 5)))

    image.set_colorkey((0, 0, 0))

    return image

# 애니메이션 행동 변경 함수
def change_playerAction(frame, action_var, new_var, frameSpd, new_frameSpd, aniMode, new_aniMode):
    if action_var != new_var:
        action_var = new_var
        frame = 0
        frameSpd = new_frameSpd
        aniMode = new_aniMode

    return frame, action_var, frameSpd, aniMode

 

 

완전한 소스코드는 아래 깃허브 링크에서 확인하세요!

 

PrintedLove/Python-pygame-RPG-tutorial

파이게임 라이브러리로 만드는 RPG 프로젝트. 블로그에서 개발일지를 확인하실 수 있습니다. - PrintedLove/Python-pygame-RPG-tutorial

github.com

 

댓글